Found in AI answers?Hire Theory Road
Theory Road.

Amazon Affiliate Links to Unavailable Products: Find and Fix.

A Currently unavailable ASIN does not throw an error. The page still loads, the link still clicks, and the money page quietly stops earning. Here is how we catch dead Amazon links on our own sites and keep every click landing somewhere a reader can buy.

By October 18, 202610 min read

When Amazon affiliate links stop earning on a page that still looks fine, the cause is almost always one of six things: the ASIN now shows Currently unavailable, the listing was removed or merged so the link resolves to nothing useful, the link points at a child variant that was retired and the reader lands on a different size or color, the item has no featured offer so there is no Buy Box to buy from, the price or availability text on your page is stale and contradicts Amazon, or the link was rewritten by a plugin or redirect that dropped the tag. You confirm which one with a Creators API GetItems check on every ASIN, your own click log, and the Associates Central reports. Then you fix it permanently with a link router that falls back to a tagged Amazon search for the product when an ASIN dies, a daily availability check through the API, and a build gate that refuses to publish a money page with a dead ASIN.

An ASIN (Amazon Standard Identification Number) is the 10-character ID in every product link, such as amazon.com/dp/ASIN/?tag=yoursite-20. The tag parameter is your tracking ID, and Amazon only pays on a Qualifying Purchase, which its Commission Income Statement defines around a single session that starts when the customer clicks your link and ends at the first of a few events, including 24 hours passing or an order being placed. Sellers run out, listings merge and variants retire, and none of that changes your HTML.

A dead Amazon product link still returns a normal page, so no broken link checker, uptime monitor or 404 report will ever flag it. We hit this on one of our own affiliate sites: a buying guide's top pick went unavailable, clicks held, and orders from that page stopped while every link still resolved.

The six causes we find most often.

  • Currently unavailable: the listing exists but no seller is offering it, so the page loads with no price and no Add to Cart button
  • Delisted or merged ASIN: the product was removed or folded into another listing, and the old ASIN shows a dead page or Amazon's not found page
  • Retired child variant: you linked a specific size or color, that variant was discontinued, and the reader lands on a sibling variant or a parent page that does not match your copy
  • No featured offer: other sellers still list the item but none holds the Buy Box, so the reader has to dig into all buying options to purchase
  • Stale price or stock text: your page says a price or In stock that Amazon no longer shows, which breaks trust and breaks Amazon's price display rules
  • Tag stripped on the way out: a plugin, link rewriter or redirect sends the reader to Amazon without the tag parameter, so the sale credits nobody

The last one is a tracking problem, not an availability problem, and it has its own diagnosis in why Amazon Associates sales land on the wrong tracking ID. The first five are what this piece fixes.

How do you check if an Amazon ASIN is still available?

Check availability with the Creators API GetItems operation and its OffersV2 resource, not by scraping amazon.com. Amazon's Associates license excludes any use of "data mining, robots, or similar data gathering and extraction tools," so an unattended bot loading product pages is the wrong tool. Three checks, in this order.

The Creators API. As of October 2026, Amazon's docs say PA-API 5 is deprecated and calls to it return HTTP 403, so the Creators API is the route. Request your ASINs with GetItems and the OffersV2, ItemInfo and ParentASIN resources. Amazon's best practices page says to batch up to 10 ASINs per GetItems request. OffersV2 returns an Availability type: IN_STOCK, IN_STOCK_SCARCE, LEADTIME, AVAILABLE_DATE, PREORDER, OUT_OF_STOCK, UNAVAILABLE or UNKNOWN. A request where none of the IDs resolve returns a 404 ResourceNotFoundException with the message "No items found for the requested item IDs." Access needs at least 10 qualifying sales in the past 30 days, so a brand new site may not have it yet.

Your own click log. If outbound links go through a router on your site, you have clicks per ASIN per page. Compare that with ordered items per ASIN in the Associates Central Orders report for the same window. An ASIN that keeps getting clicks while its ordered items go to zero is the classic dead link signature.

A human click. For the few ASINs the API flags, open the link yourself in a private window and note whether you see Add to Cart, a different variant, or a not found page. A person spot checking, not a crawler.

Diagnose top to bottom.

This is the order we run. Each step isolates one layer so you stop at the first real failure.

Inventory every ASIN on money pages.
Put every ASIN on your money pages into one registry with the page it lives on. Amazon's license lets you store ASINs indefinitely; prices are another matter.
Run GetItems on the registry.
Batch the ASINs 10 at a time with OffersV2 and ParentASIN. Mark any ASIN that comes back not found, UNAVAILABLE, or OUT_OF_STOCK. Store the status and a timestamp, not the price.
Check the variant.
Compare the ParentASIN and item title returned against what your copy says. If you reviewed a 12 inch model and the ASIN now resolves to a different listing, rewrite the copy or link the variant you actually recommend. GetVariations lists the siblings.
Separate out of stock from gone.
A few days of OUT_OF_STOCK is often a restock gap and gets the search fallback. Not found or UNAVAILABLE across several daily checks is a dead link and gets a replacement pick.
Fix the copy, not just the link.
Amazon's policies forbid inaccurate or misleading claims about a product, so if you swap in a replacement product, update the name, specs and review text that describe it.
Amazon affiliate links to unavailable products: symptoms, causes and fixes
SymptomLikely causeFix
Page clicks steady, ordered items fall to zeroTop ASIN now Currently unavailableRoute to a tagged search fallback, then replace the pick
API returns 404 ResourceNotFoundExceptionASIN delisted or mergedFind the live ASIN with SearchItems, update the registry
Reader lands on a different size or colorChild variant retiredCheck ParentASIN and GetVariations, relink the right variant
OffersV2 says OUT_OF_STOCK but sellers existNo featured offer, no Buy BoxKeep the link, add a fallback, recheck daily
Your page shows a price Amazon does notPrice cached past 24 hours or typed by handPull prices from the API with a timestamp, or remove them
Clicks recorded, sales credit no tagRedirect or plugin dropped the tagTest the final URL for the tag parameter
Whole category page earns nothing after a sale endsLinks and copy reference an expired promotionRemove promotion mentions when the promotion ends
Build passes but money page has a dead ASINNo availability gate in the buildFail the build on not found or UNAVAILABLE status

Yes. Amazon's Program Policies allow Special Links to pages with product lists, including search results, as long as your page has additional original content relevant to the link. That is what makes a search fallback workable. A review of a specific blender that sends the reader to a tagged amazon.com search for that blender's name passes that test. As of October 2026, that is the wording in the Associates Program Policies updated April 14, 2026, and Amazon revises them, so recheck before you build on it.

Our router: every product link on a money page points at a path on our own site, such as /go/ plus a product key. The router checks the registry. Live ASIN: a 302 to the standard tagged product URL. Not found or UNAVAILABLE: a 302 to a tagged amazon.com search for the product name and brand, so the reader sees current options and the session carries the tag. It logs every click with page, key and outcome, which feeds the click to order comparison above.

Amazon prohibits links that cloak or obscure the site the click came from and link shorteners that make it unclear the reader is going to Amazon. The policies also exclude purchases from a "Redirecting Link" that sends users to Amazon through an intermediate site without any click on that site. A router on your own domain that runs only after a reader clicks a link labeled as going to Amazon is different, and it is how we run ours, but read the clauses yourself. Our rules: the link text or button says Amazon, the router lives on the same domain as the page, the final URL is a standard tagged amazon.com URL, and we never send the reader through a third party shortener or interstitial page.

How long can you cache Amazon prices and availability?

Amazon lets you cache non-image Product Advertising Content for up to 24 hours, and then you must refresh it from the Creators API, PA-API or a new Data Feed before showing it again. Images cannot be cached at all, only the image link, for up to 24 hours. Amazon's Creators API best practices go further for live data and suggest a 1 hour cache for Offers.

The price rules are stricter than most publishers assume. Your site may only show prices and availability if Amazon serves the link that displays them, or if you get the data from the Creators API or PA-API and follow the license. A price you typed into a table by hand does not qualify. If you refresh less often than hourly, or use a Data Feed, you need a date and time stamp next to the price, and the disclaimer that prices and availability are accurate as of the time shown and subject to change, either beside the price or behind a link or pop-up.

Our drift report flags any typed price, any API price older than the cache window, and any In stock claim for an ASIN the API calls OUT_OF_STOCK. The simplest fix is usually to drop the price and let a Check price on Amazon button carry the click.

What is normal and what is a red flag?

OUT_OF_STOCK in OffersV2 does not always mean the item is gone, because Amazon's docs say OffersV2 shows out of stock whenever there is no featured offer. Normal: a popular ASIN flips to OUT_OF_STOCK or LEADTIME for a few days and comes back. Normal: a seasonal product goes UNAVAILABLE off season.

Red flags: not found on consecutive daily checks, router clicks holding while ordered items stop, a top pick that resolves to a product your copy does not describe, and any price older than 24 hours. Same lesson as our conversion tracking audit checklist: verify what the destination does, not what your page assumes.

Should a build fail on a dead ASIN?

Yes, on money pages. A build gate that refuses to publish a page whose top picks are not found or UNAVAILABLE is the only check that runs every time content changes. Ours reads the status the daily API job writes, fails money pages on dead ASINs, and only warns on informational pages and on out of stock, because restocks are routine.

If your Amazon numbers also look odd at the tag level, read what the Amazon Associates Other row means before blaming dead links. For programs that report back by postback, see our affiliate postback URL guide. If the page lost Google traffic rather than clicks, start with pages indexed but getting no impressions.

Do I still earn if someone clicks my link to an unavailable Amazon product?

Only if they buy something during the session that click started. Amazon's Commission Income Statement ties a Qualifying Purchase to a session that ends at the first of several events, including 24 hours passing or an order being placed. A reader who hits a Currently unavailable page and leaves earns you nothing.

Can I link to an Amazon search results page with my affiliate tag?

Yes, if your page has original content relevant to the link. Amazon's Program Policies name search results as a product list page you may link to under that condition. It is the safest fallback when a specific ASIN is dead.

Can I scrape Amazon to check if products are in stock?

No. The Associates license excludes data mining, robots and similar data gathering tools. Use the Creators API, which needs at least 10 qualifying sales in the past 30 days, and do manual spot checks by hand.

How often do I have to update Amazon prices on my site?

You may cache non-image Product Advertising Content for up to 24 hours, then you must refresh it from the API. If you refresh less often than hourly, show a date and time stamp next to the price plus Amazon's disclaimer. Prices typed by hand are not allowed.

Work with us

Let’s talk about what’s next.

A short note on where the business is and where it needs to go. A senior partner replies within one business day.

t@theoryroad.com

Step 1 of 2

How can we help you get found?

What do you need help with?

Next: name, email and budget. That’s it.