UTM parameters are short code snippets added to the end of a URL that tell Google Analytics exactly where a visitor came from, what medium brought them, and which campaign or profile element they clicked. Without them, traffic arriving from your Google Business Profile (GBP) lands in GA4 as either "direct" or "organic" – indistinguishable from someone who typed your URL directly or found you through a standard search result. Adding UTM tags to every link in your profile fixes this attribution gap and gives you accurate, actionable data on what your GBP is actually driving.

▸ Key Takeaways

  • Without UTM parameters, GBP traffic appears as "direct" or "organic" in GA4, making accurate attribution impossible.
  • A complete GBP UTM tag uses five parameters: utm_source, utm_medium, utm_campaign, utm_content, and utm_term.
  • Tag every linkable field in your GBP – primary website URL, appointments, menu, and any Google Posts CTAs.
  • All tagged URLs must return a 200 status code with no redirects, or UTM parameters will be stripped in transit.
  • Use a consistent naming convention (all lowercase, hyphens instead of spaces) and document every tag in a shared spreadsheet.
  • Multi-location businesses should include a branch identifier in utm_campaign (e.g., gbp-london) to separate location-level performance in GA4.
  • GBP Insights only tracks clicks on the primary website URL – UTM tagging is the only way to measure engagement from all other links in the profile.

Why Google Business Profile Traffic Goes Missing in GA4

Google Business Profile (GBP) is a free business listing on Google that appears in local search results and Google Maps, showing contact details, hours, reviews, and links that users can click to visit a website, book an appointment, or place an order.

GBP has its own native reporting tab called "Performance," but its data is limited. It counts total interactions – calls, direction requests, messages and tracks clicks on the primary website URL. It does not report on clicks from your appointment link, your menu link, or any CTA inside a Google Post.

More importantly, GBP Insights tells you nothing about what those visitors do after they land on your site. Do they convert? Which page did they visit first? How long did they stay?

Without UTM tags, GA4 groups GBP clicks with direct traffic (users who typed your URL) and organic traffic (standard search result clicks). Traffic arriving via the Google Maps mobile app is almost always recorded as "direct" because mobile mapping apps do not pass referrer information. The result: your GBP could be driving 20% of your leads, and your reports would never show it.

For multi-location businesses, the problem compounds. Traffic from five different branch profiles all collapses into the same undifferentiated bucket, making branch-level performance evaluation impossible.

UTM parameters solve this by embedding source information directly into the URL itself, so GA4 captures it regardless of the referring platform or device.

Step 1: Understand the Five UTM Parameters

UTM parameters (Urchin Tracking Module parameters) are key-value pairs appended to a URL after a question mark that pass campaign and source data to analytics platforms like Google Analytics 4.

Each parameter serves a distinct role:

Parameter What It Tracks Recommended Value for GBP
utm_source Where traffic originates gbp
utm_medium The traffic channel organic
utm_campaign The campaign or listing gbp-listing or gbp-chicago for multi-location
utm_content Which specific link was clicked website-button, appointment-link, post-cta
utm_term Keywords or additional identifiers Optional for GBP use

For most GBP implementations, utm_source, utm_medium, utm_campaign, and utm_content are the four parameters you need. The utm_content field is what separates a click on your primary website button from a click on your appointment link – critical for understanding which profile elements drive the most traffic.

Step 2: Build Your UTM-Tagged URLs

The fastest way to build a correctly formatted UTM URL is Google's Campaign URL Builder. Enter your destination URL and fill in each parameter field. The tool outputs a complete URL you can copy directly into your GBP.

Naming Convention Rules

Apply these rules before generating any URL. Inconsistent naming is the most common cause of fragmented data in GA4:

  • Use all lowercase. GA4 treats GBP and gbp as two different sources.
  • Replace spaces with hyphens. gbp listing becomes gbp-listing.
  • Never use special characters. Stick to letters, numbers, and hyphens.
  • Be consistent across all locations and all team members. Document every convention in a shared spreadsheet before you start.

Example Tagged URLs

Primary website button (single location):

https://www.example.com/?utm_source=gbp&utm_medium=organic&utm_campaign=gbp-listing&utm_content=website-button

Appointment link:

https://www.example.com/book/?utm_source=gbp&utm_medium=organic&utm_campaign=gbp-listing&utm_content=appointment-link

Google Post CTA (multi-location, Chicago branch):

https://www.example.com/offer/?utm_source=gbp&utm_medium=organic&utm_campaign=gbp-chicago&utm_content=post-cta

For multi-location businesses, changing utm_campaign to include a branch identifier (city, store code, or branch name) lets you filter GA4 reports by location. This is the most direct way to evaluate branch-level GBP performance without needing separate analytics profiles.

Step 3: Verify Your URLs Before Adding Them to GBP

A tagged URL that redirects will lose its UTM parameters in transit. GA4 records the session as direct traffic – exactly the problem you were trying to fix.

Before pasting any URL into your GBP, check three things:

  1. Status code: The URL must return a 200 OK status. Use a tool like Screaming Frog or the Chrome extension Redirect Path to confirm no redirect is in place.
  2. Canonical URL match: Your tagged URL should use the canonical version of the page – the exact URL Google Search Console recognises as the preferred version. Tagging a non-canonical URL can cause indexation and tracking conflicts.
  3. No trailing slashes mismatch: If your site uses example.com/book/, tagging example.com/book (without the trailing slash) may trigger a redirect. Match the URL format exactly as it appears in GA4.

Run these checks again any time you update a page URL or restructure your site. UTM maintenance is an ongoing task, not a one-time setup.

Step 4: Add UTM Tags to Every Linkable Field in Your GBP

Log into your Google Business Profile through Google Search and click "Edit profile." The fields available depend on your primary business category. Tag every field that accepts a URL.

Primary Website URL

This is the most important field. Navigate to "Edit profile" and replace the existing URL with your UTM-tagged version. Use utm_content=website-button to identify this specific touchpoint.

Appointments and Bookings

Under the "Bookings" section, replace the appointment URL with a tagged version using utm_content=appointment-link. If your booking system sits on a third-party platform, note that GA4 will not capture post-click behaviour once the user leaves your domain.

Tag the menu URL with utm_content=menu-link. If the menu lives on a third-party delivery platform, UTM data ends at the click – no on-site behaviour will be recorded.

Google Posts CTAs

Every Google Post can include a "Learn more" or custom CTA button linking to a URL on your site. Tag each post URL with a unique utm_content value. Using the post topic or date (e.g., utm_content=post-summer-offer-june) lets you compare which post themes drive the most traffic over time. A well-optimised GBP profile generates measurable engagement from Posts but only UTM tagging makes that engagement visible in GA4.

Step 5: Create a GA4 Report to Monitor GBP Traffic

Once UTM-tagged URLs are live in your profile, give them 48–72 hours to generate data, then build a dedicated GA4 report.

Using the Exploration Report

  1. In GA4, go to Explore and create a new blank exploration.
  2. Add the following dimensions: Session source, Session medium, Session campaign, Session default channel group.
  3. Add the following metrics: Sessions, Engaged sessions, Conversions, Engagement rate.
  4. In the filter bar, set Session source to exactly match gbp.
  5. Add a secondary filter: Session medium equals organic.

This report now shows all traffic that entered via a UTM-tagged GBP link, broken down by campaign (and therefore by location if you used branch identifiers) and by content (showing which GBP element drove the click).

Tracking Conversions

To measure GBP-driven conversions, ensure your GA4 conversion events (form submissions, appointment bookings, phone call clicks) are already configured. The Exploration report will then show how many conversions originated from each GBP element – giving you the ROI data that GBP Insights can never provide on its own.

AI-sourced traffic attribution is increasingly significant alongside GBP traffic, and AuthorityStack.ai tracks both channels with confidence scoring so you can see the full picture of how discovery channels contribute to conversions.

Common Mistakes to Avoid

  • Using redirecting URLs. If the page you link to redirects – even a simple http to https redirect – GA4 may drop the UTM parameters. Always link to the final resolved URL.
  • Inconsistent capitalisation. GBP and gbp create two separate source entries in GA4. Standardise on lowercase from the start.
  • Reusing the same utm_content across all fields. Using website-button for every link defeats the purpose of content-level tracking. Each GBP link needs a unique value.
  • No documentation. When a team member updates a GBP URL six months from now, they need to know which UTM structure to use. A shared naming convention spreadsheet prevents this becoming a data quality problem.
  • Forgetting to update tags after URL changes. When you update a page URL, the UTM tag in GBP still points to the old destination. Set a quarterly reminder to audit every tagged URL in your profiles.

Consistent schema markup on local landing pages also reinforces the entity signals Google uses to connect your GBP clicks to the correct location pages – a factor that affects both ranking and attribution accuracy.

FAQ

What Is the Correct utm_source Value for Google Business Profile?

Use gbp as the utm_source value for all Google Business Profile links. This keeps GBP traffic separate from standard organic search (google) and paid search (google with utm_medium=cpc) in GA4 reports. Some teams use google-business-profile for readability, but the shorter gbp is more common and works equally well – the key is consistency across all locations and all team members.

Will Adding UTM Parameters to My GBP Hurt My SEO Rankings?

No. UTM parameters are query strings that analytics platforms read and strip before passing users to your page. Google Search indexes only the base URL – the portion before the ? so your ranking signals remain unaffected. The parameters are invisible to Googlebot in terms of indexation.

Why Does My GBP Traffic Still Show as "direct" in GA4 After Adding UTMs?

This usually means the tagged URL is redirecting. When a URL with UTM parameters redirects to another URL, most analytics platforms lose the parameter data and record the session as direct. Confirm that your tagged URL returns a 200 status code with no redirect in place. Also check that the URL in your GBP exactly matches the canonical URL of the page.

Can I Use UTM Tags on Google Post Links?

Yes, and you should. Google Posts can include a CTA button linking to any page on your site. Tag each Post URL with a unique utm_content value that identifies the post topic or date (e.g., post-summer-promo-june). This lets you compare Post performance in GA4 and identify which content themes drive the most engaged traffic from your profile.

How Do I Track Multiple GBP Locations Separately?

Use the utm_campaign parameter to differentiate locations. Include a branch identifier in the campaign value – for example, gbp-manchester or gbp-store-042. In GA4, filter by campaign to isolate each branch. This approach works cleanly with the Exploration report and lets you compare location-level GBP performance without creating separate analytics properties.

Does GBP Insights Replace the Need for UTM Tracking?

No. GBP Insights only tracks clicks on the primary website URL and reports aggregate interaction counts (calls, direction requests, messages). It does not track clicks from appointment links, menu links, or Google Posts, and it provides no data on post-click behaviour – what users do after reaching your site. UTM tracking in GA4 fills every gap that Insights leaves open.

How Often Should I Audit My UTM-tagged GBP URLs?

Audit your tagged URLs at least once per quarter. Website URLs change when pages are redesigned, URL structures are updated, or new booking systems are implemented. A tagged URL pointing to a redirecting or deleted page will silently drop UTM data, making your attribution reports unreliable. A simple spreadsheet logging every tagged URL and its last verified date makes this audit straightforward.

What to Do Now

  1. Open a shared spreadsheet and document your UTM naming convention before building any URLs.
  2. List every linkable field in each of your GBP profiles – primary website, appointments, menu, and any active Google Posts.
  3. Use the Google Analytics Campaign URL Builder to generate a tagged URL for each field, following the naming rules in Step 2.
  4. Verify every URL returns a 200 status code with no redirects.
  5. Update each GBP field with its tagged URL and set a calendar reminder to re-audit in 90 days.
  6. Build a GA4 Exploration report filtered to utm_source = gbp to monitor sessions, engagement, and conversions by profile element.

Marketing teams that want full visibility across both local search and AI-generated recommendations can track their AI visibility alongside GBP performance from one dashboard.