June 9, 2026
5
min read

How A 28-Location Franchisor Fixed Multi-Location Google Ads Attribution And Scaled Job Volume


Alexander Perleman
, Head Of Product @ groas
Ex-Goldman Sachs and Stanford Computer Science

alex@groas.ai

LinkedIn
Abstract layered topographic landscape with glowing muted gold ridgelines and segmented architectural forms rising from a deep slate background, lit by a single soft directional light source.

Multi-location Google Ads attribution is the process of correctly assigning conversions, calls, and booked jobs to the specific franchise location and campaign that generated them, so Smart Bidding receives accurate signals and budget flows to the right markets. When attribution breaks across a franchise system, every location suffers: cost per lead inflates, top-performing markets get starved of budget, and the algorithm optimizes toward noise instead of revenue.

This is the story of a 28-location home services franchisor that was spending heavily on Google Ads but could not explain which locations were actually generating booked jobs. Misattributed calls, missing offline conversions, and a single account manager trying to hold it all together had turned their account into a machine that was optimizing confidently toward the wrong outcomes. What follows is how the attribution problem was diagnosed, what specifically got restructured, and how the account went from unreliable lead volume to consistent, trackable job bookings across all 28 markets.

The Setup: 28 Locations, One Account Manager, Attribution Chaos

The Scale And The Strain

This franchisor operated 28 locations across three states, all running Google Ads for local home services: HVAC, plumbing, and electrical. Monthly ad spend sat around $85K total, spread unevenly across locations. Some markets got $5K per month, others closer to $1K. A single account manager at their agency handled the entire book.

The campaigns technically worked. Leads came in. Phones rang. But no one could confidently say which location a given lead belonged to, whether that lead became a booked job, or whether the cost to acquire that job was sustainable in any specific market.

Revenue Leaking Through Misattributed Calls And Form Fills

Call tracking was set up at the account level, not the location level. A single pool of tracking numbers routed through a third-party system that tagged calls as conversions but did not reliably tie them to a specific franchise location. Form fills landed in one shared inbox. The CRM logged the lead, but Google Ads never saw the downstream outcome.

The result: Google's Smart Bidding algorithms were optimizing on incomplete, often incorrect data. They saw "conversions" happening, but those conversions were a mix of calls to the wrong location, spam submissions, and leads that never booked. The algorithm could not distinguish a $4,000 booked HVAC job from a robo-call.

This is a structural problem, not a tactical one. And it is far more common in multi-location franchise Google Ads management than most franchise operators realize.

The Core Problem: Tracking Multi-Location Conversions Across Franchisees

Multi-location Google Ads attribution breaks in predictable ways. Understanding the specific failure points here matters because they show up in nearly every franchise account running above 10 locations.

Shared Tracking Versus Location-Level Conversion Actions

The account used a single set of conversion actions for all 28 locations. One "Phone Call" conversion. One "Form Submission" conversion. Google Ads treated every conversion as interchangeable, which meant the algorithm could not learn which location, keyword, or ad group was driving actual value in a specific market.

When Smart Bidding sees a conversion, it tries to find more of the same. If the conversion data is polluted by cross-location misattribution, the bidding algorithm chases patterns that do not exist. It might increase bids in a market that looks like it converts well, when in reality those "conversions" belong to a neighboring franchise territory.

How Call Tracking Was Conflating Locations

The call tracking system used dynamic number insertion (DNI) at the domain level. Because many locations shared landing page templates with minimal differentiation, the DNI system frequently assigned calls to the wrong campaign or location. A user clicking an ad for the Phoenix market might land on a page that swapped in a number tied to the Tucson campaign bucket.

This is the kind of issue that compounds silently. The reporting looked plausible. Conversion volume seemed healthy. But the data underneath was unreliable, and Smart Bidding was optimizing on those bad signals every single day.

The Smart Bidding Signal Problem

Smart Bidding strategies like Target CPA and Maximize Conversions depend entirely on the quality of the conversion data they receive. Feed them accurate signals and they improve over time. Feed them noise and they degrade confidently, spending more to chase patterns that do not correlate with real business outcomes.

With 28 locations, the signal-to-noise ratio was catastrophic. The algorithm could not learn because there was nothing consistent to learn from.

Fix 1: Restructuring Conversion Actions By Location And Intent Type

The first intervention was creating location-specific conversion actions. Instead of one "Phone Call" conversion shared across all 28 markets, each location got its own conversion action for calls, and a separate one for form submissions.

This alone changed the data Google Ads received. Each location's campaigns now reported their own conversions independently. Smart Bidding could start learning what a real conversion looked like in the Phoenix market versus Tucson versus Scottsdale.

Beyond location separation, the conversion actions were also split by intent type. A call lasting under 60 seconds was categorized differently from a call over 60 seconds. Form submissions were split between "request a quote" (high intent) and "general inquiry" (lower intent). This gave the bidding algorithm a gradient of value to work with instead of a binary "converted or did not."

The restructuring was not technically complex, but it was tedious, which is exactly why it had not been done. A single account manager handling 28 locations does not have the hours to build and QA 56+ conversion actions, configure call duration thresholds, and verify that each one fires correctly. This is where the limitations of a single account manager become structural constraints on performance.

Fix 2: Importing Offline Conversion Data From The Scheduling System

The franchisor used a scheduling and dispatch system (ServiceTitan) that tracked the full customer journey: from lead to booked appointment to completed job to revenue collected. None of that data was flowing back into Google Ads.

This meant Google's algorithm knew a phone call happened but had no idea whether that call resulted in a $0 outcome or a $6,000 job. Without offline conversion imports, Smart Bidding was equally enthusiastic about every lead, regardless of downstream value.

What The Integration Looked Like

The fix involved setting up an offline conversion import pipeline using Google's Click ID (GCLID). When a lead came in through a Google Ads click, the GCLID was captured and stored in the CRM alongside the customer record. When that lead progressed to "job booked" or "job completed" in ServiceTitan, the conversion and its associated revenue value were uploaded back to Google Ads with a delay matching the typical booking window (usually 3 to 7 days for this business).

This gave Smart Bidding what it actually needed: real revenue data tied to real clicks. The algorithm could now distinguish between a click that generated a $200 diagnostic call and one that generated a $7,500 system replacement. Budget allocation shifted accordingly.

For businesses running complex service models, offline conversion import is not optional. It is the difference between Smart Bidding working for you and Smart Bidding working against you.

Fix 3: Separating Branded From Non-Branded Budget By Location

A subtler attribution problem was that branded search traffic was inflating conversion metrics for certain locations. When a franchise location had strong local brand recognition, branded searches (people searching the company name plus the city) converted at very high rates and very low CPAs. That is expected. But those branded conversions were pooled with non-branded campaign data, making it look like certain locations were performing far better than they actually were on prospecting terms.

The fix was straightforward but important: branded and non-branded campaigns were separated for each location. Each got its own budget. Branded campaigns ran on Maximize Conversions with a modest budget cap since they were mostly capturing existing demand. Non-branded campaigns ran on Target CPA using the offline conversion data, focused on generating net-new leads.

This separation gave the franchisor an honest view of what it cost to acquire a new customer in each market, without branded traffic distorting the numbers.

Fix 4: Letting Smart Bidding Restabilize With Clean Data

After the restructuring, performance initially dipped. This is normal and expected. When you change conversion actions, Smart Bidding enters a learning phase. It needs to recalibrate on the new, cleaner data. For the first two to three weeks, CPAs fluctuated and volume was inconsistent.

The critical decision was not to panic and override the algorithm during this period. Many advertisers see a short-term dip after restructuring and revert to manual bidding or start making aggressive changes that prevent the algorithm from stabilizing. This franchisor held steady, monitored the offline conversion data flowing in, and let the system recalibrate.

By week four, bidding had stabilized. By week six, the account was operating on a fundamentally different dataset than it had been for the previous two years.

Understanding why Smart Bidding fails without proper strategic oversight is essential context here. The algorithm is powerful, but it is only as good as the data and structure surrounding it.

The Result: What Changed In Booked Jobs, CPL, And Revenue Attribution

After the full restructuring settled, the franchisor saw several meaningful shifts:

Booked job volume became trackable at the location level for the first time. Each franchisee could see exactly how many jobs Google Ads generated, what those jobs were worth, and what the cost per booked job was for their specific market.

Cost per lead dropped in most markets, not because the CPCs changed dramatically, but because the algorithm stopped wasting budget on clicks that historically led to misattributed or non-converting leads. The efficiency gain came from better signal quality, not from bidding tricks.

Budget reallocation became data-driven. Markets that had been underfunded relative to their revenue potential got more budget. Markets where the cost per booked job was unsustainable got reduced spend or restructured campaigns. Decisions that had previously been guesswork became visible.

The franchisor also identified three locations where Google Ads was unlikely to be profitable given the local competitive dynamics and shifted those budgets to higher-performing markets. That reallocation alone recaptured meaningful spend that had been generating leads no one could attribute or close.

Lessons For Multi-Location Service Businesses

If you operate more than a handful of locations on Google Ads, the attribution problems described here are almost certainly present in some form. The specifics vary, but the pattern is consistent:

Shared conversion tracking across locations poisons your bidding data. Location-level conversion actions are not optional at scale.

Offline conversion import is the single highest-leverage fix for service businesses where the real outcome (a booked job, a closed deal) happens off-platform. Without it, Smart Bidding optimizes for clicks and calls, not revenue.

Branded and non-branded traffic must be separated to understand true acquisition cost. Blending them creates a false picture that leads to bad budget decisions.

And the human bandwidth required to maintain all of this across dozens of locations is substantial. A single account manager, no matter how skilled, cannot monitor 28 sets of conversion actions, verify offline data imports, manage location-level budgets, and optimize campaigns simultaneously. The work exceeds what one person can physically get through in a week.

This is the structural gap that most agencies cannot close without significant headcount increases.

When Your Attribution Problem Is Too Complex To Solve Without A Dedicated Engine

The attribution restructuring described in this article took weeks of manual work: building conversion actions, configuring call tracking, setting up the offline import pipeline, separating campaigns, and then monitoring the restabilization period across 28 locations. That is before the ongoing maintenance of verifying data quality, adjusting bids, and reallocating budgets as market conditions shift.

This is exactly the kind of problem groas was built for. The proprietary engine trained on over $500 billion in profitable ad spend runs execution around the clock, handling the structural complexity of multi-location attribution, conversion configuration, and bidding optimization at a scale that no single account manager can match. For a franchisor running this many locations, the DFY (Done For You) service means a dedicated senior strategist owns the entire account end-to-end, from attribution architecture to campaign optimization to landing page performance, with the engine doing the heavy lifting underneath.

There is no onboarding fee. The engagement is month-to-month with no long-term contract, which means groas earns the next month by performing, not by locking you in. And the combination of an engine that never sleeps with a strategist who understands the nuance of multi-location franchise advertising changes the math on what is possible.

For franchise operators and multi-location service businesses where the attribution problem has outgrown what your current agency or in-house team can handle, the path forward is clear. Apply for DFY and let groas figure out the right plan on the call.

Frequently Asked Questions

What Is Multi-Location Google Ads Attribution?

Multi-location Google Ads attribution is the process of correctly assigning each conversion, call, or booked job to the specific franchise location and campaign that generated it. When attribution works correctly, Smart Bidding receives accurate signals about which locations, keywords, and ads drive real revenue. When it breaks, the algorithm optimizes on polluted data, leading to wasted budget, inflated cost per lead, and an inability to tell which markets are actually profitable. For franchise systems with more than a handful of locations, location-level conversion actions and offline conversion imports are essential to maintaining clean attribution.

Why Does Smart Bidding Fail In Multi-Location Franchise Accounts?

Smart Bidding strategies like Target CPA and Maximize Conversions rely entirely on the quality of the conversion data they receive. In multi-location accounts, shared conversion actions pool data across locations, making it impossible for the algorithm to learn what a real conversion looks like in any specific market. Call tracking systems can misattribute calls between territories, and without offline conversion imports, the algorithm treats every phone call the same regardless of whether it resulted in a $0 outcome or a $7,000 job. The algorithm degrades confidently, spending more to chase patterns that do not correlate with actual business results.

How Do You Set Up Location-Level Conversion Tracking In Google Ads?

You create separate conversion actions for each location rather than using a single shared conversion action across all markets. Each location gets its own phone call conversion and form submission conversion. You can further segment by intent type, for example separating calls over 60 seconds from shorter calls, or splitting high-intent quote requests from general inquiries. This gives Smart Bidding a granular, location-specific dataset to optimize against. The setup is straightforward technically but becomes extremely time-consuming at scale, which is why it often goes undone in accounts with dozens of locations.

What Is Offline Conversion Import And Why Does It Matter For Service Businesses?

Offline conversion import is the process of sending downstream business outcomes, such as booked appointments, completed jobs, and revenue collected, back into Google Ads tied to the original click via Google's Click ID (GCLID). For service businesses where the real value happens off-platform, this is the most impactful single fix you can make. Without it, Smart Bidding treats every lead equally. With it, the algorithm learns which clicks generate high-value jobs and allocates budget toward finding more of those clicks.

Should Branded And Non-Branded Campaigns Be Separated For Each Location?

Yes. Branded searches convert at much higher rates and lower CPAs because they capture existing demand from people already familiar with your business. When branded and non-branded data are pooled, branded traffic inflates the metrics for certain locations, making it appear they perform better on prospecting terms than they actually do. Separating them gives you an honest view of what it truly costs to acquire a net-new customer in each market and prevents bad budget allocation decisions.

How Long Does It Take Smart Bidding To Restabilize After An Attribution Restructuring?

Typically two to four weeks. When you change conversion actions or introduce offline conversion data, Smart Bidding enters a learning phase and needs to recalibrate on the new signals. During this period, CPAs will fluctuate and volume may be inconsistent. The critical discipline is not to panic and override the algorithm with manual changes during restabilization. Monitoring the data and holding steady allows the system to settle on the cleaner dataset.

Can A Single Account Manager Handle Google Ads For 28 Or More Locations?

In practice, no. Managing location-level conversion actions, verifying offline data imports, separating branded and non-branded budgets, and optimizing campaigns across that many markets exceeds what one person can physically accomplish in a workweek. The structural complexity of multi-location accounts requires either a large team or a system that can execute at scale. groas solves this with a proprietary engine that runs execution 24/7 across all locations, paired with a dedicated senior strategist who owns strategy end-to-end in the DFY service.

How Does groas Handle Multi-Location Franchise Google Ads Management?

groas brings a proprietary engine trained on over $500 billion in profitable ad spend that handles the structural complexity of multi-location attribution, conversion configuration, and bidding optimization around the clock. In the DFY (Done For You) service, a dedicated senior strategist owns the entire account from attribution architecture to campaign optimization to landing pages. There is no onboarding fee, the engagement is month-to-month, and groas earns the next month by performing. For franchise operators where the attribution problem has outgrown what a single agency or in-house team can manage, this combination changes what is possible.

What Is The Difference Between A Conversion And A Booked Job In Google Ads?

A conversion in Google Ads is whatever action you define as valuable: a phone call, a form fill, a page view. A booked job is the actual business outcome that generates revenue. Without offline conversion imports, Google Ads only sees the initial action and has no visibility into whether that action led to real revenue. The gap between these two metrics is where most multi-location service businesses lose money, because Smart Bidding optimizes for the conversion it can see, not the booked job it cannot.

What Should A Multi-Location Business Do First To Fix Google Ads Attribution?

Start with an audit of your conversion actions. If all locations share a single set of conversion actions, that is the first thing to fix. Next, check whether offline conversions from your CRM or scheduling system are being imported back into Google Ads with GCLID matching. Then verify that your call tracking system correctly attributes calls to the right location and campaign. These three steps address the most common and highest-impact attribution failures in multi-location accounts.

Related Posts