When a new media file is uploaded in WordPress, generate alt text in AltTextLab
Each file uploaded to your WordPress media library is sent to AltTextLab, which generates a description you can use as alt text. Add one more step if you want that text saved on the image.
WordPress
AltTextLab2 steps Setup ~5 min Used on 2.0k sites Free to import

What this workflow does
Images without alt text are a problem for screen reader users and a gap in your SEO, but writing a description for every upload is the job nobody gets to. This workflow asks AltTextLab for a description as soon as a file lands in your media library, so you are not starting from a blank field.
The WordPress trigger fires on New Media, when a file is added to the library, and passes its details, such as the file URL, to FlowMattic. The Generate Alt Text step in AltTextLab receives the image you map and returns the generated text as step data.
Be clear on one point before you import: as shipped, the workflow stops there. Nothing writes the text back to the image's alt text field in WordPress. Add a step after AltTextLab to save it, as described in the tips. Task History shows each upload and the text AltTextLab returned, so you can read the results while you test.
Blog with frequent image uploads
Writers add several images to each post. AltTextLab produces a description for each one, ready to be saved or reviewed by an editor.
Store product photos
A shop owner uploads product photos to the media library. Each gets a generated description that can describe the item for screen readers.
Accessibility clean-up for new content
Your team commits to alt text on every new image. The workflow gives each upload a draft description instead of an empty field.
How this workflow runs
What happens at each step once the workflow is on, and what you need before you import it.
WordPress New MediaFires when a new file is uploaded to the WordPress media library on the site where FlowMattic runs. The file's details, including its URL, are passed on for mapping.
AltTextLab Generate Alt TextSends the uploaded image to AltTextLab and returns a generated description as step data. Connect your AltTextLab account and map the media file URL from the trigger.
What you need
- FlowMatticCore
- AltTextLab AccountAccount
After importing, map your own data. To keep the template universal, not every step is pre-filled. Open each step in the builder and connect your accounts and fields (channels, lists, sheets, recipients) before you switch the workflow on.
Make it yours
Changes worth making after you import it.
- To save the description on the image, add a step after AltTextLab that updates the media item, for example an API step calling your site's WordPress REST API media endpoint with the alt_text value.
- The media library also takes PDFs and other files. Add a Filter after the trigger that continues only when the file type contains image, if your test data shows that value.
- Upload one image after import and read the AltTextLab output in Task History before you decide how to use it.
Questions about this workflow
Does AltTextLab's text appear in the WordPress alt text field on its own?
No. The template generates the text but has no step that writes it to the image. Add a step that updates the media item if you want it saved.
Are images already in my WordPress media library processed?
No. The trigger reacts to new uploads, so pictures sitting in the library from before the workflow went live are never sent to AltTextLab.
Will uploading a PDF to WordPress send it to AltTextLab?
The New Media trigger fires for any file added to the library. Add a Filter on the file type if you only want images sent.
Do I need anything beyond FlowMattic and an AltTextLab account?
No other plugin is needed for the trigger, since New Media comes from WordPress itself. You connect AltTextLab when you import the workflow.
More AI Automation workflows
Other ready-to-import templates from the same category.







Import this workflow into your WordPress site
Download the JSON, import it from the Workflows screen and connect your accounts. Every run stays on your server, with no per-task fees.
30-day money-back guarantee Unlimited workflows and runs Self-hosted