Which feed type should I choose, API feeds or file (XML, CSV, TSV ) feeds?

API feeds

API feeds update individual products data change (prices, stock, description, title) instantly. However, since they are rate limited by Google API, they can be slow for cases that require mass product updates, including the initial run and regular re-new runs.

API feeds are run

1/ When a new feed settings is saved (including new feeds creation).

2/ For individual product changes that trigger webhooks (please read on for webhooks' limitation)

3/ When manually requested from the app dashboard (Please be aware of Google's recommendations about not running API feeds too regularly).

4/ API feed fully re-run after every 30 days, to make sure that unchanged products do not expire in Google Merchant Center. You can also schedule more frequent API feed renew at additional cost.

Shopify webhooks: API feeds depend on Shopify product webhooks to learn about product changes to start synchronization. Since webhook delivery isn't always guaranteed, products might not get synced for all changes. (please read more about webhooks' limitations). Also, only these product changes trigger a webhook (and therefore get synchronized by an API feed):

- Product creates

- Price, title, description and metafield changes

As webhooks do not get fired on Shopify exchange rate changes or product translation changes, API feed should not be use as the only feed for foreign currency feed (unless you use fixed exchange rates), or translated feed. You can still combine API with file feeds, or in most case, just the file feeds alone are enough.

Also most of the time API feeds do not remove products. Products no longer in feeds are just stop synchronized and left in Google Merchant Center for expiry. If items need to be removed quicker, you need to remove them in Google Merchant Center manually, or switch to file feeds.

Due to the shortcomings of API feeds, file feeds might be more suitable for most of cases.

File feeds

File feeds (XML, CSV, TSV) do not update individual products, but every time they run, they update the whole portfolio part that is included in feeds. File feeds are not subjected to Google API rate limits so they are much faster than API feeds for mass updates, that is why they are recommended for foreign currency feeds. In fact, file feeds can be suitable for most of the use cases, even for fast stock changing portfolio (Google bot can help to sync individual stock updates by crawling the landing page). File feeds are run:

1/ When a new feed settings is saved (including new feeds creation).

2/ At least once every 24 hours at configurable time of day. Additional runs are possible at addition cost.

3/ When manually requested from the app dashboard

Combining file feeds and API feeds

You can have the best of both file and API feeds by having the file feed as the primary feed and create a supplement API feed. A feed rule then need to be configured in GMC to tell Google to use the updated data from the API feed when it's available.

This setup will then allow your portfolio to be updated (price, stock changes, etc) instantly by the API feed. In any cases when API feed is not working (due to above shortcomings), the file feeds get run at least 24 hours. As the file feeds are created as the primary feed, it will also make sure that obsolete products get removed.

Adding more feeds might require plan upgrades. However in cases where your store has a lot of products, the additional feed might have already been covered in your current plan.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us