Skip to content
GPLWP Guides

How to track ad performance in WordPress

Analytics Time About 30 minutes 6 steps Updated 23 Oct 2026

ANALYTICS
The short answer

You can track ad clicks and conversions in WordPress with Google Analytics 4, UTM-tagged links and event tracking. Impressions for self-hosted banners are different: GA4 will not count them automatically, so use an ad-tracking plugin when you need per-ad impression and placement reports.

The route
  1. 01Choose the metrics to track
  2. 02Connect GA4 to WordPress
  3. 03Tag every ad destination
  4. 04Track clicks and conversions
  5. 05Verify the numbers before reporting
  6. 06Use Advanced Ads for the fast route

What you need

  • A WordPress site with administrator access
  • A Google Analytics 4 property or a Google account for creating one
  • A list of ads, landing pages and conversion actions
  • Consent and cookie settings that allow analytics where required

Choose the metrics to track

Decide whether you need impressions, clicks, conversions, revenue or all four. An impression means the ad was displayed, a click means someone followed its link, and a conversion means the visitor completed an action such as a purchase or enquiry.

Do not treat page views as ad impressions. A page can load while an ad is below the fold, blocked, cached or replaced, so use an ad-specific tracker if impression accuracy matters. Support discussions regularly show discrepancies caused by caching and logged-in versus logged-out behaviour.

Connect GA4 to WordPress

The manual WordPress route is to install Site Kit by Google, then connect it to an existing Google Analytics 4 property or create one during setup. In WordPress, go to Plugins > Add New, search for Site Kit, install it and activate it. Then open Site Kit > Dashboard and complete the Google connection and Analytics setup.

Check that only one tool places the Analytics tag. A theme, tag manager, header-script plugin and Site Kit can otherwise create duplicate data. Site Kit documents existing theme, template and plugin placements as common places to check.

Tag every ad destination

Add consistent UTM parameters to links used in campaigns, such as utm_source, utm_medium, utm_campaign and, where useful, utm_content for different creatives or placements. For example, use different content values for a sidebar banner and an article banner that promote the same campaign.

Google Analytics uses these parameters to identify campaign traffic in acquisition reports. Keep the naming format consistent and check redirects, because redirects or missing parameters can send traffic into direct or none instead.

Track clicks and conversions

For links leaving your domain, enable GA4 enhanced measurement so Analytics can record outbound click events without adding code to every link. You can inspect the resulting link URL, link domain and event count in an Exploration.

For ads that link to another page on your own site, create a custom event through Google Tag Manager or site code, passing useful values such as the ad name, placement and campaign. Mark the completed action, such as a purchase or lead submission, as a conversion or key event in GA4. Google documents custom events as the route for interactions that are not collected automatically.

Verify the numbers before reporting

Open GA4 Realtime or DebugView, visit the page as a non-logged-in visitor and click each test ad. Confirm that the expected event, campaign values and conversion appear. Site Kit recommends checking Realtime and using Tag Assistant when verifying that the tag fires.

If clicks are higher than sessions, a visitor may leave before the tag loads, return later or use a bookmarked campaign URL. Consent tools, ad blockers, caching and optimisation plugins can also prevent tracking. Do not change ad placements based on one day's data; wait for enough traffic and compare the same date range across campaigns.

Use Advanced Ads for the fast route

If you need WordPress-native reports for ad impressions, clicks and conversions, install and activate Advanced Ads, create or import your ads, and configure its tracking options for each placement. Its reporting tools are intended to bring ad performance data into WordPress rather than making you assemble every placement report manually.

The manual GA4 route is fine for a small number of outbound campaigns where clicks and conversions are enough. Choose Advanced Ads when you need per-ad impression tracking, placement comparisons, filtering by date or ad type, and scheduled reports. Check the results against GA4 because consent choices, caching and ad blockers can still create differences between systems.

The fast route

Let Advanced Ads do it

Tracks ad impressions, clicks, and conversions with reports; choose it when you need WordPress-native advertising analytics.

Get Advanced Ads

Sources

  1. wordpress.org /support/topic/how-do-you-measure-your-ad-impression/?utm_so…
  2. sitekit.withgoogle.com /documentation/getting-started/install/?utm_source=openai
  3. sitekit.withgoogle.com /documentation/using-site-kit/manage-site-kit-placed-code/?u…
  4. support.google.com /analytics/answer/10917952?hl=en&utm_source=openai
  5. support.google.com /analytics/answer/13566436?hl=en&utm_source=openai
  6. developers.google.com /analytics/devguides/collection/ga4/events?hl=en&utm_source=…
  7. sitekit.withgoogle.com /documentation/troubleshooting/analytics/?utm_source=openai
  8. support.google.com /analytics/answer/14452452?hl=en&utm_source=openai

Questions

Can Google Analytics track ad impressions in WordPress?
Google Analytics can track ad impressions when an advertising integration sends an ad impression event, but it does not automatically count every self-hosted banner displayed in a WordPress page. For those ads, you need custom event tracking or an ad-management plugin that records impressions. Page views are not a reliable substitute because the ad may be below the fold, blocked or not rendered.
How do I track clicks on banner ads in WordPress?
Track banner clicks by using outbound click measurement for links leaving your site, or by sending a custom GA4 event for internal links. Add campaign parameters such as source, medium, campaign and content so you can compare banners and placements. Test the event in Realtime or DebugView, then check that consent and caching tools are not preventing the tag from running.
What UTM parameters should WordPress ad links use?
Use utm_source, utm_medium and utm_campaign on every campaign link. Add utm_content to distinguish creatives or placements, and use utm_id when you need a stable campaign identifier. Keep spelling and capitalisation consistent: campaign names such as SummerSale and summersale can become separate values in reports. Do not add manual UTMs to Google Ads links when they would override existing Google click identifiers.
Why do WordPress ad reports and GA4 numbers differ?
The numbers differ because the systems may count different things. An ad plugin may count an impression when an ad is rendered, while GA4 may record a session only after its tag loads. Consent refusals, ad blockers, cached pages, logged-in-user exclusions, redirects and visitors leaving quickly can also remove events or change attribution. Compare definitions and date ranges before treating the difference as an error.
Do I need a plugin to track ad performance in WordPress?
You do not need a plugin for basic campaign clicks and conversions: GA4, Site Kit, UTM links and event tracking can handle that route. You generally need a plugin or a custom ad-serving system when you require reliable per-ad impressions, placement-level reports, conversion summaries or scheduled WordPress dashboards. Advanced Ads is a suitable choice when those reports need to live inside WordPress.