Direct-Sold Ads

Publishers can serve video ads (click to play or sound off), animated ads (provided animation stays within the iframe) and banner ads that have been sold directly by their own sales team into their Instant Articles. For more details on ad formats, see the Instant Articles policies. Publishers keep 100% of the revenue generated by ads they sell themselves.

To display ads in Instant Articles, use the Ad element to designate the position for the ad within your article. The ad will be served from your designated URL and will be rendered inside the article with the “Sponsored” heading, indicating to the reader that the content is an advertisement.


Facebook will dynamically size each ad to be responsive to different screen dimensions and add buffer space around the ad consistent with your article style.

The heights of your ads in relation to their widths cannot exceed a 2:3 ratio in Instant Articles. Any ads that exceed the 2:3 aspect ratio will be automatically cropped from the bottom.

For the best reader experience, we recommend that you specify the dimensions of the iframe to match the dimensions of the ad asset within. This will prevent text and other elements from shifting around on the page as the ad loads.

  • If you do not define the height and width for an ad, the ad will be automatically sized to fit the display screen based on the response from the ad server.

  • If a specific size is defined but the ad server returns a different size, the ad will be automatically sized.

<figure class="op-ad">
    <!-- Use this for your ads -->
    <iframe src=";adtype=banner300x250" height="300" width="250"></iframe>

For more information on how to specify ad sizes, see the Ad entry in Instant Articles Code Samples.


Ads can be served into your Instant Articles through your existing ad server implementation, including through Google’s DoubleClick for Publishers (DFP) solution.

To implement Google's DFP in Instant Articles, all code must be contained within a single <iframe> wrapped in a <figure class="op-ad"> element. This element should be placed in <head> for automatic ad placement or <body> for manual placement. See the Ad Placement section for more.

Google Publisher Tags (GPT) example:

<figure class="op-ad">
  <iframe height="250" style="border:0;margin:0;padding:0;" width="300">
  <script async='async' src=''></script>
      var googletag = googletag || {};
      googletag.cmd = googletag.cmd || [];

    googletag.cmd.push(function() {
      googletag.defineSlot('/[NETWORK_ID]/[AD_UNIT]', [300, 250], 'div-gpt-ad-12345').addService(googletag.pubads());
  <div id='div-gpt-ad-12345' style='height:250px; width:300px;'>
      googletag.cmd.push(function() { googletag.display('div-gpt-ad-12345'); });

Backfilling with Audience Network ads

You can set up Audience Network in DFP to backfill when you do not have Direct Sold campaigns by trafficking our tag in DFP as a creative. Use the Audience Network Placement ID from Creator Studio > Monetization > Instant Articles > Settings > and replace PLACEMENT_ID from this code:

<iframe width="300" height="250" style="border:0; margin:0;" src=""></iframe>
  • Traffic Audience Network tag as 3rd Party Tag in DFP
  • You cannot track clicks 1st party so ignore the macro insertion/unrecognized tag alert
  • Do not wrap the tag and traffic the figure elements with the class op-ad (these are already wrapped around the GPT tag which lives directly in the article)


Since your ads are served into Instant Articles within an iframe and embedded web browser, you can employ your own existing techniques to measure and account for the viewability of these ads back to your advertisers. You may use JavaScript to track and measure ad viewability for these ads in your Instant Articles.


For ads sold directly by your team, you will not have access to Facebook targeting within Instant Articles. You may still use your standard cookie or contextual data for targeting as you do for ads on your website.


To help track behavior around direct sold ads, Instant Articles exposes several user interactions as JavaScript messages. For more information, see the Ad Events entry in Instant Articles Code Samples.