Search
Clear search
Close search
Google apps
Main menu

Create your edition

Feed guidelines

The information in your feed powers your Google Play Newsstand edition. By providing full articles and media assets, readers are more likely to engage with your content. It’s also important to properly set up a feed to prevent errors.

This article details general and technical feed guidelines, and feed best practices.

General feed guidelines

  • Include full article content: Do not submit summaries, highlights, or blurbs in your feed
  • Validate your feed: Use one of the following sites:
  • Confirm Newsstand can crawl your feed: Make sure your robot.txt is not blocking the Newsstand crawler

Technical feed guidelines

We accept both standard RSS and Atom feeds. We also respect HTML tags and can crawl for more media; however, we do not recommend this method. Learn more about feed source options.

Important:

  • Newsstand currently fetches each feed about every 30 minutes.
  • Newsstand has a size limit of 1 MB per article and 2 MB per feed. 
  • Newsstand will only read up to 60 new articles per fetch, not including previously read articles. To make sure that all content is retrieved, do not exceed fetch or file limits.
Sample RSS 2.0 feed

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:media="http://search.yahoo.com/mrss/">
    <channel>
        <lastBuildDate>Fri, 23 Jan 2015 23:26:19 +0000</lastBuildDate>
        <title>Google Newsstand RSS Examples</title>
        <description>Google Newsstand RSS Examples</description>
        <link>http://google-newsstand-examples.blogspot.com/</link>
        <item>
            <guid isPermaLink="false">sample-post-478956386763692725</guid>
            <pubDate>Fri, 23 Jan 2015 23:17:00 +0000</pubDate>
            <title>Sample RSS post #1</title>
            <description>An example RSS article</description>
            <content:encoded><![CDATA[<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras egestas mattis lectus eget porttitor. Nunc iaculis luctus libero, quis viverra mi ultricies sed. Nulla pellentesque dui sed maximus tristique. Sed tempor pulvinar ex in mattis.</p><p><a href="http://www.google.com/">Sample Link</a></p><p><a href="https://www.google.com/images/srpr/logo11w.png"><img border="0" height="113" src="https://www.google.com/images/srpr/logo11w.png" width="320" /></a></p><p>Nulla dictum magna orci, et accumsan velit elementum sit amet. Vestibulum egestas, nulla nec facilisis iaculis, elit metus molestie mi, et vulputate enim eros vitae sem. Aliquam eget sagittis dui. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Etiam mattis ex sit amet lectus semper tempus.</p><iframe width="560" height="315" src="//www.youtube.com/embed/200E9e8_hHY" frameborder="0" allowfullscreen></iframe>]]></content:encoded> <link>http://google-newsstand-examples.blogspot.com/2015/01/sample-post.html</link>
            <author>mail@example.com (Lauren Ipson)</author>
        </item>
    </channel>
</rss>
Sample Atom 1.0 feed

<feed xmlns="http://www.w3.org/2005/Atom">
    <id>tag:blogger.com,1999:blog-4719018909174563858</id>
    <updated>2015-01-23T15:26:19.468-08:00</updated>
    <title type="text">Google Newsstand Atom Examples</title>
    <subtitle type="html">Example subtitle</subtitle>
    <author>
        <name>Lauren Ipson</name>
        <email>email@example.com</email>
    </author>
    <entry>
        <id>http://example.com/sample-atom-478956386763692725</id>
        <published>2015-01-23T15:17:00.004-08:00</published>
        <updated>2015-01-23T15:26:19.486-08:00</updated>
        <title type="text">Sample Atom Post #1</title>
        <content type="html"><![CDATA[<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras egestas mattis lectus eget porttitor. Nunc iaculis luctus libero, quis viverra mi ultricies sed. Nulla pellentesque dui sed maximus tristique. Sed tempor pulvinar ex in mattis.</p><p><a href='http://www.google.com/'>Sample Link</a></p><p><a href='https://www.google.com/images/srpr/logo11w.png'><img border='0' height='113' src='https://www.google.com/images/srpr/logo11w.png' width='320' /></a></p><p>Nulla dictum magna orci, et accumsan velit elementum sit amet. Vestibulum egestas, nulla nec facilisis iaculis, elit metus molestie mi, et vulputate enim eros vitae sem. Aliquam eget sagittis dui. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Etiam mattis ex sit amet lectus semper tempus.</p><iframe width='560' height='315' src='//www.youtube.com/embed/IS9gmW7uFXo' frameborder='0'></iframe>]]></content>
        <author>
            <name>Lauren Ipson</name>
            <email>email@example.com</email>
        </author>
    </entry>
</feed>

For more information, refer to RSS 2.0 at Harvard Law and Atom Syndication Format.

Article contents and markup

Use <content:encoded> to contain the full contents of every article. If you do not use a <content:encoded> tag, Producer defaults to content in the <description> tag. 

Important:

  • For <content:encoded> you must use  the namespace xmlns:content="http://purl.org/rss/1.0/modules/content/".
  • HTML must be escaped or preferably wrapped in a CDATA section. For example:

<content:encoded><![CDATA[<b>This is some HTML text.</b>]]></content:encoded>

  • Any <script> or <iframe> tags will be removed, except for the ones included in the Media assets section below. 

  • Inline styles (<style> tags or style="" attributes) will also be removed.

Article updates

The <guid> tag in RSS and <id> tag in Atom are required to identify unique articles. We suggest not using the article title as the <guid> tag because it’s likely to change. 

Important:

  • If you provide the full URL to your original article in the <guid> tags, using isPermalink is optional. 

  • If you do not provide the full URL, isPermalink must be set to “false.”

See the table below for examples of how and when to use the isPermalink value: 

Full URL is used

Does not use isPermalink <guid>https://www.yoursite.com/url-to-article.html</guid>
Sets isPermalink to “true” <guid isPermalink=”true”>https://www.yoursite.com/url-to-article.html</guid>
Full URL is not used Sets isPermalink to “false” <guid isPermalink=”false”>sample-id-1234567890</guid>


Note: We use the <pubDate> tag to determine whether the article has been modified.

Media assets

We recommend you use Media RSS tags for identifying multimedia content in both Atom and RSS feeds. For more details, see http://www.rssboard.org/media-rss.

Important: To use Media RSS, include the namespace. For example: xmlns:media="http://search.yahoo.com/mrss/".

Video

We recommend including video directly in your feed using Media RSS tags. Video included in this way benefits from many enhancements, including auto-play (muted) in feeds and smoother UI. Here is an example:

<media:content url="https://ia600806.us.archive.org/17/items/VintageCartoonsSet2MP4/052750AnEggScrambleMmBr.mp4" medium="video" height="768" width="1024">
  <media:title>Sample MP4 Video</media:title>
  <media:description><![CDATA[This is a sample MP4 video]]></media:description>
  <media:credit role="author" scheme="urn:ebu"><![CDATA[Warner Brothers]]></media:credit>
</media:content>
We accept several formats for publisher-hosted video including MP4, WebM, DASH, SmoothStreaming, and HLS.

You can provide multiple bitrates of a video, if available, by specifying multiple <media:content> objects within a <media:group>, like this:

<media:group>
<media:content url="https://ia600806.us.archive.org/17/items/VintageCartoonsSet2MP4/052750AnEggScrambleMmBr_1280.mp4" medium="video" height="768" width="1024" bitrate=”1280”>
  <media:title>Sample MP4 Video</media:title>
  <media:description><![CDATA[This is a sample MP4 video]]></media:description>
  <media:credit role="author" scheme="urn:ebu"><![CDATA[Warner Brothers]]></media:credit>
</media:content>


<media:content url="https://ia600806.us.archive.org/17/items/VintageCartoonsSet2MP4/052750AnEggScrambleMmBr_4080.mp4" medium="video" height="768" width="1024" bitrate=”4080”>
  <media:title>Sample MP4 Video</media:title>
  <media:description><![CDATA[This is a sample MP4 video]]></media:description>
  <media:credit role="author" scheme="urn:ebu"><![CDATA[Warner Brothers]]></media:credit>
</media:content>
</media:group>

We also support external players embedded within your articles via iframe. Note: Your iframes, and any content served inside them, must be served over HTTPS to appear correctly.

Here are some examples:

Brightcove

<iframe width="560" height="315" src="//players.brightcove.net/1752604059001/VJCJXL3Ye_default/index.html?videoId=example" frameBorder="0"></iframe>

Dailymotion

<iframe frameborder="0" width="600" height="338" src="//www.dailymotion.com/embed/video/EXAMPLE-logo=&ui-start-screen-inf0&endscreen-enable=0"></iframe>

Instagram

<iframe width="320" height="320" frameBorder="0" src="//www.instagram.com/p/EXAMPLE/embed" frameborder="0"></iframe>

Ooyala

<iframe width="560" height="315" src="//player.ooyala.com/iframe.html?embedCode=EXAMPLE" frameborder="0"></iframe>

Vimeo

<iframe width="560" height="315" src="//player.vimeo.com/video/135639717?color=ff9933&byline=0"></iframe>

Vine

<iframe width="320" height="320" src="//vine.co/v/bVE2IMdIV2E/embed/simple" frameborder="0"></iframe>

YouTube

<iframe width="560" height="315" src="//www.youtube.com/embed/FTePI_3zpII" frameborder="0"></iframe>

Audio

MP3

<media:content url="http://cylinders.library.ucsb.edu/mp3s/5000/5907/cusb-cyl5907d.mp3" medium="audio">
  <media:title>Sample MP3 Audio</media:title>
  <media:description><![CDATA[This is a sample MP3]]></media:description>
  <media:credit role="author" scheme="urn:ebu"><![CDATA[Thomas Edison]]></media:credit>
</media:content>

SoundCloud

<iframe width="560" height="162" src="//w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/221689840" frameborder="0"></iframe>

Images

Media RSS (recommended for images)

<media:content url="https://www.google.com/images/srpr/logo11w.png" 
    type="image/png" expression="full" width="538" height="190">
  <media:description type="plain"><![CDATA[Google logo]]></media:description>
  <media:credit role="author" scheme="urn:ebu"><![CDATA[Google]]></media:credit>
</media:content>

 

Note: The article headline (or hero) image will be the largest image closest to square dimensions unless one image is designated by annotating it as follows:
<img class="type:primaryImage" src="http://publisher.com/primaryImage.jpg">

GIPHY

<iframe width="480" height="277" frameBorder="0" class="giphy-embed" src="//giphy.com/embed/TK4yMeRswlKWA" frameborder="0"></iframe>

Instagram

<iframe width="320" height="320" frameBorder="0" src="//www.instagram.com/p/EXAMPLE/embed" frameborder="0"></iframe>

Google Docs

Google Docs

<iframe width="480" height="560" src="//docs.google.com/gview?url=http://infolab.stanford.edu/pub/papers/google.pdf&embedded=true" frameborder="0"></iframe>

Feed best practices

To help make your content appear as desired in Newsstand, follow the text and image guidelines below:

Text

  • Mark-up your content with semantically meaningful HTML tags, such as <p>, <h1>, <ul>, etc.
  • Avoid <br> if possible
  • Use block-level elements to avoid zero-pixel border issues
  • Avoid using smart quotes
  • Use UTF-8 if a character encoding must be specified

Images

  • Use images that are at least 800 px on a side
  • Do not add multiple versions (e.g., sizes, aspect ratios) of the same image to the same article
  • If you use <img> tags and an image has a caption or attribution text, use the following markup:
<figure>
  <img src="..." />
  <figcaption>The caption of this image
    <span class="copyright">The attribution of this image</span>
  </figcaption>
</figure>

Slide shows

Newsstand can render a group of images with supporting captions in an inline interactive slide show in articles. To indicate that a group of images belongs in a slide show, use the following markup in your feed:

Note: Figures should be formatted according to the Image section above.

 <section class="type:slideshow">
    <figure>...</figure>
    <figure>...</figure>
 </section>

Learn how to troubleshoot article and media issues in your feed.
Was this article helpful?
How can we improve it?