In "campaign_simulation.target_cpa_point_list", why is "cost_micros" not equal to "biddable_conversions * current_cpa * target_cpa_scaling_modifier". Which one should I trust?

69 views
Skip to first unread message

Julien Stoeffler

unread,
Oct 14, 2021, 7:28:24 AM10/14/21
to AdWords API and Google Ads API Forum
So I'm tryig to estimate the cost when incresing/decreasing the Target CPA using the campaign_simulation.target_cpa_point_list feature.

I am confused because from what I understand, the cost of the campaign is generally equal to Target CPA * Conversion Count (that's what I see in my reports)

But in the simulation results, the cost_micros field given by the API is very different to what I calculate, using my_initial_cpa * target_cpa_scaling_modifier * biddable_conversions

(my_initial_cpa is the Target CPA at the time I query the simulation)
(target_cpa_scaling_modifier and biddable_conversions are fields of the points of the point list)

Here's an example with a campaign running in production:

Initial target CPA is 468750 micros

-------------------

bid simulation #0

target_cpa_scaling_modifier: 0.5 | biddable_conversions: 51.19226837158203 | cost_micros: 4620000

Modified cpa = 468750 * 0.5 = 234375

Calculated cost = 234375 * 51.19226837158203 = 11998187.899589539 != 4620000

-------------------

bid simulation #1

target_cpa_scaling_modifier: 0.75 | biddable_conversions: 65.18894958496094 | cost_micros: 8910000

Modified cpa = 468750 * 0.75 = 351562.5

Calculated cost = 351562.5 * 65.18894958496094 = 22917990.08846283 != 8910000

-------------------

bid simulation #2

target_cpa_scaling_modifier: 0.9 | biddable_conversions: 72.57461547851562 | cost_micros: 12930000

Modified cpa = 468750 * 0.9 = 421875

Calculated cost = 421875 * 72.57461547851562 = 30617415.90499878 != 12930000

-------------------

bid simulation #3

target_cpa_scaling_modifier: 1 | biddable_conversions: 75.99127960205078 | cost_micros: 14790000

Modified cpa = 468750 * 1 = 468750

Calculated cost = 468750 * 75.99127960205078 = 35620912.3134613 != 14790000

-------------------

bid simulation #4

target_cpa_scaling_modifier: 1.1 | biddable_conversions: 77.61875915527344 | cost_micros: 16280000

Modified cpa = 468750 * 1.1 = 515625.00000000006

Calculated cost = 515625.00000000006 * 77.61875915527344 = 40022172.68943787 != 16280000

-------------------

bid simulation #5

target_cpa_scaling_modifier: 1.25 | biddable_conversions: 84.133544921875 | cost_micros: 22250000

Modified cpa = 468750 * 1.25 = 585937.5

Calculated cost = 585937.5 * 84.133544921875 = 49296998.97766113 != 22250000

-------------------

bid simulation #6

target_cpa_scaling_modifier: 1.5 | biddable_conversions: 94.05055236816406 | cost_micros: 31340000

Modified cpa = 468750 * 1.5 = 703125

Calculated cost = 703125 * 94.05055236816406 = 66129294.63386536 != 31340000

-------------------

bid simulation #7

target_cpa_scaling_modifier: 2 | biddable_conversions: 111.24790954589844 | cost_micros: 47110000

Modified cpa = 468750 * 2 = 937500

Calculated cost = 937500 * 111.24790954589844 = 104294915.19927979 != 47110000

-------------------

bid simulation #8

target_cpa_scaling_modifier: 3 | biddable_conversions: 127.6584243774414 | cost_micros: 74340000

Modified cpa = 468750 * 3 = 1406250

Calculated cost = 1406250 * 127.6584243774414 = 179519659.28077698 != 74340000

-------------------

bid simulation #9

target_cpa_scaling_modifier: 4 | biddable_conversions: 130.610595703125 | cost_micros: 100050000

Modified cpa = 468750 * 4 = 1875000

Calculated cost = 1875000 * 130.610595703125 = 244894866.94335938 != 100050000

-----------

Details:

I'm using modification_method = SCALING

My query:

SELECT
campaign_simulation.target_cpa_point_list.points
FROM
campaign_simulation
WHERE
campaign_simulation.campaign_id = ${campaignId}
AND
campaign_simulation.modification_method = SCALING


Google Ads API Forum Advisor

unread,
Oct 15, 2021, 9:13:11 AM10/15/21
to jul...@unixal.com, adwor...@googlegroups.com
Hi Julien,

If you get the same numbers in the UI than you can ask product support how simulations work. The API only gives access to what the UI offers.

With that being said, in product support guide Estimate your results with bid, budget and target simulators I noticed "Because campaign-level bid changes can increase traffic significantly, we'll tell you whether you need to increase your budget and, if so, what to change it to." It makes sense that the simulators aren't bound by budget, they can suggest a budget. If your real world results were lower it could be because your budget was lower.

If you find a discrepancy from what appears in the UI, could you privately send us a screenshot of the UI along with an Ads API request and response log of communications that doesn't match the UI? 

The request and response appears similar to the JSON Mappings in our REST documentation. Our client libraries have loggers with logging instructions, to see these instructions you can click on the client library you use in the sidebar of our client library guide and click on "Logging". When the correct logger is set to 'DEBUG' then the correct logs are generated.

Regards,

Google Logo
Aryeh Baker
Google Ads API Team
 


ref:_00D1U1174p._5004Q2PJXZ9:ref

Julien Stoeffler

unread,
Oct 17, 2021, 5:50:08 PM10/17/21
to AdWords API and Google Ads API Forum
Hi Aryeh,

Thank you for your answer. I have checked and the numbers returned by the API match the UI–i.e.: there is no discrepancy.
I will therefore ask product support, thank you for pointing me there.

Best,

Julien

Reply all
Reply to author
Forward
0 new messages