How to Bulk Edit Alt Text in WordPress Without Breaking SEO

Past a few hundred images, editing alt text one attachment at a time stops being a plan. The obvious move is a bulk update: select everything, generate, save. That is also the fastest way to make a library worse than it started, because the media library has no undo and no revision history for attachment metadata.

The safe version of bulk editing rests on two rules: fill gaps instead of rewriting, and save only what a person has looked at.

Why blind bulk replace backfires

A "select all and overwrite" pass does four kinds of damage at once.

  • It erases work that was already correct. Somewhere in your library are alt descriptions written by hand, by the person who took the photo or built the page. They are usually better than anything generated.
  • It manufactures duplicates. A model given thousands of near-identical inputs tends to produce near-identical outputs. Fifty images with the same alt string give a screen reader user fifty identical announcements.
  • It invites keyword stuffing. If the prompt asks for SEO, some generators happily return "buy running shoes, best running shoes online, free shipping". That reads badly to a human and adds nothing for a crawler.
  • It cannot be rolled back. Attachment alt text lives in post meta. Unless you exported the old values first, there is no restore point.
Bulk actionWhat it is good forWhere it goes wrong
Overwrite every attachmentNothing, reallyDestroys good text and duplicates the rest
Fill only empty alt fieldsThe real backlogSafe if suggestions are reviewed
Append keywords to existing altAlmost neverProduces unreadable, stuffed strings
Copy product title into every imageOne image, maybeRepetition without context
Batch by category or collectionContextual descriptionsNeeds a sensible taxonomy

Step one: scan for what is missing

Start by counting the actual gap. In WordPress, attachment alt text is stored as the _wp_attachment_image_alt meta key, so the missing set is every image attachment without a non-empty value. If you are comfortable with SQL, a read-only query gives you the number before you change anything:

SELECT ID, post_title
FROM wp_posts
WHERE post_type = 'attachment'
  AND ID NOT IN (
    SELECT post_id FROM wp_postmeta
    WHERE meta_key = '_wp_attachment_image_alt'
      AND meta_value <> ''
  );

Two caveats. The wp_ prefix may differ on your install, and a query only reports — it does not fix. Most sites are better served by a plugin that lists missing alt text with thumbnails, because you need to see each image to judge the suggestion.

This is the filter AltMint applies by default: it scans for images with no alt text and leaves non-empty descriptions alone. If you want to revisit a description that exists but is weak, do that deliberately, one at a time — not as part of a bulk pass.

Step two: review before anything is saved

A suggestion queue is the difference between a tool and a gamble. What to look for:

  1. Thumbnail beside the text. You cannot approve a description of an image you cannot see.
  2. Editable suggestions. Generated text is a draft. Changing three words is normal.
  3. Per-image approval. No button that saves an entire batch unreviewed.
  4. Batching by collection. Process a folder, a category, or a date range at a time so you can spot a bad pattern early.
  5. An export of the old values. Even an empty field is worth recording before you write to it.

Work in batches of fifty or so. If the first ten suggestions are wrong, the prompt or the model is wrong, and you have lost ten minutes instead of a thousand images.

WooCommerce needs its own pass

Product images are where bulk editing pays off most, and where it is easiest to get wrong. A few WooCommerce specifics:

  • Featured image and gallery share one attachment record. The alt text belongs to the file, not to the position in the product. Changing it once changes it everywhere that file appears.
  • Variations usually reuse the parent image. If a variable product inherits the same photo for every size, one description has to cover all of them. Say what is visible, not what is selected.
  • Category batches produce better context. Generating "ceramic mug" descriptions across the drinkware category gives the model a consistent subject, and gives you a consistent tone.
  • Do not paste the product title into every image. Include the product name where it identifies the item, then add the view: "Stoneware mug, sage green, handle on the right" beats "Stoneware mug" five times over.

The WooCommerce alt text guide covers featured versus gallery images in more depth.

A five-step routine that holds up

  1. Export the current list of attachments and their alt values.
  2. Filter to empty alt only, and count the backlog.
  3. Generate suggestions in batches, one collection at a time.
  4. Review, edit, and approve — then save.
  5. Spot-check the storefront with a screen reader, and re-run the scan monthly to catch new uploads.

Before and after

A stoneware mug photographed for a product page:

  • Before: alt="" — the file name is IMG_4821.jpg, so some screen readers announce the file name instead.
  • Bad bulk result: "Buy stoneware mug online — best stoneware mug free shipping". Stuffed, repetitive, and useless next to the product title.
  • After review: "Stoneware mug in matte sage green with a wide handle, shown from the side."

Frequently asked questions

Does changing alt text affect rankings?

Alt text is a minor signal compared with page content and links. The bigger effect is indirect: better descriptions support image search and give you a reason to keep images relevant. Rewriting a thousand descriptions is unlikely to move rankings on its own.

Is it safe to use one alt string for a whole product line?

No. If two images look different, their descriptions should differ. If they genuinely look identical, you probably have duplicate files that should be consolidated instead.

How often should I re-run a bulk scan?

Monthly is enough for most stores, plus once after any large import. New uploads are where missing alt text accumulates.

Bulk editing is safe when it means "fill the gaps in a reviewable queue," not "replace everything at once." What an AI alt text generator can and cannot do explains how to judge the suggestions before you trust a batch of them.