
WooCommerce Product Photo Swaps Leave Alt Text Stale
Replace a WooCommerce product photo and the old alt text often stays behind, now describing a picture that is no longer there. Here's how to catch it.
Swap a product's photo in WooCommerce and nothing about the alt text changes with it. The file is new, the image shows something different, but the description attached to it is still whatever you wrote for the photo it replaced. That's the alt text gap most WooCommerce stores never think to check, because nothing about the process feels broken: the new photo uploads fine, the product page looks right, and the old alt text just sits there, now describing a picture nobody can see any more.
This happens constantly in the ordinary life of a store — a reshoot ahead of a new season, a packaging redesign, swapping a placeholder for a professional shot, or restocking the same SKU under different photography. None of those are mistakes. The mistake is treating the photo swap as finished the moment the new image is live, when the alt text still attached to it is a leftover from a product that, visually, no longer exists.
Why WordPress doesn't update alt text for you
Alt text in WordPress is stored as metadata on the image attachment itself — a small field (_wp_attachment_image_alt) tied to that specific attachment ID, completely separate from the image file's actual pixels. That separation is normally invisible and harmless. It becomes a problem the moment a product's photo changes, because there are two different ways a WooCommerce photo swap can happen, and each one breaks alt text in its own direction.
If you upload a brand-new image file and set it as the product's image, WordPress creates a new attachment with its own ID, and nothing copies the old alt text across to it — nor should it, since a different photo deserves different wording. The new attachment usually sits there with no alt text at all, while the old attachment (and its now-irrelevant alt text) lingers unattached in your media library.
If instead you used a "replace media" style workflow — overwriting the file behind an existing attachment ID, which several media-management plugins offer specifically so you don't have to re-pick the image everywhere it's used — the opposite happens. The attachment ID stays exactly the same, so every place that image was already set keeps working without re-selecting anything. But the alt text attached to that ID doesn't know the file underneath it changed. It keeps describing whatever it was written for originally, now pointed at completely different pixels.
Where this shows up on a real product page
Picture a store selling scented candles. A bestseller gets restocked with a redesigned label and a new glass jar shape, photographed fresh for the relaunch. The product listing, price, and description all get updated. The photo gets swapped in using a replace-media plugin, because that's the fastest way to update every size variation that references the same image. The alt text, written months earlier, still reads "amber glass candle jar, original label, lit wick" — describing a candle that doesn't exist on the shelf any more.
A shopper using a screen reader hears a description that doesn't match what a sighted customer sees on screen: wrong jar, wrong label, a detail ("lit wick") that may not even be true of the new photo. That's not a small inconsistency. It's the store's own accessibility feature actively misdescribing the product it's meant to describe.
The SEO cost, not just the accessibility one
Google Images indexes a specific image URL together with the alt text and surrounding context it finds attached to it. When an attachment's file changes but its alt text doesn't, Google eventually re-crawls that URL and finds a mismatch between what the alt text claims and what the image actually shows. At best, it quietly stops trusting that alt text as a useful signal for ranking the image. At worst, a pattern of mismatched alt text across a catalogue reads as low-quality content, which is the opposite of what alt text is supposed to buy you in image search.
Meanwhile, if the swap went the other way — a fresh upload rather than a replace — the new attachment usually has nothing at all, so it has zero chance of surfacing in image search until someone notices and writes something. Either path leaves real search visibility on the table for photos that, in every other respect, are brand new and worth ranking.
A five-step way to catch stale alt text after a photo swap
- Note the date window. When did the reshoot, rebrand, or restock happen? Most stores can name the week, even if they can't name every product affected.
- Sort WooCommerce products by date modified, filtered to that window. This catches products touched during the relaunch without having to check your whole catalogue by eye.
- Open each one on the live front end and inspect the actual image element, then compare its alt text against what the photo now shows — not against what it's supposed to show, against what's genuinely in the frame.
- Rewrite alt text that describes the previous photo, not the current one, so it matches the specific colour, angle, and detail that's actually visible now.
- Fold the fix into the swap itself going forward. Treat "update the alt text" as the same checklist item as "upload the new photo," not a follow-up task that gets left for later and quietly never happens.
Frequently asked questions
Does replacing a product photo automatically clear the old alt text?
No, and which way it fails depends on how you replaced it. Upload a brand-new file and the new attachment usually starts with no alt text at all, while the old attachment's alt text sits unattached and harmless in your media library. Overwrite the file behind an existing attachment ID using a replace-media plugin, and the alt text stays fully intact — attached to the same ID, now describing a photo that's been swapped out underneath it. Neither path updates the wording for you.
How do I tell if my WooCommerce images were uploaded fresh or replaced in place?
Check the attachment ID. If a product's image URL or filename changed after the swap, it was a fresh upload — the old alt text is orphaned on a different, unused attachment. If the URL and filename stayed identical but the picture clearly changed, a replace-media workflow overwrote the file in place, and whatever alt text was already attached to that ID is still live, just pointed at the wrong description now.
Will Google eventually work out the new image on its own even with stale alt text?
Possibly, given enough time and enough other signals, but there's no fixed timeline and no guarantee. Relying on that means living with a mismatched, potentially misleading description for an unknown stretch — weeks or months — instead of fixing it in the couple of minutes it takes to write accurate alt text for the photo that's actually there now.
Catching this at scale means checking alt text against the image that's currently live, not trusting that it was right when it was first written. OpptiAI Alt Text scans every image attached to your WooCommerce products and flags the ones missing real alt text, so a reshoot or restock doesn't quietly leave gaps behind. If you want to see where your store stands before deciding what to fix first, run a free image SEO audit.
Related Posts
How to add alt text to WooCommerce product gallery images
WooCommerce gallery images are separate Media Library attachments, so they often have no alt text. How to check them, what to write, and how to fix a whole catalogue.
WooCommerce Cross-Sell Thumbnails Miss Alt Text
WooCommerce cross-sell and upsell thumbnails often ship with no alt text, because a separate template or widget renders them, not the product gallery.
WooCommerce Product Bundles: The Alt Text Gap
WooCommerce Product Bundles and Mix and Match products ship their own container images that most alt text tools never scan, leaving bundle thumbnails blank.

