Analytics does not fail loudly. When tracking breaks, nothing turns red and nobody gets an email. The dashboard keeps loading, the charts keep drawing, and the numbers keep looking approximately reasonable. That is the whole problem: a broken analytics setup and a quiet quarter look identical from the outside.
We find some version of this on most audits. Usually it has been broken since a website change nobody connected to it, often more than a year earlier.
Here are the checks that find it, roughly in order of how often they turn something up. None of them requires a data team, and most take under five minutes.
1. Confirm the tag fires at all
Open your site in a private browsing window, click through two or three pages, then open Google Analytics and look at the Realtime report. You should see yourself.
If you do not, nothing else in this article matters, and nothing in your reports for the current period is trustworthy. This is the single most common serious finding, and it is almost always caused by a site rebuild, a theme change, or a plugin update that dropped the tag.
Then check more than the homepage
Tags get installed on a template that does not cover every page. Repeat the Realtime test on a deep interior page, a blog post, and most importantly your donation confirmation or thank-you page. A tag that fires everywhere except the page where conversions happen is a tag that measures everything except the thing you care about.
2. Look for your own domain in your referral traffic
In your traffic acquisition report, look at the referral sources. If your own domain appears there, your tracking is fragmented, and sessions are being cut in half partway through.
For nonprofits this usually points at one specific cause, which is the next check.
3. The donation platform is on a different domain
This is the big one, and it is nearly universal in the sector.
If donations are processed on a separate domain, which is how most hosted donation tools work, then without cross-domain measurement configured, a donor who arrives from a search, browses your site, and then gives is recorded as two unrelated visits. The first is a search visitor who left without doing anything. The second is a mysterious stranger who arrived from your donation processor and donated immediately.
The practical damage:
- Every donation is attributed to the payment processor rather than to the channel that actually produced it.
- Search, email, and ads all appear to convert at approximately zero.
- Any bidding strategy relying on that conversion data is being trained on noise.
The fix is configuring cross-domain measurement so both domains are treated as one journey. It is a settings change, not a rebuild.
4. Check what your “conversions” actually are
Open your key events and read them literally. Two failure modes, opposite in shape:
- Nothing ever fires. A key event sitting at zero for months is either misconfigured or pointed at something that no longer exists, like a thank-you URL that changed.
- Everything fires. If your conversion count is suspiciously close to your session count, the “conversion” is a pageview wearing a costume. This is common when time on site or a homepage visit was set up as a goal.
The second is worse than having no tracking, because it produces confident, specific, wrong numbers. It is also a compliance problem if you hold an Ad Grant, where time on site and homepage visits are explicitly not allowed to count as conversions.
5. Check your data retention setting
This is the quiet one, and it is the reason to do this audit today rather than next quarter.
Google Analytics 4 defaults user-level and event-level data retention to two months. The maximum on the free tier is 14 months, and you have to go set it. Almost nobody does, because the default is invisible until you go looking for last year’s numbers and find that they are gone.
Retention is not retroactive. Data already dropped is not recoverable, by you or by Google or by anyone you hire.
One clarification worth having, because plenty of articles get it wrong: this limit applies to the user-level and event-level data behind custom analysis and Explorations. Standard aggregated reports are not subject to it. But the moment you want to ask a real question, like how last year’s campaign compared to this year’s, you are in the affected data, and if the setting was never changed, the answer no longer exists.
Change it to 14 months. It takes about thirty seconds in Admin, under Data retention, and every month you wait is a month you permanently lose.
6. Look for double counting
If a site has been through more than one agency or a migration, it often ends up with the tag installed twice, once in the theme and once via a plugin or tag manager. Symptoms are distinctive once you know them: engagement rates that look impossibly good, session counts roughly double what your server logs suggest, and conversions counted twice.
Symptoms, and what they usually mean
| What you see | What it usually means |
|---|---|
| Your own domain listed as a referral source | Cross-domain measurement not configured |
| Conversions roughly equal to sessions | A pageview is being counted as a conversion |
| Engagement metrics that look too good | The tag is firing twice |
| Nothing older than two months in Explorations | Data retention left at the default |
| Traffic flat, then a cliff on one date | The tag was removed in a site change that day |
| Donations credited to your payment processor | The donation domain is measured separately |
Why this matters more than it sounds like it does
Broken analytics is not only a reporting inconvenience. It has three compounding costs.
You cannot tell a bad month from a broken tracker. Every decision after the break is made on numbers that describe your measurement setup rather than your organization.
Automated bidding degrades. Google’s Smart bidding strategies, which Ad Grant accounts created after April 2019 are required to use, learn from conversion data. Feed them nothing and they bid timidly, which is one of the most common reasons a grant account quietly stops spending. We wrote about that pattern separately in why an active Ad Grant spends almost nothing.
The history is not recoverable. Ads and SEO can be fixed retroactively. Deleted analytics data cannot. This is the only item on the list where waiting has a permanent cost.
The ten minute version
- Realtime report. Do you see yourself when you visit your own site?
- Repeat on a deep page and on the donation confirmation page.
- Is your own domain listed in your referrals?
- Do your key events fire, and do they represent something real?
- Is data retention set to 14 months, or still at the default two?
If any of those comes back wrong, the reports you have been reading are describing something other than reality, and they have probably been doing it for longer than you would guess.
Retention behaviour is per Google’s Analytics data retention documentation, and Ad Grant conversion requirements per the Ad Grants policy compliance guide. Google changes product interfaces and defaults periodically, so confirm current settings before acting on them.
