Get Ad Insights

For stats on your Instagram ads, use the Insights API from ad account to ads.

use FacebookAds\Object\Campaign;

$campaign = new Campaign(<CAMPAIGN_ID>);
$insights = $campaign->getInsights();
from facebookads.adobjects.campaign import Campaign

campaign = Campaign(<CAMPAIGN_ID>)
insights = campaign.get_insights()
curl -G \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<CAMPAIGN_ID>/insights

If you are running a campaign on Instagram and Facebook, add breakdowns=publisher_platform, platform_position to see the stats of Facebook and Instagram placements separately:

curl -X GET \
-d 'access_token=<ACCESS_TOKEN>' \
-d 'fields=impressions' \
-d 'breakdown=publisher_platform, platform_position' \
"https://graph.facebook.com/<API_VERSION>/<AD_SET_ID>/insights"

The result looks like this:

{
"data": [
    {
      "impressions": "322",
      "date_start": "2024-03-26",
      "date_stop": "2024-04-24",
      "publisher_platform": "instagram",
      "platform_position": "feed"
    },
    {
      "impressions": "13",
      "date_start": "2024-03-26",
      "date_stop": "2024-04-24",
      "publisher_platform": "instagram",
      "platform_position": "instagram_explore"
    },
    {
      "impressions": "168",
      "date_start": "2024-03-26",
      "date_stop": "2024-04-24",
      "publisher_platform": "instagram",
      "platform_position": "instagram_reels"
    },
    {
      "impressions": "617",
      "date_start": "2024-03-26",
      "date_stop": "2024-04-24",
      "publisher_platform": "instagram",
      "platform_position": "instagram_stories"
    }
  ],
  "paging": {
    ...
  }
}

When requesting breakdown by publisher_platform, platform_position for insights on an ad campaign, the four placement locations in the Instagram Platform are: feed, instagram_explore, instagram_reels, and instagram_stories.

There are other breakdown combinations which include publisher_platform, platform_position that you can use. To track performance of ads with both Facebook and Instagram placements with external tools, use the url_tags macro SITE_SOURCE_NAME to distinguish different placements.

Tracking Tags

View tags are not publicly available. If we permit view tags by an approved vendor on Facebook mobile campaigns, we also allow them for Instagram ads. You can use Ad creative's url_tag field with Instagram ads.

You can use third-party tracking tags for Instagram ads, however note do not optimize ads delivery for third-party tracking tools. To make sure that the third party tracking tool can track Instagram ads properly, use Ad creative's url_tag field with utm_source=instagram.