Overview
In ServiceTitan Max, Google Ads doesn't operate in isolation. The moment you connect your Google Ads account to ServiceTitan, every inbound call routed through Contact Center Pro, every job booked from an online campaign, and every estimate your technicians close in the field starts feeding data back into Google's bidding engine. The result is a closed-loop demand capture system — ads drive calls, calls get booked, jobs produce revenue, and that revenue signal refines your search for the next high value lead.
This article walks Marketing Managers through what Google Ads integration is, how to create and prepare a Google Ads account, how to connect it to ServiceTitan, and how the integration connects to the rest of your ServiceTitan Max workflow.
Who uses this feature
Marketing managers, business owners, and other marketers on your team
Primarily benefits Residential Service & Replacement and Commercial Service & Replacement business types
Applies to all trades
Feature configuration
Google Ads integration is part of Marketing and is included in your ServiceTitan Max subscription.
The Google Ads integration is not complete until Google Analytics and Dynamic Call Tracking using DNI are also configured. All three must be set up for full attribution to work.
Account configuration is required to activate this feature. Contact Technical Support for assistance.
Where Google Ads integration fits in the ServiceTitan Max workflow
In ServiceTitan Max, the Google Ads integration sits at the center of the Demand Capture & Online Booking workflow:
Marketing campaigns and Google Ads generate inbound demand. Tracking numbers on every campaign tie each response — phone call, form fill, or online booking — back to the specific ad that drove it.
Contact Center routes inbound calls to your CSR team, who book the job in ServiceTitan Core. Online bookings arrive through Scheduling Pro's booking widget.
The moment a job is booked, ServiceTitan sends a conversion signal to Google Ads using the Google Click ID (GCLID) captured when the customer first clicked your ad. Google learns which search terms and audiences are producing real booked jobs, not just clicks.
Field and ServiceTitan Core close the job. Final invoiced revenue flows back to Google Ads as the actual conversion value, continuously improving Google's bidding model.
Every signal that improves your Google Ads performance — calls, bookings, revenue — comes from the ServiceTitan Max suite working together.
Things to know
The Google Ads integration isn't complete until Google Analytics Integration and Dynamic Call Tracking using DNI are also configured.
After Google Ads is integrated, ServiceTitan creates a corresponding campaign for each Google Ads campaign using the exact same name.
Google Ads imports conversions to the date of the ad impression. ServiceTitan shows the data for the date of the transaction. For a list of events pushed to Google, see Events pushed to Google below.
When someone visits your website from an ad click, the URL displays a Google Click ID (GCLID). When the visitor calls a DNI number, ServiceTitan stores that GCLID and assigns it to the caller. If that call is classified as a Lead, ServiceTitan sends it as a conversion into Google Ads using the GCLID.
For example: if someone clicks an ad, visits your website, calls the tracking number, and that call ends as Booked or Unbooked, ServiceTitan posts the conversion. If the call ends as Excused (outside your service area), it won't be sent as a conversion.
The Google Ads integration classifies the following events as Leads:
Booked phone calls
Unbooked phone calls over 60 seconds that aren't excused
Excused calls where the excused reason is set to "Is Lead"
Abandoned or excused calls where the customer booked a job within seven days of the call
Lead forms received from the API or Zapier
Bookings received from the API or Zapier
Manual Calls
When the first conversion happens, ServiceTitan automatically creates a Phone Call Conversion Action and starts sending conversions to it. No action is needed on the Google Ads side to receive conversions. To avoid duplicate counts, conversions aren't sent for Call Extensions — Google tracks those with its default Call from Ads conversion action.
You can connect and monitor multiple Google Ads accounts in Marketing Pro. If you manage multiple brands or business units, you can link each to a separate Google Ads account.
Before you begin: Set up your Google Ads account
If your business doesn't have a Google Ads account yet, you'll need to create one before connecting it to ServiceTitan.
Step 1: Create a Google Ads account
Go to ads.google.com and click Start now.
Sign in with the Google account you want to use to manage ads for your business. If you don't have a Google account, create one first.
Follow the onboarding flow to create your account. When prompted:
Enter your business name and website URL.
Select your billing country and time zone — these can't be changed after account creation.
Enter your billing information to activate the account.
Tip: Use a Google account that belongs to your business, not a personal Gmail. This makes it easier to add agency partners or additional team members as managers later.
Step 2: Set up your Google Ads account structure before connecting to ServiceTitan
Before linking to ServiceTitan, take a few minutes to set up a clean account structure. This makes campaign mapping much easier.
Use clear, descriptive campaign names. After you connect to ServiceTitan, each Google Ads campaign is automatically mapped to a ServiceTitan campaign with the same name. Names like "HVAC - Residential - Brand" or "Plumbing - Emergency Service" are far easier to manage in Marketing Analytics than generic names like "Campaign 1."
If you manage multiple brands or business types, use a naming prefix. For example, start all campaigns for Brand A with "A -" and all campaigns for Brand B with "B -." This lets you sort alphabetically in ServiceTitan to track each business's performance separately.
Pause or archive any test campaigns before connecting. ServiceTitan shows active campaigns — those with an impression in the last year or created in the last 30 days. A clean account prevents clutter in your Marketing dashboard.
Step 3: Confirm your business website has Google tag installed
The Google Ads integration relies on Dynamic Number Insertion (DNI) to capture Google Click IDs (GCLIDs) when visitors arrive from ad clicks. For this to work:
Your website needs the Google tag (gtag.js) installed — this is typically set up during Google Analytics integration.
The DNI script must be deployed on your site so that phone numbers swap dynamically for visitors who arrive from Google Ads.
If you're not sure whether these are in place, coordinate with your web developer or ServiceTitan Technical Support before proceeding with the integration steps below.
Set up Google Ads Integration with DNI
Step 1: Integrate Google Ads data to ServiceTitan
You can connect Google Ads to ServiceTitan in two ways:
From Analytics:
Go to the top toolbar and click Marketing.
On the Marketing Overview screen, click Connect Now.
From Settings:
Go to the top toolbar and click Settings > Integrations > Marketing Integrations.
Next to Google Ads, click Configure.
Then continue from either path:
On the Google Ads Integration screen that opens, click Sign in.
Choose your Google account to sign in with, then click Allow. This gives ServiceTitan access to your Google account.
Select your Google Ads account, then click Link.
Note: ServiceTitan connects to all Google Ads accounts connected to your Google ID. If you manage multiple accounts (for example, through a Google Ads manager account), all linked accounts will be available to select.
When finished, click Next.
Step 2: Map your Google Ads campaigns
To keep your data accurate, map each Google Ads campaign to one ServiceTitan campaign.
In the Map Google Ads campaigns section, click Expand.
Auto-Map is enabled by default. With Auto-Map on, every time a new campaign is created in Google Ads, a new ServiceTitan campaign with the same name is automatically created and mapped.
Note: ServiceTitan only shows active campaigns — those with an impression in the last year, or created in the last 30 days.
If you share one Google Ads account across multiple ServiceTitan accounts, turn off Auto-Map and manually map campaigns. To manually map: go to Settings > Integrations > Marketing Integrations, edit the Google Ads integration, click Edit next to Map Google Ads campaigns, then select More > Map to existing campaign next to any ServiceTitan campaign.
When finished, click Finish.
Click View Ads Performance to go to the Ads dashboard.
Note: New campaigns created after the first manual map are automatically mapped to a new ServiceTitan campaign by the same name. To rename a campaign, go to Settings > Operations > Campaigns. Renaming a campaign in ServiceTitan won't be overwritten by Google Ads.
Edit Google Ads Integration
Go to the top toolbar and click Settings > Integrations > Marketing Integrations.
Next to Google Ads, click Configure.
On the Google Ads Integration screen, click Edit.
Update configuration details as needed.
Remove Google Ads Integration
Go to the top toolbar and click Settings > Integrations > Marketing Integrations.
Next to Google Ads, click Configure.
On the Google Ads Integration screen, click Edit.
Click Delete and confirm the Google account removal.
Events pushed to Google
After you've set up Marketing Ads features and an eligible event is generated in ServiceTitan, the following conversions are pushed to Google:
Note: Each event is set as a primary or secondary conversion action. For more, see About primary and secondary conversion actions on Google's support site.
Event | Description |
|---|---|
ServiceTitan Inbound Call - Website | All inbound calls tracked through Dynamic Call Tracking (DNI) on a website. Set as a secondary conversion action by default. |
ServiceTitan Inbound Call - Extension | All inbound calls tracked through call extension phone numbers. ServiceTitan phone numbers must be added to both the Google Ads campaigns and their linked ServiceTitan campaigns. Set as a secondary conversion action by default. |
ServiceTitan Calls Conversion Action | All lead calls tracked through DNI on a website. Lead calls are calls longer than 60 seconds that are not excused. Set as a primary conversion action by default. |
ServiceTitan Lead Call - Extension | All lead calls tracked through call extension phone numbers. Calls longer than 60 seconds that are not excused. ServiceTitan phone numbers must be added to both Google Ads campaigns and their linked ServiceTitan campaigns. Set as a secondary conversion action by default. |
ServiceTitan Booked Job - Originated from Website | All booked jobs where the last touchpoint before booking was tracked through DNI on a website. Set as a secondary conversion action by default. |
ServiceTitan Booked Job - Originated from Call Extension | All booked jobs where the last touchpoint before booking was tracked through a call extension phone number. Set as a secondary conversion action by default. |
ServiceTitan Integrated Lead Forms | All leads with a GCLID populated through the "Marketing Ads Lead Form API endpoint" or "Create Lead Attribution Form" Zapier action. Set as a secondary conversion action by default. |
ServiceTitan Integrated Bookings | All bookings with a GCLID populated through the "Marketing WebBookingAttributions API endpoint" or "Create Lead Attribution Booking" Zapier action. Set as a secondary conversion action by default. |
Additional events when using Ads Optimizer
The following events are also pushed to Google when using Ads Optimizer:
Event | Description |
|---|---|
ServiceTitan Completed Jobs Conversion Action | All completed jobs where the last touchpoint before booking was tracked through DNI on a website. Set as a primary conversion action by default. Total job revenue is sent as the conversion value. |
ServiceTitan Call Extension Completed Job Conversions | All completed jobs where the last touchpoint was tracked through a call extension phone number. Set as a primary conversion action by default. Total job revenue is sent as the conversion value. |
ServiceTitan JVP (Originated from Website) | All booked jobs where the last touchpoint was tracked through DNI on a website. When Job Value Predictor (JVP) is activated for a campaign, this becomes a primary conversion action for those jobs. The predicted revenue at time of booking is sent as the conversion value — enabling value-based bidding without waiting for job completion. |
ServiceTitan JVP (Originated from Call Extension) | All booked jobs where the last touchpoint was tracked through a call extension. When JVP is activated for a campaign, this becomes a primary conversion action for those jobs. The predicted revenue is sent as the conversion value. |
How Google Ads integration connects to the rest of ServiceTitan Max
The Google Ads integration is the foundation that makes the Demand Capture & Online Booking workflow measurable across the full ServiceTitan Max suite. Here's how each workflow connects:
Marketing is where your Google Ads campaigns live in ServiceTitan. Campaign Manager maps your Google Ads campaigns to ServiceTitan campaigns for attribution. Marketing Analytics shows leads, calls, booked jobs, sold jobs, and revenue — all attributed back to the campaign and channel that drove them. The Ads Optimizer dashboard shows campaign-level ROAS, profit, and conversion performance in one place.
Contact Center handles every inbound call that your Google Ads generate. When a customer clicks an ad, lands on your website, and calls the DNI tracking number, that call routes through Contact Center to your CSR team. The GCLID captured from the ad click is assigned to the call record, so when the CSR books the job, the conversion posts to Google automatically. The tracking number on each Marketing campaign is a Contact Center number — which means call attribution and CSR call handling happen from the same system, with no manual reconciliation.
Scheduling handles online bookings that come in from your ads. When a customer clicks your ad and fills out your Scheduling booking widget instead of calling, the GCLID from that click can be attributed to the booking through the Marketing Ads integration API. These bookings appear in Marketing Analytics alongside call-attributed jobs.
Dispatch connects to Google Ads through Ads Optimizer's Capacity Awareness feature. When your ads are generating more demand than your team can handle, Capacity Awareness monitors your Dispatch Pro dispatch boards and sends you an alert to pull back spend. When boards are empty, it alerts you to push spend. Your ad budget and your technician capacity stay in sync automatically.
Field connects to Google Ads through Ads Optimizer's revenue signal chain. When a technician presents and closes an estimate in the field using Field Pro, that revenue flows into Google Ads as the completed job conversion value. Over time, Google's bidding model learns which searches and audiences produce high-revenue work, not just any work.
Best practices
Complete all three integrations before measuring performance. Google Ads, Google Analytics, and Dynamic Call Tracking using DNI must all be configured for attribution to work end-to-end. Setting up Google Ads without DNI means call-based conversions won't post. Setting up without Google Analytics means your website traffic data won't flow into the attribution model.
Use clear campaign names before you connect. Auto-Map creates ServiceTitan campaigns with the same name as your Google Ads campaigns. Clean, descriptive names like "HVAC - Residential - Non-Brand" are much easier to work with in Marketing Analytics than generic or test names.
Confirm your DNI setup with a test call before going live. After connecting, place a test call from a browser where you arrived via a simulated ad click. Verify the call appears in Marketing with a GCLID attached. If no GCLID is captured, check your website's DNI script deployment before running live campaigns.
Coordinate with your CSR team when campaigns go live. When your Google Ads generate calls, those calls route through Contact Center Pro. Give your CSRs a heads-up so they're staffed for the incoming volume. A well-configured Google Ads integration means more inbound calls — your contact center needs to be ready.
Let Ads Optimizer handle bidding signals once conversion volume is established. After the integration has been running for several weeks and you have consistent conversion data flowing, activate Ads Optimizer's Job Value Predictor. Wait at least three weeks after activating JVP before measuring performance changes — Google Ads needs time to learn from the new revenue signals.
FAQ
Can I use Marketing Ads with my existing Google Ads account? Yes. You can link your existing Google Ads account to Marketing Ads. No campaigns need to be paused or re-created — ServiceTitan maps to your existing campaigns automatically.
Can I link multiple Google Ads accounts to one ServiceTitan account? Yes. You can connect and monitor multiple Google Ads accounts in Marketing Pro. For multi-brand or multi-business-unit setups, use a clear naming convention so campaigns are easy to sort and compare in Marketing Analytics.
Should I disable my existing conversion tracking in Google Ads after integrating? You can choose to keep or disable your non-ServiceTitan conversion actions in Google Ads. ServiceTitan does not edit or affect your existing Google Ads conversions — the two can coexist. If you're activating Ads Optimizer and Job Value Predictor, work with your agency partner or ads team before making changes to conversion tracking, since bidding strategy changes interact with conversion action settings.
Can I monitor two separate Google Ads accounts on the dashboard, or only one? You can connect and monitor multiple Google Ads accounts in Marketing Pro.