The data
Take all of it
Three files, no key, no sign-up, cross-origin. The same data every page on this site is built from, published under CC BY 4.0 — chart it, republish it, build on it, sell what you build, with a link back.
Rebuilt 28 Aug 2026
Reading it
curl -s https://allrank.lol/data/sites.json | jq '.sites[] | select(.statusGroup == "dead") | .host'
fetch('https://allrank.lol/data/sites.json')
.then(r => r.json())
.then(({ meta, sites }) => {
const cheap = sites.filter(s => s.minBid?.usd <= 5 && s.statusGroup === 'active');
console.log(cheap.length, 'boards you can get onto for five dollars');
}); Every field
| Field | What it means |
|---|---|
| slug | This site’s id for the board, derived from the host: outbid.lol becomes outbid-lol. |
| name / host / url | What it calls itself, the bare domain, and where a visitor is sent. |
| tagline | One line on what it ranks. |
| category | Slug and display name. Third-party sourced. |
| layer / mechanics / primaryMechanic | The rule classification, from this site’s published phrase list. |
| status / statusGroup | Measured here on the last sweep. live, guarded, redirected, parked, gone, offline, erroring, unreachable. |
| httpStatus / probeError / responseMs | Exactly what the last request got back. |
| registeredAt / registrar / registrySource | From RDAP. Null where the registry will not answer or the board runs on a free subdomain. |
| listedAt / figuresReadAt / lastCheckedAt | When it entered the record, when its figures were read, when it was last checked. |
| hoursAfterOutbid / ageDays | Timing against outbid.lol’s own registration, and days since registration. |
| minBid / reportedTotal / topBid | Objects: { raw, amount, currency, approx, usd }. raw is the board’s own string, usd is for ordering only. |
| bidders / clicks / referrals | Claimed bidder count, clicks out of this site, and referrals in. |
| payRails | Payment providers, from the board’s own statement and from what its page loads. |
| rules | Rule details lifted from the board’s copy, each with the phrase it came from. |
| screenshot | Path to a dated picture of the board, where one has been taken. Null otherwise. |
| scores / completeness / notability / tier | The editorial marks, and why a board is or is not indexed. |
| summary | The assembled quick answer shown at the top of its page. |
| nearestNeighbour / nearestSimilarity | The closest board in the corpus by text overlap, and how close. |
What the numbers are, and are not
- Money is self-reported. Every figure is what a board publishes about itself. Not audited revenue.
- Null is not zero. 136 boards publish nothing readable. Summing the export gives a floor.
- The census is a floor too. These are the boards that have been found, not every board that exists.
- usd is for ordering. Currencies are converted at rough fixed rates so lists can be sorted. The board’s own figure is always in
raw. - Status is a moment. It is what the last sweep saw, with its timestamp next to it.
Attribution
This dataset is CC BY 4.0 — credit allrank.lol. It is built on top of
outoutbid.lol’s directory export, also CC BY 4.0, so
that credit travels with it and is carried in meta.upstream. Full credits.
Rate limits and freshness
There are none, and there is no reason to hammer it: these are static files behind a cache, rebuilt when a sweep
finds something new. meta.generatedAt says when. A breaking change bumps meta.version;
new fields do not, so read the ones you need and ignore the rest.
New boards also appear in the feed as they are listed, so nothing has to be polled.