We are releasing an update to the Ads API that introduces a new way for advertisers to optimize their App Install campaigns.

Introducing App Purchase Optimization

On August 1, we are introducing App Purchase Optimization (APP_PURCHASES) as a supported value for the goal parameter within the Line Items endpoint for App Installs campaigns. This new goal allows advertisers to optimize for cost-efficient, lower funnel outcomes by delivering their ads to people most likely to make a purchase.

This launch represents our first step towards enabling app advertisers to optimize for ROI-based goals and will help drive overall purchases advertisers get from Twitter. Ultimately, we view this work as a way to begin to increase revenue for our advertising partners and help grow their businesses.

*Source: Data from internal Twitter testing in Q2 2022 comparing campaigns optimizing for Purchases vs. campaigns optimizing for Installs.

Campaign Setup Requirements:

At launch, App Purchase Optimization will require the specific campaign settings detailed below. Over time, these requirements may loosen as the product develops.

  • objective must be set to APP_INSTALLS
  • bid_strategy must be set to AUTO
  • pay_by must be set to IMPRESSIONS
  • android_app_store_identifier must be set
  • placements must be set to ALL_ON_TWITTER, TWITTER_PROFILE, TWITTER_REPLIES, TWITTER_SEARCH, or TWITTER_TIMELINE

Key notes:

  • This change applies to values associated with the goal parameter and is applied at the Line Item level.

  • With this launch, the goal parameter for App Installs campaigns will support APP_CLICKS, APP_INSTALLS, and APP_PURCHASES.

  • At launch, App Purchase Optimization will only be available for Android apps. Support for iOS apps will be enabled in future iterations.

  • App Purchase Optimization will not support Twitter Audience Platform placements. Advertisers must run on Twitter owned & operated placements.

App Purchase Optimization is concurrently launching within Twitter Ads Manager, so we recommend that developers add support for the new APP_PURCHASES value to unlock this new capability for advertisers.

Example Request using APP_PURCHASES:


twurl -H ads-api.twitter.com -X POST '/10/accounts/18ce55hp1xi/line_items' -d "campaign_id=hysnr&product_type=PROMOTED_TWEETS&placements=TIMELINES&objective=APP_INSTALLS&goal=APP_PURCHASES&bid_strategy=AUTO&android_app_store_identifier=com.twitter.android&entity_status=DRAFT&start_time=2022-10-28T00:00:00Z" 

{
  "request": {
    "params": {
      "placements": [
        "TWITTER_TIMELINE"
      ],
      "start_time": "2022-10-28T00:00:00Z",
      "goal": "APP_PURCHASES",
      "product_type": "PROMOTED_TWEETS",
      "bid_strategy": "AUTO",
      "objective": "APP_INSTALLS",
      "entity_status": "DRAFT",
      "account_id": "18ce55hp1xi",
      "campaign_id": "hysnr"
    }
  },
  "data": {
    "advertiser_user_id": 3298994005,
    "name": null,
    "placements": [
      "TWITTER_TIMELINE"
    ],
    "start_time": "2022-10-28T00:00:00Z",
    "bid_amount_local_micro": null,
    "advertiser_domain": null,
    "target_cpa_local_micro": null,
    "raw_categories": [],
    "primary_web_event_tag": null,
    "goal": "APP_PURCHASES",
    "daily_budget_amount_local_micro": null,
    "product_type": "PROMOTED_TWEETS",
    "end_time": null,
    "bid_strategy": "AUTO",
    "duration_in_days": null,
    "standard_delivery": null,
    "total_budget_amount_local_micro": null,
    "objective": "APP_INSTALLS",
    "id": "mnpvp",
    "entity_status": "DRAFT",
    "automatic_tweet_promotion": null,
    "product_set_id": null,
    "frequency_cap": null,
    "android_app_store_identifier": null,
    "categories": [],
    "currency": "USD",
    "pay_by": "IMPRESSION",
    "catalog_id": null,
    "created_at": "2022-06-14T22:36:35Z",
    "ios_app_store_identifier": null,
    "updated_at": "2022-06-14T22:36:35Z",
    "campaign_id": "hysnr",
    "creative_source": "MANUAL",
    "deleted": false
  }
}

To learn more about Line Item settings, check out this page.

Please let us know if you have any questions.

Twitter Ads API team