SEOPress Free adds the Google Analytics 4 tracking code to your WordPress site. You need a GA4 property and its web data stream’s measurement ID. The optional cross-domain and 404 settings below are available in SEOPress 10.3.
Install GA4 tracking
- In Google Analytics, select your property, open Admin, Data streams and select the web stream for your site. Copy its measurement ID, which starts with
G-. See Google’s measurement ID instructions. - In WordPress, go to SEO, Analytics and enable the Analytics module.
- Open the Google Analytics tab and enable Google Analytics tracking.
- Paste the ID into Enter your measurement ID (GA4).
- Save changes and clear your page and CDN caches.
Use a GA4 measurement ID, not an old Universal Analytics tracking ID or the numeric property ID used for dashboard reporting. Do not install the same tracking code a second time through your theme, another plugin or Google Tag Manager.
Choose consent and role exclusions
In the Advanced tab, select any user roles you want to exclude from tracking. For tests, use a logged-out session or a role that is not excluded.
To request consent, configure the Cookie bar / GDPR tab and follow the cookie consent guide. Tracking and DebugView results depend on consent, browser blockers and other privacy settings.
Check the installation
Open a public page, give consent if required and check the correct property’s Realtime report. For a detailed check, connect the browser with Google Tag Assistant, then use Admin, Data display, DebugView in GA4. Confirm the measurement ID and page events. DebugView requires debug mode for the device being tested.
Connect journeys across domains
Use cross-domain measurement when a journey passes between related sites, such as a main site and a checkout on another domain. Both must use the same Google tag. If you already configure your domains in Google Analytics, leave SEOPress’s optional cross-domain fields unchanged.
- In SEO, Analytics, Google Analytics, find Cross-domain measurement.
- In Linked domains, enter hostnames separated by commas, for example
example.com, checkout.example.net. Do not includehttps://, paths or wildcards. Internationalized domain names must use their ASCII/punycode form. - Include the complete set of domains you want this local setting to handle. A non-empty local list overrides domains configured in Google Analytics; it does not merge with that list.
- Choose the behavior for Incoming linker parameters using the table below.
- Save, clear caches and check the configuration on the participating sites.
| Incoming setting | Behavior |
|---|---|
| Use Google tag defaults | SEOPress does not force an incoming value. Google accepts incoming linker parameters by default when linked domains are configured. |
| Accept | Explicitly accept incoming parameters, including when you have not supplied outgoing linked domains. |
| Reject | Explicitly reject incoming linker parameters. |
To verify, click a normal link from one configured domain to another and check for _gl in the destination URL. Check the actual navigation rather than the link’s HTML before clicking. If a redirect removes the parameter, review the redirect configuration. Read Google’s cross-domain troubleshooting guide.
Identify 404 pages in GA4
- In the same tab, under Events, enable Identify 404 pages in Google Analytics.
- Save changes and clear caches.
- Visit a deliberately nonexistent URL on your site and confirm that WordPress displays its 404 page rather than redirecting elsewhere.
- In DebugView, inspect its existing
page_viewevent. It should includepage_not_foundwith the string valuetrue.
The option labels events on a WordPress 404 page; it does not send an additional page view or create a separate page_not_found event. A normal page is not labeled false. Errors served directly by the web server without WordPress do not run this integration.
Create a 404 report
In Admin, Data display, Custom definitions, create a custom dimension named Page not found, with scope Event and event parameter page_not_found.
After data is processed, create a free-form exploration. Import this dimension, Event name and Page location, add Event count, then filter to page_not_found = true and Event name = page_view. Use Page location as rows to see which missing URLs were viewed. The page-view filter avoids counting other events from the same error page as additional visits.
This is visitor measurement in GA4, not SEOPress PRO’s server-side 404 monitoring or a redirect manager. See Google’s custom dimension instructions for permissions and processing times.
Next steps
To measure downloads, external links, affiliate links and telephone clicks, follow the event tracking guide. If data is missing, first check the measurement ID, consent, role exclusions, duplicate tags, cache and JavaScript optimization.