How to get New Customer vs Returning customer conversion analytics
I’m trying to figure out how to optimize Google Ads for “New Customer” acquisition. Or at least report on it.
We got a Shopify store with dozens transactions per day. Some days we have 50% return customer rate, other days we have 10% return customer rate and I have no idea which return customers are Google ads unless I dig into at individual customer analytics on a per customer basis, which isn’t really efficient use of time.
Client wants to see Google Ads conversion breakdown of “New Customer” specifically and optimize for that. I told him that’s not possible right now with existing
Purchase
Conversion configuration but I’ll look into it.Does anyone know how to report Source Google/CPC based on New Customer vs. Existing customer breakdown in Shopify and/or Analytics?
We got
Purchase
Customer and Abandon Cart Audience lists and include / exclude accordingly depending on the campaign.I am currently optimizing for “
Purchase
Conversion” which is doing fine CPA but would really like to figure out how to optimize for “New Customers” on Shopping Campaign and Search Campaign.Has anyone here encountered this situation before? How did you handle it?
Thank you for reading!
The short answer is:
Getting a precise “New Customer” vs.”Returning Customer” breakdown directly in Google Ads for optimization requires custom work because the standard Google Ads conversion tracking (purchase
) and Google Analytics do not inherently distinguish a customer’s first purchase from subsequent ones at the moment of conversion.
The most robust and relatively inexpensive solution for real-time reporting and optimization is to implement a server-side tagging setup that dynamically checks the customer status from Shopify and passes this information to Google Ads as a distinct custom conversion or a conversion value adjustment.
You can achieve this using a combination of Shopify webhooks for real-time customer status, a server-side tagging environment like Stape or Google Cloud Platform, and Google Tag Manager to manage the data flow, eventually leveraging the Google Ads API for sophisticated reporting or bidding adjustments, or simply using a custom conversion action in the Google Ads UI.
The long answer is:
Your client’s request is a common but challenging one, and you’re right that the default setup isn’t adequate.
The core problem is that when a purchase conversion fires, whether via the standard Shopify-Google Ads integration or even the standard Google Analytics setup, it sends a generic purchase
event.
This event doesn’t carry the crucial “customer status” flag (New or Returning) that Google Ads needs for reporting and optimization.
To fix this, you need a system that can reliably identify the customer status before the conversion event is processed and then use that status to either create a unique conversion action in Google Ads or modify the value of the standard purchase
conversion.
The best approach is a server-side solution because it’s more reliable, avoids browser-level tracking issues, and offers more control over the data payload.
Here’s how to structure the solution:
Start with the data source, which is Shopify.
You can use a Shopify webhook or the Shopify API to get real-time or near-real-time data on every purchase.
Crucially, you need to query the customer’s order history via the Shopify API to determine if the current purchase is their first.
This status (New Customer or Returning Customer) should then be sent to your server-side tagging environment, such as Stape, or a custom setup on Google Cloud Platform.
Stape is often preferred for its simplicity and lower cost compared to building everything on GCP from scratch.
Within the server-side environment, you can use Google Tag Manager (GTM) to process this customer status data.
Instead of sending one generic purchase
event, you can now trigger a custom event, perhaps named
, specifically for first-time buyers.new_customer_purchase
This custom event is then configured in Google Ads as its own conversion action.
Now you have a distinct conversion action you can use for reporting and, more importantly, for bidding optimization, such as using a target CPA or target ROAS strategy specifically on your
conversion.new_customer_purchase
Alternatively, you could pass the customer status back to Google Ads as an enhanced conversion value parameter, giving new customer purchases a higher relative value than returning customer purchases, which allows you to bid more aggressively for them within your existing purchase
conversion action.
For reporting, once you have these custom conversions firing, you can pull the data directly into a visualization tool like Looker Studio.
This is where the APIs come in.
While basic reporting can be done in the Google Ads UI, automating the process and combining it with other data sources is best done via APIs.
The Google Ads API allows you to pull the precise conversion data for your
action, broken down by campaign, ad group, etc.new_customer_purchase
The Google Analytics Data API can supplement this by providing deeper behavioral context.
Finally, using a Looker Studio API, you can automate the creation of the client-facing dashboard, presenting the “New Customer” acquisition CPA and volume in a clear, concise report, which is exactly what your client wants.
This API-driven approach is an excellent and cost-effective solution because the server-side tagging and API calls are relatively low-cost compared to manual analysis or dedicated, high-priced tracking software, offering a scalable and reliable data stream for optimization.