Google Ads conversion tracking for landscaping and lawn care companies
Landscaping runs two businesses out of one phone number. What Google Ads adds on top of that is a mechanical requirement: gclid, gbraid and wbraid have to reach the record that holds the money, because Google Ads can only credit a conversion it can tie back to a click it recognizes. This page covers both halves — what a conversion is in landscaping and lawn care companies, and what Google Ads specifically needs to accept it.
Free30 minutesNo obligation
Specific to Google Ads × Landscaping
Google Ads for landscapers: one conversion action per revenue type
On Google Ads, a landscaping company should upload signed maintenance agreements and signed design-build contracts as two separate offline conversion actions, each matched on the gclid, gbraid or wbraid stored on the customer record in the field service system. Calls from call assets need their own action, qualified by duration before they count.
Search is where landscaping intent is most explicit, and the query already tells you which business the click belongs to. "Weekly lawn mowing near me" and "paver patio contractor" are different buyers, so split them into separate campaigns with separate conversion goals. If both campaigns point at one signed-contract action, Smart Bidding will move budget toward mowing terms because they close faster and more often, and the design-build campaign will look broken when it is only starved.
Design-build is where the 90-day import window bites. A homeowner who clicks in January, has a site visit in February and signs once the design is revised in April is close to the limit, and a project that slips past it simply goes unmatched. Upload the booked estimate as a secondary action so that in-window signal still exists, and check how many signed projects fell outside the window before reading project ROAS.
Calls from call assets are counted by Google's forwarding number against a minimum call length you set. Calls from existing customers about a missed mow will pass that threshold easily. Raise it, or replace the call-asset action with the call imported from your call platform once it shows an estimate was booked.
Google Ads · Landscaping · what breaks
Why Google Ads under-reports for landscaping and lawn care companies
- 01
Maintenance and design-build in one conversion action
One is a $200 monthly recurring relationship, the other is a $40,000 project. Averaging them makes both invisible.
- 02
Phone calls counted without qualification
Most landscaping inquiries start with a call, and unfiltered calls include existing customers, suppliers and people outside the service area.
- 03
Seasonality read as performance
Spring converts at multiples of February. Comparing campaigns across that boundary without saying so produces confident wrong conclusions.
- 04
Gclid, gbraid and wbraid never reaches the record
Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.
Google Ads · Landscaping · the fix
What working looks like — Google Ads · Landscaping
Signed contracts as the conversion
From the field service system, split into maintenance and project work.
Contract value, not job value
A maintenance agreement is worth its term, not its first visit.
Calls filtered before they count
By duration and by whether an estimate was actually booked.
Google Ads · Landscaping · architecture
How Google Ads and landscaping and lawn care companies actually connect
- 1
The conversion in landscaping and lawn care companies
Two money events, deliberately separate: a signed maintenance agreement and a signed project. Sharing a conversion action between them is the single most common mistake in this category and it is invisible in a dashboard.
- 2
Google Ads needs a click to match
A click identifier inside the 90-day window, a conversion action name that matches one configured in the account, a conversion timestamp for when the outcome happened, and a value. Read the match rate after uploading — a file can upload perfectly and match nothing.
- 3
The identifier: gclid, gbraid and wbraid
Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.
- 4
Where it gets sent from
The field service system — contracts signed by date, split by type, for the same window.
- 5
Deduplication and window
There's no shared event ID mechanism like Meta's. What matters instead is the counting setting on each conversion action — 'one' for lead-type conversions so a repeat submitter doesn't count three times, 'every' for ecommerce where a second purchase is a second sale. This is the single most common misconfiguration we find in Google Ads accounts. Google's offline import window is 90 days from the click. Anything older can't be matched, and rows outside it fail as unmatched without much explanation. Measure your median click-to-outcome time against that before designing anything.
Google Ads · Landscaping · events
The conversion map for landscaping and lawn care companies
Five events across two revenue types that must not be averaged together.
| Event | What it means here |
|---|---|
| Form submission | Volume signal. A minority of inquiries in a phone-led category. |
| Tracked phone call | The majority channel. Filter by duration and by whether an estimate was booked. |
| Estimate booked | A site visit is scheduled. The first meaningful commitment. |
| Maintenance agreement signed | Recurring money event, valued at monthly fee times average agreement length. |
| Project contract signed | Project money event, valued at the contract amount. |
Google Ads · Landscaping · diagnose
Diagnostic order — Google Ads · Landscaping
- 01
Count records carrying gclid, gbraid and wbraid
- 02
Number-swap script deferred or cached
If it has not run when the caller dials, the call cannot be tied to a session and nothing attributes it.
- 03
Service area boundaries ignored
Leads outside the area are pure cost, and counting them trains the algorithm to find more.
- 04
Estimates that never close counted as conversions
An estimate is not revenue. In design-build the estimate-to-close rate varies enormously by campaign.
- 05
Read the match rate on the upload, not the success message
A conversion action that stops receiving hits is flagged as inactive 30 days later — by which point a month of budget has already run against a missing signal. Check the last-received date on every action monthly; it takes two minutes and it's the cheapest monitoring available.
Google Ads · Landscaping · prove
How it gets proven — Google Ads · Landscaping
Source of truth
The field service system — contracts signed by date, split by type, for the same window
- Signed contracts reconciled per record against what each platform reports, by contract type.
- The share of calls carrying a session measured, since phone is the majority channel.
- The call filter threshold agreed in writing before anything is sent.
- Maintenance value shown as the calculation, using your own average agreement length.
- The match rate on the upload, not the success message read directly, not inferred from an upload succeeding.
Google Ads · Landscaping · free audit
What we check in the free audit
- Count records carrying gclid, gbraid and wbraid
- Number-swap script deferred or cached
- Service area boundaries ignored
- Estimates that never close counted as conversions
- Read the match rate on the upload, not the success message
Checked against
The field service system — contracts signed by date, split by type, for the same window
Free30 minutesNo obligation
Google Ads · Landscaping · when not to buy
When you don't need this — Google Ads · Landscaping
- If Google Ads already reports conversions that reconcile against the field service system within a few percent, this is working and there is nothing to buy.
- Measure identifier coverage yourself first — pull your last hundred records and count how many carry gclid, gbraid and wbraid.
- If you're running Performance Max exclusively and haven't separated your conversion actions, the import will work and the reporting won't tell you much. Worth sorting the account structure first.
Google Ads · Landscaping · what we deliver
What gets built — Google Ads · Landscaping
Click identifier captured, including on the call path
Number swap running before the visitor dials, on every page a paid visitor can land on.
Carried into the field service system
Onto the customer record through the form or the call platform's session.
Signed contract fires the conversion
With the contract type and its full value attached.
Cancellations reversed
Maintenance agreements that lapse are not revenue you should still be reporting.
Dispatch via Google's offline conversion import
Uploaded against the click identifier, either through the Google Ads API or as a file. The upload is the easy part; what limits it is how many of your records carry an identifier at all. Verify the current column format against Google's own template — it has changed before.
Written guarantee
95%+ tracking accuracy
Measured against The field service system — contracts signed by date, split by type, for the same window. Miss it and we keep working at no cost.
From $400 · See packages
FAQ
Google Ads · Landscaping questions, answered
Only once maintenance and project conversions are separate actions with honest values. Otherwise PMax will find the cheapest maintenance lead it can and report that as success.
They count as calls, not as signed work. Treat them as a secondary signal and let the imported signed contract be the primary action that bidding optimizes toward.
No, and this is the main thing to get right here. They differ by two orders of magnitude in value and convert at completely different rates. A shared action means bidding optimizes toward whichever is more frequent, which is always maintenance, and your project pipeline quietly starves.
Monthly fee multiplied by your average agreement length in months, from your own records. Using the first month's fee makes recurring work look worthless against a single project, and your bidding will act on that.
Compare like periods — this March against last March — and say plainly in the report that a month-over-month comparison across a season boundary is not meaningful. It is a reporting discipline rather than a tracking build.
Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.
Uploaded against the click identifier, either through the Google Ads API or as a file. The upload is the easy part; what limits it is how many of your records carry an identifier at all. Verify the current column format against Google's own template — it has changed before.
By reading the match rate on the upload, not the success message and reconciling against The field service system — contracts signed by date, split by type, for the same window. An upload that succeeds is not an upload that matched.
More on Google Ads · Landscaping
- LandscapingConversion tracking for landscaping, measured in signed work
- Google Ads · Home securityGoogle Ads conversion tracking for home security companies
- Google Ads · Pest controlGoogle Ads conversion tracking for pest control companies
RELATED GUIDES
More for landscaping companies: other angles on the same outcome
- LandscapingConversion tracking for landscaping, measured in signed work
- Google Ads · RestorationGoogle Ads conversion tracking for water damage and restoration companies
- Google Ads · Carpet cleaningGoogle Ads conversion tracking for carpet cleaning companies
- Google Ads · Quote → closed jobHow to track quote request to closed job for Google Ads
- Google Ads × Job SystemHow to reconcile Google Ads against your job management system
- LandscapersLocal Services Ads for landscapers: mow requests, spring missed calls and cost per sold project
- ServiceM8 → Google AdsConnecting ServiceM8 to Google Ads
- RealGreen (Service Assistant)Conversion tracking for RealGreen Service Assistant
Free · 30 min
Get Google Ads reporting what landscaping and lawn care companies actually earn
Free30 minutesNo obligation
