Mathias Avatar

|

Last updated

Why you should not use Shopify to host product images for Walmart and Amazon

Shopify is built to serve images to shoppers browsing your store. When you copy a Shopify image URL and paste it into a Walmart feed or Amazon flat file, you’re asking Shopify’s CDN to do something it was never designed for: serve images to marketplace crawlers that fetch thousands of files in aggressive bursts. The result is rejected listings, missing images, and feed errors that are hard to trace back to the image host.

How Shopify serves images

Shopify’s CDN processes every image through its own pipeline. When you upload a product photo, Shopify assigns it a URL that includes a hash, a size variant, and sometimes a format conversion. That URL can change when you edit the product, swap themes, or update the image. Shopify also auto-converts images to WebP or AVIF for browsers that support those formats, which speeds up your storefront but creates problems when a marketplace crawler requests the file.

The URL you copy today may not return the same file tomorrow. And the file it does return may not be in a format the marketplace accepts.

Why Walmart rejects Shopify image URLs

Walmart’s feed ingestion system is one of the strictest of any marketplace. It fetches images at scale, retries aggressively on failure, and expects a direct URL that returns the image file with a predictable MIME type every time.

Shopify URLs fail this in several ways.

  • ❌ Shopify may return WebP or AVIF instead of JPEG or PNG, and Walmart’s ingestion rejects formats it doesn’t expect
  • ❌ Shopify CDN rate-limits requests that look like bot traffic, which is exactly how Walmart’s crawler behaves during a bulk feed import
  • ❌ Editing a product or switching your Shopify theme can change the image URL, breaking every feed entry that references it
  • ❌ Shopify URLs include hashes and size parameters that make them long, unpredictable, and impossible to generate from a filename in a spreadsheet formula
  • ❌ If your Shopify store goes down for maintenance or hits a rate limit, every Walmart listing using those URLs loses its images at the same time

Walmart doesn’t always surface these errors clearly. A feed import can partially fail, with some listings going live without images, and the seller dashboard may not show which specific URLs were rejected or why.

Why Amazon rejects Shopify image URLs

Amazon validates image formats strictly on submission. It expects a direct URL that returns a standard image file (JPEG, PNG, or TIFF for some categories) with the correct MIME type and no redirect chain.

  • ❌ Shopify’s format auto-conversion can serve WebP to Amazon’s crawler, which Amazon may reject depending on category requirements
  • ❌ Shopify URLs include CDN parameters that can change, making the URL unreliable as a permanent reference in a flat file or feed
  • ❌ Rate limiting during bulk catalog submissions causes timeouts when Amazon tries to fetch hundreds or thousands of images from your Shopify store
  • ❌ Amazon-hosted images are locked to Amazon, so sellers often look to their Shopify store as a “neutral” image source for flat file imports, but Shopify wasn’t built for that role

When Amazon can’t fetch an image, the listing either goes live without it or the submission fails. Either way, the seller has to investigate, re-upload, and resubmit.

The deeper problem with using your webshop as an image host

Using Shopify (or WooCommerce, or Magento) as your image source for marketplace feeds ties two systems together that should be independent. Your webshop has its own uptime, its own CDN rules, its own format pipeline. When you route marketplace images through it, a single point of failure affects every channel.

Shopify’s CDN is optimized for one job: delivering pages and images to human visitors browsing your store. Marketplace crawlers don’t browse. They fetch in bulk, on their own schedule, with retry logic that looks like a DDoS attack to a system not expecting it. Shopify’s rate limiting is a reasonable response to that traffic pattern, but it means your marketplace listings pay the price.

URL stability is the other half of the problem. Shopify doesn’t guarantee that a product image URL stays the same across edits, theme changes, or app updates. A URL that works in your Walmart feed today can quietly break next month when you update your storefront. You won’t get a notification from Walmart or Amazon when that happens.

What works instead

Marketplace image hosting needs three things Shopify doesn’t provide: permanent URLs that never change regardless of what happens on your webshop, direct file delivery with no format conversion or redirect, and a CDN that treats marketplace crawlers the same as human visitors.

A dedicated image host like Img.vision is built for this. Upload an image once, get a direct URL that returns the original file (JPEG, PNG, whatever you uploaded) with the correct MIME type, no redirects, and no expiry. The same URL goes into your Walmart feed, Amazon flat file, eBay listing, and any other channel. Marketplace crawlers can fetch it thousands of times without getting rate-limited or blocked.

Your Shopify store stays focused on serving your storefront. Your marketplace feeds reference URLs from infrastructure designed for feeds. The two systems stay independent, so a theme change on Shopify doesn’t cascade into broken images on Walmart.

Keep your image URLs separate from your webshop

Shopify is a good storefront platform. It was not built to be a CDN for marketplace feed ingestion. Every seller who pastes a Shopify image URL into a Walmart or Amazon feed is creating a dependency that will eventually break, whether from a format conversion, a rate limit, a URL change, or simple downtime.

Separating image hosting from your webshop means your marketplace listings stay live regardless of what happens on your Shopify store. It also means you can switch webshop platforms, change themes, or rebuild your store without worrying about which marketplace feeds will break.


Mathias Avatar

Last updated