getReport is free and funded by donations, so we publish what it costs. This is the bill at launch, how it grows, and the limits that keep it from surprising us.
- €10.80per month to run everything at launch
- €0for Google's speed data, within the daily quota
- 12 ha report is reused for the same address
The monthly bill
Source: invoices and price lists (OVHcloud, Cloudflare), September 2026. Email for alerts (Amazon SES, about €1.20) starts with monitoring.
One server does all of it: a VPS in Germany with 4 virtual cores, 8 GB of memory and 75 GB of disk. It runs the website, the API, the queue, the database and the workers that fetch and render pages. Screenshots and PDFs go to Cloudflare R2, which charges for storage but not for downloads.
We first planned two smaller Hetzner machines for about €25 a month. In September 2026 those were out of stock and Hetzner's other lines had roughly doubled in price, so we launched on one larger OVHcloud machine instead, for less.
Why a report costs so little
The expensive part of a website report is measuring speed: loading the page in a real browser, several times, on a throttled phone profile. Google runs exactly that measurement for anyone through the PageSpeed Insights API, and the Chrome UX Report API adds real visitors' speed data. Both are free within a daily quota, so we use them first and only render the page ourselves for what they don't cover (accessibility, screenshots, the WordPress plugin cost breakdown).
Everything else is small: one HTTP request for the page, a few for robots.txt, the sitemap and headers, a TLS handshake, some HTML parsing. That is milliseconds of work per check.
Cost per report
The server is a fixed cost, so what one report costs depends on how many we run. This is simple division, not a measurement:
Source: €10.80 a month divided by 30 days of reports at each volume. Cached reports add nothing.
At some volume the server will be full. The plan then is a second worker machine for about €20 a month, which roughly doubles capacity, so the cost per report stays in the same range.
The limits that keep the bill flat
A free tool with a pay-per-use bill is one viral post away from trouble. So nothing in getReport's cost grows without a cap:
- Cache. A report for the same normalised address within 12 hours is the same report. A cache hit costs nothing.
- Rate limits. Up to 10 fresh reports per visitor every 10 minutes and 50 a day, and 5 fresh reports per target site per hour.
- A daily cap tied to Google's quota. If it runs out, the speed test runs Lighthouse on our own server and labels the result a lab estimate, rather than calling a paid service.
- One job at a time per page. Two people checking the same site at the same moment share one run.
When there is a spike, reports queue for longer. They don't get more expensive.
What would change the bill
The paid features are the ones that need their own infrastructure or a data supplier: a crawl of hundreds of pages, daily monitoring and alerts, test locations in the US and Singapore, keyword rank data. Each is a funded unlock with its own threshold on the funding page, and each switches on only when donations cover its running cost. The core report stays at about €11 a month either way.