← all writing

· 5 min read

What a click actually sold for this week

Ad prices are published as rate cards and vendor averages. Here is the other thing: settled prices from a live auction, week by week, with the gaps left in.

Try to find out what advertising costs and you will be handed one of two things: a rate card, which is what a seller would like to receive, or an industry average, which is what a vendor's own customers paid on the vendor's own report. The ad price index we've just published is neither. It is a list of settled prices — what somebody actually paid, for a placement that actually ran, next to what that placement delivered. You can read it at /price-index.

What is on it

Two halves. The first is this board: every week for the last twelve, showing settled bids, distinct brands, total paid, the median price of a twelve-hour slot, click-throughs delivered, and what a delivered visitor cost.

The second half is everywhere else — published per-click benchmarks for Google search, Meta, display and newsletter sponsorship. Each carries its source and the year it was published, so the figure can be argued with rather than taken on faith: the search and social numbers come from WordStream's advertising benchmarks, the display caveat from the Nielsen Norman Group's long-running work on banner blindness.

Putting them side by side is the whole point. A price is meaningless without a comparison, and the comparison usually available to a small advertiser is a rate card next to a different rate card.

Three rules that make it an index rather than a chart

Only real money counts. A seeded placement is the house filling its own board — we put a company there, it never bid, and it paid nothing. Counting those would report a market that is us talking to ourselves. Equally, the part of a bid covered by house credit is a subsidy, not a price; only the part a card was charged appears.

The median, not the average. On a board this size, one brand paying far above the rest moves an average and does not move a middle. That happens most weeks, and an average would make the index a chart of whoever happened to be enthusiastic.

A week that cannot support a number does not get one. Under five settled bids, there is no median printed. Under ten click-throughs, there is no cost per visitor. Those cells show a dash, and hovering it tells you which threshold was missed.

That third rule is the one that matters, and it is the reason this exists at all. An index that reports confidently on two data points is noise wearing a decimal place. Almost every advertising statistic you will read has that problem and does not disclose it; the thresholds here are published, they are low enough to be honest about how small this board is, and the page will show a lot of dashes for a while.

Yes, it makes us look small

It does. Right now most weeks on that page have no median at all, because the board does not yet have five paid bids in a week. We published it anyway, and that is not humility — it is the only way the thing works.

An index you can only trust when the numbers are flattering is not an index. If we hid thin weeks and printed the good ones, the page would be marketing with a table in it, and everyone reading would be right to assume the missing weeks were bad. Showing the gaps is what makes the filled cells worth reading.

There is a second reason. The argument this whole site makes is that ad platforms hide performance data because the data is unflattering, and that the hiding is a choice rather than a technical limit. It is not possible to make that argument and then decline to publish a bad week.

How to actually use it

As a ceiling check. Take the per-click benchmark for whatever channel you were about to buy and compare it to what a visitor is worth to you. If you have not computed that, work it out first — it takes four numbers and ten minutes, and it is the number that decides whether any price on the page is affordable.

As a reality check on "cheap". The cheapest per-click figure on the page is not the best deal, because the channels are not selling the same thing. A click from a search result where somebody typed your category is a different object from a click on a display banner, and the index deliberately does not pretend to rank them.

As a trend, once there is one. Twelve weeks of settled prices will eventually show whether the board is getting more expensive, and that is a fact about demand rather than a claim about quality. When it does, it will be visible to a buyer at the same moment it is visible to us.

Not as a forecast. Nothing on that page predicts what next week costs. Auctions do not work like that, and a page that implied otherwise would be doing the thing it exists to complain about.

What comes next

The index regenerates as the board settles, so it is live rather than a weekly publication with a lag. Three things are on the list: per-category medians once any category has enough bids to support one, a downloadable CSV of every settled bid, and a longer window than twelve weeks once there is a longer history to show.

None of those are worth building while the current page is mostly dashes, which is the honest state of it today. Run the rates against your own numbers in the calculator in the meantime — that is the part that already works regardless of how much data this board has.

BidSurvivor sells advertising in twelve-hour blocks, at auction. The first brand into an empty slot pays nothing, every account starts with $100 of house credit, and every brand's click-throughs are public before you bid.

See the board

Read next