Reach estimate v0-v1 result differences

reach-estimation

#1

Hi! I have made the same request in v0 and in v1, and I get different results! I.e. Different infinit_bid_count (which in v1 doesn’t depend on bid and budget):

v0 request:

GET https://ads-api.twitter.com/0/accounts/18ce53z7sd8/reach_estimate, params:
array (
  'locations' => '96683cc9126741d1',
  'interests' => '20039',
  'objective' => 'TWEET_ENGAGEMENTS',
  'product_type' => 'PROMOTED_TWEETS',
)

v0 response:

stdClass::__set_state(array(
   'data_type' => 'reach_estimate',
   'data' => 
  stdClass::__set_state(array(
     'count' => 0,
     'infinite_bid_count' => 542306,
  )),
   'request' => 
  stdClass::__set_state(array(
     'params' => 
    stdClass::__set_state(array(
       'locations' => 
      array (
        0 => '96683cc9126741d1',
      ),
       'product_type' => 'PROMOTED_TWEETS',
       'objective' => 'TWEET_ENGAGEMENTS',
       'account_id' => '18ce53z7sd8',
       'interests' => 
      array (
        0 => '20039',
      ),
       'followers_of_users' => NULL,
    )),
  )),
))

v1 request:

GET https://ads-api.twitter.com/0/accounts/18ce53z7sd8/reach_estimate, params:
array (
  'locations' => '96683cc9126741d1',
  'interests' => '20039',
  'objective' => 'TWEET_ENGAGEMENTS',
  'product_type' => 'PROMOTED_TWEETS',
  'bid_amount_local_micro' => 1500000,
  'campaign_daily_budget_amount_local_micro' => 55000000,
  'currency' => 'USD',
)

v1 response:

stdClass::__set_state(array(
   'data_type' => 'reach_estimate',
   'data' => 
  stdClass::__set_state(array(
     'impressions' => 
    stdClass::__set_state(array(
       'min' => 4040,
       'max' => 6060,
    )),
     'count' => 
    stdClass::__set_state(array(
       'min' => 3483,
       'max' => 5225,
    )),
     'infinite_bid_count' => 
    stdClass::__set_state(array(
       'min' => 1488,
       'max' => 2233,
    )),
     'engagements' => 
    stdClass::__set_state(array(
       'min' => 99,
       'max' => 148,
    )),
     'estimated_daily_spend_local_micro' => 
    stdClass::__set_state(array(
       'min' => 44000000,
       'max' => 66000000,
    )),
  )),
   'request' => 
  stdClass::__set_state(array(
     'params' => 
    stdClass::__set_state(array(
       'locations' => 
      array (
        0 => '96683cc9126741d1',
      ),
       'bid_amount_local_micro' => 1500000,
       'product_type' => 'PROMOTED_TWEETS',
       'objective' => 'TWEET_ENGAGEMENTS',
       'account_id' => '18ce53z7sd8',
       'interests' => 
      array (
        0 => '20039',
      ),
       'currency' => 'USD',
       'followers_of_users' => NULL,
       'campaign_daily_budget_amount_local_micro' => 55000000,
    )),
  )),
))

Same country, same interest, different infinit_bid_count: in v0 it is 542,306, in v1 it is 2,233 (the max) - they don’t even come close.

Another issue in v1 is that if I make the same request but twice, once with gender 1 and once with gender 2, I get two numbers which added do not make the total, whereas in v0 the sum would be close to the total.

v1 + gender 1:
infinite_bid_count max = 2,250 (in v0 this is 397,681)

v1 + gender 2:
infinite_bid_count max = 2,179 (in v0 this is 129,345)

and v1 total infinite_bid_count max is 2,233, which is nothing like 2,250 + 2,179 = 4,429. In v0 the total is 542,306, to which the sum (397,681 + 129,345 = 527,026) is close.

I assume infinite_bid_count from v0 should be close to infinite_bid_count max from v1, so this seems to be a bug.

Thank you!