Built with Portland Fish Exchange in mind

The auction floor, without the floor.

A price that falls until somebody buys. One bidder is enough. From there it climbs while the last call runs, and the seller’s representative has the final word on every price — the same auction Portland has run since 1986, on a screen instead of a pier. Below is a three-item session you can run yourself: two pallets of Icelandic salmon and a consignment of Arctic char, each on its own clock, in the order they would come up.

  1. 1Icelandic Salmon HOG | 6–7 kg
    on the clock
  2. 2Icelandic Salmon HOG | 4–5 kg
    First Water · opens 4.85
  3. 3Gulf of Maine Cod | Large
    F/V Resolute · Capt. Dan Holt · opens 3.60
  4. 4Arctic Char HOG | 3+ lb · ASC
    Fiskeldið Haukamýri ehf · opens 6.60

Icelandic Salmon HOG | 6–7 kg

Arnarlax hf · 7 lots · 1,156.086 lb · Westfjords, Iceland · shipment W103 · round 1

Ready
Price
5.35
Current price
.00
Bidding
0
Average price
.00
Bid increment
0.01
Weight remain
1,156.086
Weight consign
1,156.086
Floor
4.30
Opened at
5.35

On the block

Arnarlax hf · Westfjords, Iceland · shipment W103

Arnarlax head-on-gutted salmon in the producer’s box, on ice — the grade and presentation on offer. Producer photograph, not these pallets.

Arnarlax head-on-gutted salmon in the producer’s box, on ice — the grade and presentation on offer. Producer photograph, not these pallets.

On the real floor · Portland paid $4.6092/lb for this pallet on 24 September.

Lot selection

7 of 7 available · 1,156.086 lb left

CatWeightStatusPrice
1171.272available.00
2171.272available.00
3171.272available.00
4171.272available.00
5171.272available.00
6171.272available.00
7128.454available.00

How many lots?

Take one lot or all of them, up to ten. Whatever is left goes straight back on the clock — which is why one pallet clears at several prices.

1,156.086 lb

Your connection

How long your bid spends in the air before it reaches the floor.

Try 800 ms with the window on, then again with it off. Same buyer, same moment, different lot.

Floor log

  • Press start.

A simulation you can play. The clock arithmetic is the same code the live floor prices real bids with; the other buyers and the seller’s answer are stand-ins so you can see every side of it from one browser tab.

The mechanism

Four moves, and the item is settled

  1. The clock falls

    Each item opens at the day’s market value and steps down a cent at a time toward a floor set from landed cost. Nobody has to bid against anybody — the first buyer to press stops it.

  2. The buyer takes what they want

    An item is a consignment cut into lots. A winner takes one lot or ten, and whatever is left goes straight back on the clock — which is why one item can clear at several prices in a single morning.

  3. Then it climbs

    The stop fixes a price and the ask sits one increment above it. Anyone can take the ask, and doing so restarts the last call. Going once, going twice — three dots, and it is decided.

  4. The seller answers

    The representative sees the price, the lots and the weight, with a countdown. Decline once and the item runs again from the top. Decline twice and it is jumped over, to be sold direct later.

The hard part

A buyer on a slow line must not lose the fish

A falling clock over the public internet is a race, and the obvious way to run it — first bid to arrive wins — is a race on bandwidth. A buyer in Reykjavík on 180 ms loses to one in Portland on 15 ms every time, however much sooner they decided. Three things fix that, and you can switch two of them off in the demo above to watch the difference.

A bid claims a tick

The clock is discrete, so everyone inside one tick saw the same price. A bid carries the tick the buyer was looking at, not the moment it arrived. Claiming an earlier tick means paying a higher price, so exaggerating costs money — the same trade as jumping early on a real floor.

The stop is held open

The first bid does not win outright; it opens a short window in which everything still in the air lands. The lowest claimed tick takes the lot. A tie inside one tick goes to a draw that is fixed before the round starts and can be checked afterwards — never to whoever sat closest to the server.

Or skip the race

Lodge a resting limit — “three lots at or below $4.80” — and the floor fires it at the exact tick the price crosses, worked out rather than observed. Connection speed stops mattering at all. Nobody else can see it.

What the seller sees

Every fee, on the same page as the decision

A sale pays the exchange its commission per pound. A declined bid is not free either — the scratch is charged per pound too, and at Portland’s rates that is nearly three times what a sale costs. Turning down a bid on 857 lb runs to $274.24 on top of the sale foregone.

So the representative is shown that number while the counter is running, along with the price they would need elsewhere just to break even. Afterwards the payslip comes out in the exchange’s own shape: sold, scratched and no-bid separated, fees reversed on anything sold direct later, and the total due at the bottom.

The floor cannot sell at a loss

Each item carries its landed cost — the producer’s invoice, ocean freight, customs, insurance and the trucking to the pier. The clock is not allowed to bottom out below that plus a margin, plus the commission the exchange takes off the top, because the seller never sees the commission. The database refuses a board that breaks the rule rather than trusting anyone to check.

Beyond Portland

An exchange runs its own floor

Portland’s cent-a-tick clock, its ten-lot cap, its two-decline rule and its fee schedule belong to Portland, not to the software. Each market holds its own settings and its own people, who build the day’s board and run the clock themselves without waiting on anyone. Opening the next exchange is a row in a table, not a release.

Want to see the real thing?

Buyers and sellers’ representatives sign in with a link — no password, no install, and it works on a phone at the pier.

Sign in