Sampling is a reasonable engineering trade-off. Reading every row for every query is expensive, so past a threshold many tools read a slice and scale it up. The maths is sound and the error bars are usually small.
The problem is the timing.
It arrives with your best week
Sampling thresholds are volume thresholds. So the report that gets estimated is the one covering your launch or campaign, which is when you most need exact numbers.
Worse, the comparison breaks in a way that is hard to spot. Last month was exact, this month is estimated, and the difference between them now includes a change of method nobody mentioned.
Where the thresholds sit
In GA4, standard reports are complete. Explorations, where funnels, paths and cohorts live, switch to a sample once a query covers more than 10 million events. GA4 360 raises that to 1 billion.
Plausible's cloud starts sampling once a query covers more than about 10 million pageviews.
Mixpanel and Amplitude sample only if you switch it on. Matomo, PostHog, Umami and Fathom do not sample at all.
What we do instead
Every query reads every row for the range you picked. There is no sampling threshold, so no number is marked as estimated.
Queries do more work, and we pay for that. Pricing is based on the number of events you send. Viewing your dashboard does not add to your bill.
What this does not fix
Your numbers still will not match another tool's exactly. Different bot filtering, different session-timeout rules and different definitions of a visitor account for most of it. Ours drops datacenter traffic at ingest, so our visitor counts tend to run lower and steadier than a tool that does not.