Add Interactive Elements

You can add interactive elements so people can engage in your Instagram Stories ads. Currently, we offer the option to add a polling sticker to your ad.

To create an Instagram Story ad with a polling sticker, add the interactive_components_spec to your ad creative object:

curl \
  -F 'name=Sample Creative TESTING' \
  -F 'object_story_spec={ 
    "page_id": "PAGE_ID", 
    "instagram_actor_id": "INSTAGRAM_ACTOR_ID",
    "photo_data": {
        "call_to_action": {
            "type": "LEARN_MORE",
            "value": {"link": ""}
  }' \
  -F 'interactive_components_spec={
    "components": [{
      "type": "poll",
      "poll_spec": {
        "question_text": "Which option do you like?",
        "option_a_text": "NONE",
        "option_b_text": "ALL",
      "position_spec" : {
        "width": 0.5,
        "height": 0.2,
        "rotation": 0,
  }' \
  -F 'access_token=ACCESS TOKEN' \

You use these options at the same object level as object_story_spec in your ad creative. For more information on supported options, see Ad Creative, Reference. You can also preview these ads with the INSTAGRAM_STORY ad format.

Aspect Ratios

For polling sticker, you should have an aspect ratio, or width to height ratio, of 3.2:1. Since you can provide any aspect ratio for the original width and height, Facebook automatically modifies the dimensions so your aspect ratio is 3.2:1.

We preserve one of the dimensions and shrink the other one so that the sticker aspect ratio is 3.2:1. For example, after conversion to a standard media convention, such as 72dpi, if your original dimensions are:

  • 400px by 100px in absolute width and height, after conversion the new resized dimensions are 320px and 100px.
  • 320px by 200px in absolute width and height, the resized dimensions are 320px width and 100px height.
  • 320px width and 100px height in absolute terms, the resized dimensions would still be 320px width and 100px height.

After we convert your sticker based on the required aspect ratio, we require that:

  • Sticker height should be between 3% to 16% relative to the media height.
  • Sticker width should be between 20% to 90% relative to the media width.

If you specify rotation, we rotate the sticker. After we rotate it, we verify that no part of the sticker overlaps with any ad creative media, such as images or videos. No overlap occurs in:

  • Top-most 15% of the media
  • Bottom-most 15% of the media
  • Left-most 10% of the media
  • Right-most 10% of the media

Read Poll Results

You can get reporting information about the number of votes for each option in your poll. Use the following action breakdowns in your request:

  • interactive_component_tap
  • interactive_component_sticker_id
  • interactive_component_sticker_response

For interactive_component_sticker_response, the response 0 means the left option from your poll, while 1 means the right option.

To get aggregated polling responses:

curl -G \
-d "fields=interactive_component_tap" \
-d "access_token=ACCESS_TOKEN" \

To report on aggregated polling responses by polling option:

curl -G \
-d "fields=interactive_component_tap" \
-d "action_breakdowns=interactive_component_sticker_id,interactive_component_sticker_response" \
-d "access_token=ACCESS_TOKEN" \

Polling Ads on Facebook

You can also add polling stickers to ads to be placed at Facebook. In this case, the link_display field is mandatory if:

  • a website link is added to the ad creative, or
  • a poll option link is added under poll_spec.