Method
The counting rules behind every price and revenue figure on this site. Published so anyone can check a number, repeat it, or argue with it. Version 1.0, 29 October 2026.
What is counted
- One tool per domain. A product with several pricing pages, sub-brands or SKUs is counted once, at the domain that publishes the price. Redesigns and renames do not create a second entry.
- English-language software with a public price. 2,829 tools are in the core index today; 2,173 publish a monthly price. A tool with no published monthly price stays in the index for its revenue figure, but never enters a price statistic.
- Not counted: app-store listings, link-in-bio and other platform domains, and pages that are not the tool's own site. A revenue figure is the only thing that can keep such a domain in the index.
Sample frame
- How a tool gets in. Three lists merged into one: products we track by name, every domain we have read a price from, and every domain named in a founder's revenue post. Category is a label applied afterwards, never a gate.
- What is removed. App stores, link-in-bio pages, payment and marketplace domains, and anything that is not the tool's own site. A price quoted on a marketplace is that marketplace's price, not the tool's.
- What this is not. Not a census of all software. 2,829 tools is what the crawl currently supports; roughly 1,300 more domains sit in a long-tail list with too little to state and are left out of every statistic. The index grows as the crawl widens, which is why every figure carries a reading date.
Prices
- Entry tier = the cheapest monthly plan on the tool's own pricing page, in US dollars, as written. Not an average, not a range, not a "from" price invented by us.
- Which reading counts. The entry price comes from the most recent reading of that pricing page — specifically the most recent reading that captured at least two monthly tiers, so a half-loaded page cannot set the number. Older readings stay in the price trail and the change log, never in the headline figure. A new reading more than 3× away from the previous one is held for review instead of published.
- Annual plans are not folded into monthly figures. A $99/year plan is not shown as $8.25/month, because the tool does not sell it that way.
- Plausibility window. Monthly prices below $3 or above $5,000 are treated as parse errors and excluded rather than coerced into a band.
- Date. Prices carry the date the page was read, not the date the price was introduced. A price change is only visible once the page is re-read, which is why the reading date is printed next to every figure.
- Every reading is archived. 67,574 plan-level readings are stored with URL, date, plan name and the surrounding text; 2,794 tools have more than one reading, so a past price can be replayed and a change is provable. Price changes are published on moves.
- What "median" means here. It describes this index — English-language software that publishes a self-serve price — not the software market. Tools that sell only through sales calls are invisible to the crawl, so read every median on this site as the distribution of what is priced in public, never as an industry average.
- Percentiles and bands are computed over every tool with a price in the window above. "Median entry tier" always means the median of the cheapest monthly plan, never of all tiers.
- Tier ratio uses tools publishing two or more monthly tiers, and is the second tier divided by the first. Tools with one tier are reported separately (610 of them today).
Revenue
- Only what the founder published. Every revenue figure has a source URL and a publication date. If we cannot link to the sentence, the figure does not enter the index.
- This is a sample of people who publish, not of tools that earn. Founders who post revenue are a self-selected group: the ones doing well talk, most of the ones who failed never say a word. Read every revenue figure here as "what publicly-reporting founders said", never as the revenue distribution of the index. Every median MRR on this site carries that same caveat.
- Exact versus milestone. "We hit $10k MRR" is a milestone, not a measurement. Any figure landing on a round value ($1k, $5k, $10k, $25k, $50k, $100k and similar) is treated as a milestone. Milestones are shown on the tool page but excluded from every median. Today 133 tools publish a revenue figure and 70 of those are exact.
- Verification is a label, not an assumption. A figure carries "verified" only when the tool's own payment provider published it — a screenshot, a tweet or a DM is never enough. No figure on the site carries that label today: every one of them is the founder's own number. Verification applies to the date shown and is not re-checked daily, so a verified figure can be older than the tool's current revenue.
- No estimation, no interpolation, no "implied ARR". We never convert, annualise or model a number the founder did not state.
Audit
- 50 tools are re-read before each release. A random sample of the tools listed on this site, fixed seed, so the draw can be reproduced. On 2026-10-29, of the 50 tools drawn, 44 pages could be read and 41 still showed the recorded entry price (93%).
- What could not be checked. 0 page(s) did not answer; 3 render the price in JavaScript only, so the HTML carries no number; 3 price in another currency, where this site shows the converted USD figure and the original number cannot appear on the page.
- What did not match. 3 page(s): apparate.com.au, gptpromptmaker.com, unsection.com. A mismatch is either a price the tool changed after our last reading, or a figure we read wrong — both are inspected by hand, and a wrong number is corrected at the source rather than dropped from the page.
- What the audit does not cover. Plan structure, conversion accuracy, and whether a price is still current the week after it was read. It checks one thing: whether the number on this site can still be found on the page it came from.
Change log — entry prices, 30 October 2026
The price data published on the morning of 30 October 2026 counted two kinds of numbers as a monthly plan price when they are not: figures read from a tool's home page rather than its pricing page, and monthly-equivalent figures that only apply when paying for a year ("$6.58/mo billed yearly"). Both pull the entry price down, so the entry-price column and everything derived from it — median, distribution, price bands, tier-2 multiple — were wrong for that build.
Fixed the same day. The parser now resolves each tool's main pricing page before reading tiers, instead of guessing four common paths. Domains whose pricing page lives somewhere else (/en/pricing, /pricing-plans, a single page site) were previously falling through to a home-page reading and are now read from the right page. Annual-billed figures are kept as their own price and no longer enter the entry-price figure.
How a price is graded. A: read from a pricing page with an explicit monthly price — shown as is, and safe to quote on its own. B: read from a pricing page with ambiguous billing terms, or from a pricing block on the home page — shown with an estimated marker and never quoted. C: no usable price found; the page says so instead of guessing.
Current state: 2,829 tools, 2,173 with a monthly price. A tool whose pricing page could not be located shows no entry price rather than an unverified one — an empty cell means we could not read it, not that the tool is free. Parsing is still being hardened against per-site layout differences; an estimated figure is a reading, not a guarantee.
Not affected at any point: the sample, the revenue figures, the categories, and the page structure.
What is not comparable
- Price against revenue. With 70 exact revenue figures against 2,173 prices, any price-to-earnings claim would be built on too few points. We show both; we do not claim a relationship between them.
- Across categories. A $29 SEO tool and a $29 video tool are two different businesses. Compare inside a category, or inside a price band, never across the whole index.
- Milestones against exact figures. A "crossed $50k" post and a "$47,300" post are not the same measurement, and medians never mix them.
- Across versions of this page. If a counting rule changes, figures published before the change are not comparable with figures after it. The change log below is the record of that.
Change log
Dataset ID mrrb-2026-10-30-v1.2. Quote the version alongside any figure you take from here; figures
from different versions are not comparable.
| Version | Date | What changed |
|---|---|---|
| 1.2 | 2026-10-30 | Entry prices re-read with a structure-based parser: JSON-LD offers first, then plan cards, then text. Annual-billed prices, home-page figures, credit and trial amounts no longer count as monthly plan prices. Every price carries a grade (A exact / B estimated); medians and distributions include both, and B figures are marked. |
| 1.1 | 2026-10-30 | Entry price now comes from the most recent complete reading of a pricing page (the latest read that captured at least two monthly tiers), not from the lowest price ever recorded for that tool. Tiers shown are the ones visible on that same read, so a tier-2 multiple is no longer the ratio of two prices read months apart. A new reading more than 3× away from the previous one is held for review rather than published. Figures move slightly; nothing else about the counting rules changed. |
| 1.0 | 2026-10-29 | First published. Definitions above apply to every figure currently on the site; dataset ID mrrb-2026-10-29-v1.0. The site showed 98 tools with a revenue figure (37 exact) before this release; under the rules above the count today is smaller (see Revenue). Treat the earlier count as superseded. |
How to cite this
Link the tool page, not the homepage, so the figure can be checked:
MRR Bench v1.1, 2026-10-30, https://mrrbench.com/t/<tool>.html. If you quote an aggregate, name the
counting rule in the same sentence as the number — caveats at the end of a post get trimmed in the repost, and the
number survives without them. Quoting with a link back is fine. Re-publishing the dataset is not — see the
terms. Every rule on this page lives at mrrbench.com/method.
Found a figure that looks wrong? Report a data error — corrections are published, not silently patched.