Many times, we see that the Campaign A is doing well as its CPA is under X$.
But when we break it down by a dimension X, we find that Campaign A – > Dimension X has CPA higher than X$.
When I check overall Campaign A stats, the CPA is well below 150$.
But on applying dimension Campaign A --> Search Partners, I see the different scenario as my CPA now goes up to 250$.
Overall Stats: Campaign A --> Cost: 15000$, Conversions: 120, CPA: 125$
BreakDown Stats: Campaign A --> Google Search: Cost: 10000$ ,Conversions: 100, CPA: 100$
Campaign A --> Search Partners: Cost:5000$, Conversions : 20, CPA: 250$
Well these hidden variables like search partners, devices, city etc reveal a different scenario when compared to aggregate data.
But how will you know which hidden variable is exactly the main culprit causing High CPAs?
Worry not, Just Copy & Run the script below. It will output your AdWords data in spreadsheet & will scan the CPAs across
- Campaigns
- Campaign -> AdGroups
- Campaigns -> Devices
- Campaigns -> AdNetworks
- Campaign -> AdGroups -> Devices
- Country -> City
- Campaign -> City
Adwords CPA Scanner – Setup Process
- Copy & Preview the script in Adwords Script Editor.
- Authorize & Open the spreadsheet URL.
- By default, you’ll get ‘Last 7 days’ report for the first time on running the script. For Custom Date Range, you can input the date range & re-run the script. (Date Format: yyyy/MM/dd)
Adwords CPA Scanner Spreadsheet
- There are 3 sheets, namely
- CPA-Campaigns
- CPA-AdGroups
- CPA-City
- Each sheet contains a CPA filter. Now here, CPA is defined differently.
So if you enter CPA as 200$, it will filter the reports for the (CPA > 200$) or (Cost > 200$ AND Conversions=0)
This is done because sometimes while filtering only CPAs, we ignore the dimensions where cost has exceeded our CPA limit with zero conversions. This is equally alarming as high CPAs.
CPA-Campaigns Sheet
- It contains 3 reports
- Campaign – CPA Scanner Report
- Campaign – > Device – CPA Scanner
- Campaign – > AdNetworks – CPA Scanner
- Enter the value in ‘Enter CPA’ to filter the reports having CPA > Input value.
Campaign – CPA Scanner Report
Campaign – > Device – CPA Scanner
Campaign – > AdNetworks – CPA Scanner
CPA-AdGroups Sheet
- It contains 2 reports
- Campaign -> AdGroup – CPA Scanner Report
- Campaign -> AdGroup -> Device – CPA Scanner
- Enter the value in ‘Enter CPA’ to filter the reports having CPA > Input value.
Campaign -> AdGroup – CPA Scanner Report
Campaign -> AdGroup -> Device – CPA Scanner
CPA-City Sheet
- It contains 2 reports
- Country -> City – CPA Scanner Report
- Campaign -> City – CPA Scanner Report
- Enter the value in ‘Enter CPA’ to filter the reports having CPA > Input value.
Country -> City – CPA Scanner Report
Campaign -> City – CPA Scanner Report
Adwords CPA Scanner – Script Scheduling
- You can input the CPA limit & date range as
- End date: Today()
- Start Date: Today()-1
& schedule the script daily to get daily reports of high CPAs.
- Also, you can try
- End date: Today()
- Start Date: Today()-7
& schedule the script daily to get last 7 days data of high CPAs.
- You can experiment with date range & script schedule feature as per your needs.
SUMMARY
- With just a single CPA input, you can check your CPAs across 7 reports. (4 dimensions)
- You can definitely spot at least one the dimensions with High CPA & action on it asap.
- Try scheduling the script & input dynamic date range for automation.
- I have included only some of the dimensions for checking high CPAs. But obviously, there are more like placements, display ads, landing pages, etc. Do check them if you don’t spot it here.
How do I change the date easily? For example: unlimited or last 90 days. I’m not really good with code 🙂
Thanks!
Hi Glenn,
For now, I guess you’ll have to manually enter date range (yyyy/mm/dd) in spreadsheet & re-run the script. For Eg: Start Date: 2017/02/18 & End Date: 2017/05/18 (last 3 months) or Enter longer date range (2014 to 2017) for unlimited. Thanks for feedback though!!! 🙂
Worked like a charm. Thanks! Great info
Hi Ritwik
where should we put our spreadsheet URL
Hey Sameer,
Just paste it in new tab in same browser. You’ll get the spreadsheet.
Hello Ritwik, Where I can learn Ad-word scripting. i have checked online but they are offering basic script learning.
Thank you! Very useful script.
Hi Ritwik thank you for this post! I tried to run your screen but this error keeps popping up no matter how many different ways I try. How should I insert the values?
“Missing ) after argument list. (line 69)”
Hi Vasco, I rechecked & that worked fine. It might be due to copy pasting error. Try copying from here: http://bit.ly/2vPt6KU
Hi Ritwik, thank you very much, it is working wonders now 🙂