eBay Image URL Not Accepted? Causes & Fixes for CSV, API, Listings

Mathias Avatar

|

Last updated

When you upload listings through CSV, API, or even paste a link into your item description, eBay runs every image URL through an automated validation pipeline. If the link does not meet eBay’s strict acceptance rules, the platform rejects it, often with confusing error messages like:

  • “Image not accepted”
  • “Image could not be downloaded”
  • “We couldn’t import your photo”
  • “Invalid image URL”
  • “Image download failed: HTTP 400/403/404/500/503/507”

This guide explains why eBay rejects image links before they ever reach the listing, the technical rules your URLs must follow, and how to generate fully compliant, guaranteed-to-work direct links.

1. eBay’s Hidden Rules for Accepting Image URLs

eBay requires that every image link:

✅ 1.1 Must be a direct link to an actual image file

eBay requires every image link to resolve directly to a static image file. The URL must return an image immediately (200 OK) with a valid image MIME type.

Best practice (strongly recommended):

Use a direct URL ending in a real image extension:

  • .jpg
  • .jpeg
  • .png
  • .gif (is still supported but uncommon)

Commonly rejected or unreliable:

  • URLs without a file extension
  • URLs that rely on redirects, format negotiation (eg. deliver WebP when accessing JPG image), or dynamic generation
  • Viewer or gallery pages such as imgur.com/gallery/...
  • Script or API endpoints like getPhoto.php?id=12345
  • Signed or expiring URLs with rotating tokens
  • URLs that change response behavior over time

Even if a link works in a browser, eBay’s ingestion systems may reject it if it isn’t a clean, static, direct image file.

Filetypes note:

While eBay’s upload interface allows many file types to be selected, only a small subset are reliably supported throughout eBay’s full image processing pipeline. For consistent results, sellers should always use static JPEG or PNG images and avoid newer or dynamic formats such as WebP, HEIC, TIFF, or SVG.

1.2 Must return a valid image on the first request

eBay’s robot fetches the URL once, without cookies, without JavaScript, and usually without following complicated redirects.

It expects:

  • HTTP 200 OK
  • A standard image MIME type (image/jpeg)
  • <2–3 redirects
  • No cookies
  • No blocked user agents
  • No IP-range restrictions
  • No rate limiting or bot protection

Anything else → rejected.

1.3 Must load without authentication

If your server requires:

  • Login
  • A signed token
  • A temporary presigned URL
  • A session cookie
  • Hotlink protection

eBay can’t fetch the image → reject.

1.4 Must not be a domain on eBay’s blocked list

More on this below,. but yes… eBay bans many image hosts.

2. Why eBay CSV Uploads Reject Image Links

CSV uploads are extremely strict because the import runs on an older backend. Errors often happen before listing creation, so you get vague messages like:

  • “Image could not be transferred
  • “Image URL invalid
  • “Image not accepted

The CSV validator checks:

🏛️ 2.1 URL structure

  • Must be full absolute URL
  • No spaces
  • Invalid or malformed URL encoding (for example, misplaced or double-encoded %20) can cause rejection
  • No commas without quotes
  • HTTPS is preferred (HTTP is allowed but discouraged)

⛓️ 2.2 Redirect chains

The CSV ingestion system is very limited in its ability to follow redirects, and many redirect types cause image fetch failures:

  • Multi-step redirect chains
  • Geo-based redirects
  • Conditional CDN routing or format negotiation
  • JavaScript redirects (obviously)
  • HTML meta refresh redirects

If your image host relies on any of these behaviors, image fetching during CSV ingestion becomes unreliable and often fails.

🚦 2.3 Rate limits

CSV import fetches hundreds of URLs in seconds.

If the CDN rate limits or presents a CAPTCHA → rejection.

A marketplace-optimized image host like Img.vision has predefined rules to not reject marketplace crawlers, even if they fetch a huge number of image links all at the same time.

3. Why eBay API-Based Listings Reject Image URLs

eBay’s API has slightly different rules, but the main rejection causes are:

3.1 Dynamic URLs with expiring tokens

Some image hosting and storage services generate time-limited or signed URLs, often used by cloud storage platforms such as AWS S3, Google Cloud Storage, or Azure Blob Storage.

Example: https://example.com/image?file=abc.jpg&token=2938472398472039

If the token expires or rotates after a short time, eBay may fail to re-download the image during later validation or reprocessing steps.

As a result:

  • The image may be accepted initially but disappear after publishing
  • Or the API may reject or silently drop the image during listing verification

For eBay listings, image URLs must remain stable, publicly accessible, and unchanged over time.
Short-lived, signed, or expiring URLs are unreliable and should be avoided.

🌀 3.2 Long redirects

Some CDNs use:

  • Country redirect
  • Device redirect
  • A/B testing redirect
  • Redirects to time-limited signed URLs

While a single redirect may work, eBay’s API ingestion systems have limited redirect tolerance.
Multi-step or conditional redirects frequently cause image fetch failures or silent drops.

🤖 3.3 Anti-bot & “Advanced Security” protection

Many CDNs and image delivery platforms include traffic protection features designed for websites and apps, not automated marketplace crawlers.

Examples include:

  • Cloudflare: Bot Fight Mode, Super Bot Fight Mode
  • Bunny.net: token authentication, hotlink protection, and rate limiting
  • Cloudinary / Imgix / ImageKit: dynamic image URLs, on-the-fly transformations, access rules or signed URLs
  • KeyCDN: referrer restrictions and IP filtering

In addition, some setups enforce:

  • CAPTCHA or reCAPTCHA challenges
  • Firewall rules blocking unknown or non-browser user agents
  • Country- or region-based access restrictions

While effective for preventing abuse, these protections often block legitimate eBay image fetchers, which do not behave like a normal browser.

4. Blocked or Problematic Domains for eBay Images

eBay does not publish a fixed domain blacklist, but image URLs frequently fail when hosted on domains primarily designed for:

  • temporary or expiring uploads
  • social media or sharing platforms
  • viewer-based file sharing services
  • link shorteners or redirect services
  • image hosts with high abuse rates
  • hosts that enforce aggressive bot protection or access controls

These platforms are not designed for static, long-lived, automated image fetching, which eBay requires.

Common examples (non-exhaustive):

imgur.com: gallery/viewer URLs rejected
imageshack, tinypic: often rate-limited or deprecated
Google Photos: requires authentication
Dropbox share links: share links point to viewer pages, not direct images
OneDrive share links: tokenized, viewer-based URLs
Facebook CDN: short-lived, tokenized URLs
Redirect-based shorteners
Hosts with strict bot filtering or hotlink protection

5. CDN Compatibility Issues (The Silent Reason Most Links Fail)

CDNs are great for real shoppers, but eBay’s import robot behaves like a very old browser with no cookies and no JS.

Common CDN issues:

🗝️ 5.1 Strict or Non-Standard TLS Configuration

Some CDNs enforce strict TLS policies or region-specific configurations that can block automated fetchers.
If eBay cannot establish a clean HTTPS connection, the image fetch fails.

🕵️ 5.2 Blocking of Unknown or Non-Browser User Agents

Bot protection, WAF rules, or traffic filtering may block requests that do not look like real browsers.
When eBay’s fetcher is blocked, the image is rejected or later removed.

🔁 5.3 Conditional Image Formats and Content Negotiation

Some CDNs return different responses based on request headers or user agent, such as:

  • WebP or AVIF instead of JPG/PNG
  • unexpected MIME types
  • HTML fallback or error pages

If eBay does not receive a consistent, supported image format, ingestion fails.

🎲 5.4 Dynamic or Unstable Image URLs

Image URLs that rely on:

  • transformation parameters (?width=800, ?auto=format)
  • signed or expiring tokens
  • time-based or request-dependent query strings

may work initially but fail during later validation or re-fetching.
For reliable ingestion, image URLs must remain stable and unchanged over time.

6. Why Dynamic or Expiring URLs Fail

Dynamic URLs include:

  • Signed URLs
  • Temporary URLs
  • URLs with timestamps
  • URLs with rotating tokens
  • URLs generated through backend scripts
  • viewer.php?image=1234.jpg

eBay needs to:

  1. Fetch the image at listing creation
  2. Fetch again for processing
  3. Fetch again for revisions
  4. Fetch again during verification
  5. Fetch regularly for caching
  6. Fetch again if you relist or refresh

If the URL changes or expires → eBay sees a mismatch → rejects or removes the image.

7. How to Create eBay-Approved Image URLs (Highly reliable)

The following technical guidelines maximize compatibility across eBay UI uploads, CSV bulk uploads, APIs, and re-validation processes.

🔗 7.1 The URL must be:

  • Stable
  • Permanent
  • Publicly accessible
  • Direct link
  • Ending with .jpg, .jpeg, or .png
  • No expiring tokens
  • No device-based redirects
  • No request-based content negotiation
  • No cookies
  • No bot-blocking firewall rules

🏷️ 7.2 MIME type must be correct

Response headers must be:

Content-Type: image/jpeg
HTTP/1.1 200 OK

➡️ 7.3 Redirect rules must be simple

Highly likely works:

  • Zero or a single simple redirect

Will likely not work:

  • GEO routing
  • Device routing
  • A/B redirect
  • Multi-step redirect
  • JS-based redirect

💚 7.4 Use a CDN fine-tuned for eBay (like Img.vision)

A compliant setup typically includes:

  • Image served from a static URL
  • CDN edge caching
  • No on-the-fly conversion of JPG to WebP
  • No dynamic URLs
  • No query-parameter transformations
  • Firewall rules optimized for eBay servers

📌 7.5 Recommended URL structure

Good:

https://d.examplecdn.com/abc123/my-image-01.jpg
https://cdn.mystore.com/images/items/sku123/front.jpg
https://i.example.com/2024/11/products/sku-2929181.jpg

Bad:

https://example.com/viewer?id=12345
https://example.com/image.php?token=xyz
https://photos.google.com/....
https://imgur.com/abcxyz
https://drive.google.com/...
https://dropbox.com/s/gfhfhhhf/myphoto.jpg?dl=0
https://cdn.example.com/file.jpg?token=expiringsoon

8. Troubleshooting Rejected URLs (Quick Checklist)

Check these if eBay rejects an image link:

✅ Does the URL end with .jpg, .jpeg, or .png?

✅ Does it return an image on the first request?

✅ Does it require cookies?

✅ Does it redirect more than once?

✅ Does your CDN block bots?

✅ Does the link expire?

✅ Is the domain temporarily rate-limiting traffic?

✅ Does the response return 200 OK with a correct image Content-Type?

✅ Does the server return a real 404 for missing images instead of an HTML fallback page?

9. Summary

eBay rejects links not because of your images, but because of the URL structure, accessibility, and server behavior.

To be accepted:

  • The link must be a stable JPG, JPEG, or PNG.
  • The server must respond with HTTP 200 and image/jpeg, or image/png.
  • No tokens, cookies, redirects, or authentication.
  • CDN must allow bot traffic, even when under pressure.
  • Links must be simple static URLs.

When your URLs follow these rules, CSV imports, API calls, and descriptions all accept your images instantly.


Mathias Avatar

Last updated