Guide 142 · Setup · GA4 + Tag Manager
The GA4 setup checklist: twelve checks before you call the property done
A GA4 property is not set up when the tag is installed; it is set up when the twelve checks in this guide all pass. The list runs in the order the property was built: the account and property, the stream and its ID, the tag and its single install, the enhanced measurement toggles, retention, filters, domains, and access. Each check names the guide in this section that covers it in full, so a failed check has a page to go back to.
After check 12, every box is ticked: the property, the stream, the tag, the toggles, the filters, and the access list are all confirmed, and the property is ready to collect clean data.
Download the reference: the GA4 setup checklist (JSON) (1107 bytes, MD5 8e148a0f51e19a74e8ccebabe102bf07). The twelve checks, counted in Python: 4 identity + 3 measurement + 3 hygiene + 2 access = 12.
What you need
- A GA4 property with a web data stream and an installed tag. This checklist verifies a setup; it does not create one.
- The Editor role or above at the property level. Several checks end in a settings change, and a Viewer cannot make them.
- The twelve checks below, in order. Skipping the order hides the dependency: the filters cannot be checked before the stream exists.
The trace
- Check 1 — the account and property exist under the right names. Admin shows one account for the business and one property for the website, with the reporting time zone and currency set for the business. Covered in full in the account and property guide.
- Check 2 — the web data stream exists with the right URL. Admin, then Data streams, shows one web stream for the site, and the stream details page shows the website URL exactly as visitors reach it.
- Check 3 — the Measurement ID is copied, not typed. The stream details page shows the G- ID, 12 characters long, and the same ID is in the installed tag. Covered in full in the Measurement ID guide.
- Check 4 — the tag is installed exactly once. One install method only: the Google tag, Tag Manager, or a CMS integration. A second install doubles page views. Covered in full in the gtag.js guide and the Tag Manager install guide.
- Check 5 — Realtime shows a visit within minutes. Open the site, then open the Realtime report. The visit appears within minutes. Standard reports can take 24 to 48 hours, so an empty standard report on day one is not a failed check.
- Check 6 — data appears in standard reports after 48 hours. Two days after the install, the standard reports show the traffic. If Realtime works and standard reports stay empty past 48 hours, the problem is processing, not the tag.
- Check 7 — enhanced measurement is set deliberately. The stream settings show 7 options: page views always on, and the other 6 — scrolls, outbound clicks, site search, video engagement, file downloads, form interactions — each on or off by choice, not by default. That is 4 identity checks done and 3 measurement checks in progress: 4 + 3 = 7 checks so far.
- Check 8 — event data retention reads 14 months. Admin, then Data collection and modification, then Data retention, shows 14 months for event data and for user data. The gain over 2 months is 12 extra months of explorations.
- Check 9 — internal traffic is defined and the filter is Active. The office IP addresses are defined in the stream's tag settings, and the internal traffic data filter is set to Active, not left in Testing. That is 3 hygiene checks in progress: retention, internal traffic, and the next one.
- Check 10 — developer traffic is filtered. A developer traffic data filter excludes debug_mode events, so test traffic never reaches the reports. Combined with checks 8 and 9, the 3 hygiene checks make 4 + 3 + 3 = 10 checks done.
- Check 11 — cross-domain and subdomain settings match the site. If the site uses a second domain, it is listed in Configure your domains and the
_glparameter appears on crossing. If the site uses subdomains, they share the one Measurement ID and no cross-domain setup was added for them. - Check 12 — access is granted to people, not shared logins. Property access management lists each person by their own Google account email with the lowest role that does their job, and nobody shares the owner's login. That is 2 access checks counting this one and the domains check in step 11: 10 + 2 = 12 checks in total — 4 identity, 3 measurement, 3 hygiene, and 2 access.
Dead ends
DEAD END — CALLING THE PROPERTY DONE AT THE TAG INSTALL. The tag is check 4 of 12. A property with a tag but with 2-month retention, no internal traffic filter, and a shared login is collecting polluted data on a short fuse. The checklist exists because the tag is the easy half.
DEAD END — CHECKING THE BOXES FROM MEMORY. Each check ends in a screen that can be read back: the stream details page, the retention screen, the filter list, the access list. A check ticked from memory is the one that turns out wrong.
DEAD END — RUNNING THE CHECKLIST ONCE AND NEVER AGAIN. Settings drift: a new subdomain, a new office IP, a new contractor. Run the checklist again after any of those changes, and check retention again after any large traffic jump, since Large properties fall back to 2 months.
End state
Twelve checks, all passing: the account and property are right, the stream and ID match the tag, the tag is installed once and verified in Realtime, the toggles are deliberate, retention is 14 months, the filters are Active, the domains are handled, and access is personal. The property is set up, not half set up.
Sources
- Analytics Help — [GA4] Set up Analytics for a website and/or app — the setup order: account, property, data stream, then data collection; the checklist of additional configurations Google points to next
- Analytics Help — Confirm that you are collecting data — many reports and explorations can take 24 to 48 hours to process data; Realtime and DebugView confirm collection sooner
Checked 11 November 2026. The setup order and the 24 to 48 hour lag above are the ones in Google's setup page, opened 11 November 2026, and the confirming-data page, opened 11 November 2026. No step in this guide was run inside a live Analytics property, because that needs a Google sign-in and this site does not sign in as anyone. The reference file was checked in Python: its figures were recomputed from the documentation values and match the numbers on this page. Google moves menu items without warning; if a path on this page no longer matches, the linked help page is the current map.