CPP Intelligence

AppTweak's CPP Intelligence endpoints provides deep insights into Custom Product Pages (CPPs) available on the Apple App Store. You can retrieve CPP creatives date (icons, screenshots) based on app, keyword, category, or DNA segmentation.

Available Endpoints

CPP by App - Query all available Custom Product Pages by specifying:

  • Input params: app_id, country,language

This endpoint is ideal for analyzing how a specific app is using CPPs across regions.

CPP by Category

Query CPPs from top apps in a given store category. We source these apps from the Top Charts—specifically, the top 200 free apps within your selected category.

  • Input params: category_id, country,language

Use this to benchmark creative strategies across a market segment.

CPP by DNA

Retrieve CPPs based on DNA top chart clusters (groupings based on similar creative/metadata traits).

  • Input: subclass_id, country,language

Very useful if you want to look at apps that are in the same segment as yours.

CPP by Keyword

See which CPPs are associated with apps bidding on a specific keyword in Apple Search Ads.

  • Input: keyword, country,language

This endpoint surfaces the creatives linked to keyword-driven ad strategies.

CPP Keywords

Returns the list of keywords driving traffic to specific CPPs for an app.

Input params: cpp_id, country,language

Provides a direct mapping between search terms and custom pages.

All the endpoints can be filtered by device (iphone or ipad) and for a specific date range (defined by start_date and end_date).

Response example

Example of a response for CPP by App

{
  "result": [
    {
      "cpp_id": "9140aa46-ba99-49e6-834f-f3ae2844b70c",
      "application_id": "302920553",
      "developer_id": "1938",
      "developer_name": "GrubHub.com",
      "first_seen_at": "2023-05-20T02:18:24.055+00:00", // Date & time it was first seen by AppTweak
      "last_seen_at": "2025-07-25T03:50:22.567+00:00", // Date & time it was last seen by AppTweak
      "icon": "https://is1-ssl.mzstatic.com/image/thumb/Purple126/v4/a9/5a/74/a95a749e-b088-ff5f-eab2-60b9f051c92d/AppIcon-0-1x_U007emarketing-0-7-0-85-220.png/1024x1024bb.jpg",
      "device_version": "iphone_6_5", 
      "type": "screenshot", // Creative type
      "url": "https://is4-ssl.mzstatic.com/image/thumb/Purple116/v4/f0/79/04/f0790461-4a3b-c0a0-08e3-bdb9c923b893/3d6ab510-b9bf-4857-bf50-a8e60ddbd16b_GrubHub_GrubHub_iOS_6.5_US_Screenshot_Mockups_230126_01.png/1284x2778bb.jpg"
    },...
    {
      "cpp_id": "9140aa46-ba99-49e6-834f-f3ae2844b70c",
      "application_id": "302920553",
      "developer_id": "1938",
      "developer_name": "GrubHub.com",
      "first_seen_at": "2023-05-20T02:18:24.055+00:00",
      "last_seen_at": "2025-07-25T03:50:22.567+00:00",
      "icon": "https://is1-ssl.mzstatic.com/image/thumb/Purple126/v4/a9/5a/74/a95a749e-b088-ff5f-eab2-60b9f051c92d/AppIcon-0-1x_U007emarketing-0-7-0-85-220.png/1024x1024bb.jpg",
      "device_version": "iphone6plus",
      "type": "screenshot",
      "url": "https://is3-ssl.mzstatic.com/image/thumb/Purple126/v4/f2/6d/2f/f26d2f3d-8574-a99f-60f0-c6b4a3c629b2/95a5f5f3-3605-426b-a6b0-2d2604f268ba_GrubHub_GrubHub_iOS_5.5_Handset_US_Screenshot_Mockups_230125_07__U00282_U0029.png/1242x2208bb.jpg"
    }
  ],
  "metadata": {
    "request": {
      "path": "/api/public/store/cpps/breakdown/apps",
      "params": {
        "device": "iphone",
        "country": "us",
        "language": "us",
        "start_date": "2025-06-25",
        "end_date": "2025-07-24",
        "application_id": "302920553"
      },
      "cost": 2001,
      "max_credit_cost": 2001,
      "status": 200
    },
    "response": null
  }
}

Device Versions

Device versions for iPhone & the associated resolutions:

device_version

Resolution

iphone6plus

1242x2208

iphone_6_5

1242x2688 1284x2778

iphone_d74

1290x2796 1320x2868

Device version for iPad & the associated resolutions:

device_versionResolution
ipadPro_20182048x2732
ipadPro2048x2732

Comparing with default Product Page

To compare the CPP with the default product page, you can simply make a call to App Metadata - Current.