Ask ten people who tried to leave Google Analytics where they gave up, and eight say the same thing: not at the script, at the numbers. Swapping a tag takes four minutes. Explaining why conversions fell forty percent is where migrations die. The second wall is the opposite kind: privacy-friendly analytics looks cheap until you run it yourself and inherit a database, a backup job and a 3 a.m. upgrade.
The order below avoids both: two weeks of overlap, a definitions check, then cutover — with the self-hosting bill at the end. Every figure comes from vendor pages and Google’s documentation read on 22 September 2026; none of it was measured by us, so treat it as claims to re-check.

Official image from the AppFlowy website. Self-hosting an analytics stack means your data, your server, your upgrade nights.
Step 1: Run the new tool next to GA4 for two weeks
Install the new snippet alongside gtag and change nothing else. The scripts do not fight; they count the same visits independently. Two weeks, not two days, because traffic is not uniform and one newsletter send can double a day. Plausible advertises built-in bot filtering — good for your reports, bad for day-one comparisons, since a clean tool shows fewer sessions than the messy one it replaces.
Umami Cloud’s Hobby tier is $0 for up to 100,000 events a month on one site with six months of retention; Pro is $20 a month for a million events and 20 sites. Plausible has no free tier — a 30-day trial without a card, then Starter from about $9 a month. Matomo Cloud’s Business plan starts around $29 a month excluding tax with 30 sites and 24 months of raw retention, while Matomo On-Premise is free to download with no hit limits. Check official pricing first.
One trap here: don’t let a trial set the timetable. A 30-day trial covers a two-week run only if you start the overlap the week you sign up, and a six-month retention ceiling is fine for a test but wrong if next year’s question is “how does this November compare with last November”. Plausible also added an AI Assistants channel to its Channels report in June 2026 — useful if ChatGPT and Perplexity referrals are a number you now report on.
Step 2: Reconcile what each tool means by a word
GA4 does not count a bounce the way Universal Analytics taught everyone. Google’s Help pages define an engaged session as lasting longer than 10 seconds, or containing a key event, or containing two or more page views — and bounce rate as the share of sessions that were not engaged. Plausible reports scroll depth and time on page instead, with no bounce metric at all. Two vendors can be right about the same visitors and disagree by ten percent forever.
Pick the three numbers you report on — signups per source, top landing pages, conversion rate — and compare them weekly during the overlap. Small gaps are permanent; a consistent gap above roughly ten percent is a setup bug, usually a missing event or a redirect eating referrers.
Watch the retention clock on the old property too. A standard GA4 property allows only 2 or 14 months of user and event data retention; the 2-month cap always applies to age, gender and interest data, and a property that grows into Google’s Large or XL tiers drops to 2 months automatically. Retention governs Explorations and funnel reports, not standard aggregated reports — which is why the summary you check weekly survives while the exploration you built for a board deck quietly does not. If anything you need in 2027 lives in an Exploration, your deadline is already running.
History is the harder question: Plausible and Matomo both ship Google Analytics importers that bring across aggregated reports — top pages, sources, geography — not the raw event stream. No importer can resurrect data GA4 has already deleted, so run it during the overlap, while the old dashboard is still open in another tab.
Three questions that come up mid-migration
Do I still need a cookie banner? Cookieless tools cover their own script: Plausible says it processes no personal data, and Matomo offers consent-free setups with anonymised IPs. That says nothing about your newsletter forms, embedded video or chat widgets, which set their own cookies. Keep the banner until someone who signs your contracts says otherwise.
Can I keep both running forever? Technically yes; plenty of sites do. Practically, two dashboards means neither gets checked, you pay twice, and the team drifts back to the one with the better mobile app.
What if I only need search queries? Then you may not need an analytics replacement at all. Search Console is free regardless, Plausible pulls those queries into its paid dashboard, and Matomo sells a Search Engine Keywords Performance plugin.
Step 3: Cut over, then decide where it lives
Cutover is dull when the first two steps went well. Remove the gtag snippet and leave the property in place — you will want something to look at when someone asks about last quarter. Data stops arriving the moment the tag goes, so set retention to 14 months before the switch and keep a soft archive rather than a hard cliff.
Then the question that costs money. Matomo On-Premise is free to download and, in its own words, will “forever remain free”, with no hit limits and no sampling; the expensive reports — heatmaps, session recording, A/B testing, forms — are paid marketplace plugins. Umami’s self-hosted edition is open source and free, and Plausible publishes an open-source edition too, though check what it includes before relying on it. In all three cases the licence is the cheap part.
The real bill is a small server plus your attention. A virtual machine sized for the database and app on one box — 2 vCPU and 4 GB of RAM is a realistic floor — is a few euros a month at a European host — the quoted part. The unquoted part is an hour or two a month forever: operating system updates, log growth, a backup you have actually restored once. Self-hosting also removes a vendor’s data processing agreement and hands you the responsibility. Below a few tens of thousands of monthly pageviews, $9 to $20 hosted is cheaper once your time costs anything.
| Step | What you do | What you end up with |
|---|---|---|
| 1 | Run the new snippet beside gtag for two weeks | Two independent datasets on the same traffic |
| 2 | Reconcile definitions, import aggregated history | A number you trust, plus old reports |
| 3 | Remove gtag, then choose hosted or self-hosted | One dashboard that actually gets opened |
Three mistakes that cost the most
Judging the tool in 48 hours. Bot filtering, a quiet weekend and one traffic spike all read as “the new tool is wrong”. Two weeks is the shortest window that survives a normal cycle.
Choosing the plan by price and living with its retention limit. Fine until the first year-over-year question, when the answer is in a CSV you never exported.
Self-hosting without a restore test. The failure is silent: the collector keeps returning 200 while the database rejects writes, so the dashboard looks healthy and empty. An un-restored backup is a hope.
What to do next
Two free things this week. Set user and event data retention to 14 months in GA4 — Google applies the change after a 24-hour window you can still revert. Then pick your two-week overlap and install one snippet, just one, beside it. If you want a method rather than a ranking, our AI tools comparison guide covers workflow fit over feature tables, the tools directory has the rest, and teams consolidating a wider stack may find AI tools for business useful.
Sources, read 22 September 2026: Google Analytics Help (retention; engagement and bounce rate), plausible.io, umami.is/pricing, matomo.org (cloud and On-Premise). No analytics stack was tested for this article, so it contains no measured figures — ratings here apply only to hardware we have handled.