Automatically Generate WordPress Alt Text with ImageCrush and Descriptive File Names
by A Sunkissed Fan, Developer
Alt text is one of those SEO chores that sounds small until you have a folder full of photos to publish. Every image needs a useful description, every description should match the page, and every one has to be entered by hand in WordPress if your workflow has no automation.
That is why the new ImageCrush 0.1.6 auto rename feature pairs so well with the WordPress plugin Auto Alt Text From File Name - Made by Saad. ImageCrush can use an LLM to rename each processed image to a short, descriptive phrase. The WordPress plugin can then turn that descriptive file name into the image's alt text when you upload it.
The result is a simple publishing loop: compress the image, rename it descriptively, upload it to WordPress, and let WordPress fill the empty alt text field from the file name.
Why alt text matters for SEO
Alt text exists first for accessibility. It gives people using screen readers, low-bandwidth connections, or non-visual browsing tools a text alternative for an image.
It also helps search engines understand image content. Google's image SEO documentation says that Google uses alt text together with computer vision and page content to understand the subject of an image, and that short descriptive file names can provide light clues too. Google also recommends useful, context-aware alt text instead of keyword stuffing.
That makes alt text especially important for image-heavy sites: travel blogs, food blogs, fashion posts, product catalogs, portfolios, galleries, and local business websites. If your images are part of the value of the page, they should not be uploaded as IMG_4829.webp with an empty alt field.
Why this is usually so tedious
The manual WordPress process is not complicated, but it is repetitive:
- Upload each image.
- Open the media details panel.
- Look at the image closely enough to describe it.
- Type a useful alt text phrase.
- Repeat for every image in the post.
- Go back later and fix the ones you missed.
That is tolerable for one image. It becomes a time sink when you are publishing a gallery, a recipe post with step-by-step photos, or a product page with dozens of images.
Without this workflow, WordPress still shows the original camera-style file name, and the Alternative Text field starts blank.
Automation does not remove the need for judgment, but it handles the repetitive first pass. You still review important images, but you are no longer starting from blank fields.
The two-tool workflow
ImageCrush handles the desktop batch work before upload:
- Resize large camera or phone photos to web-friendly dimensions.
- Compress and convert images to WebP.
- Optionally watermark a whole batch.
- Use an LLM to generate a short visible-description phrase.
- Rename the processed output file with that phrase.
The WordPress plugin handles the upload-side metadata:
- Generate alt text for images from their file names.
- Optionally generate captions for non-image media.
- Bulk update existing media.
- Clean up file-name formatting by removing extensions and replacing dashes or underscores with spaces.
- Fill empty fields without overwriting alt text or captions you already entered manually.
So instead of uploading DSC_1042.jpg and writing alt text later, you can upload something like Cherry pie cooling on a wooden table.webp, and WordPress can turn that file name into the alt text. With ImageCrush auto rename and the WordPress plugin together, the media item has a descriptive file name and the Alternative Text field is already filled in.
Configure ImageCrush for OpenAI auto rename
Before processing your images, create an OpenAI API key in the OpenAI dashboard. OpenAI's API docs also recommend treating the key as a secret and not sharing or committing it.
Then configure ImageCrush:
- Open ImageCrush and add the images you want to process.
- Open Settings.
- In Resize or Watermark mode, enable Auto rename.
- Leave the URL set to
https://api.openai.com. - Paste your OpenAI API key.
- Keep the default model if you want the low-cost option, or choose another image-capable model from the model list.
- Leave Max Tokens at
1024unless you have a specific reason to change it. - Set your normal resize, compression, destination folder, and watermark options.
- Run the batch.
When auto rename is enabled, ImageCrush sends the processed image to an OpenAI-compatible chat completions endpoint and asks for one short descriptive alt text phrase. It then sanitizes that phrase into the output file name while keeping the output extension.
For example:
| Original file | ImageCrush output |
|---|---|
IMG_4829.HEIC | Golden retriever beside a blue lake.webp |
DSC_1042.JPG | Cherry pie cooling on a wooden table.webp |
screenshot.png | Checkout page with coupon code field.webp |
What OpenAI charges for this
This is not a free OpenAI service. ImageCrush can make the workflow feel automatic, but each auto rename request uses your OpenAI API account and is billed by OpenAI.
The good news is that this kind of image description request is still very cheap when you use a small image-capable model. The Calculating costs section of OpenAI's Images and vision docs explains that image inputs are metered in token units, and the conversion depends on the model, image dimensions, and detail level. ImageCrush sends images with high detail so the model has enough visual information to generate better descriptive file names.
A 256 KB image is not automatically a fixed number of image tokens. File size and image-token cost are different things. A 256 KB JPEG could be 800px wide or 4000px wide, and those two images can have very different costs. If you converted the file into base64 text, it could look like hundreds of thousands of text tokens, but that is not how OpenAI bills image understanding requests.
For planning, most web-sized images are a reasonable fit for this rough estimate:
- Image input: about 1,500 to 3,000 input tokens per image.
- Prompt text: usually less than 200 input tokens.
- Generated filename phrase: usually 20 to 100 output tokens.
If you use 2,000 input tokens per image as a simple average, the input-token cost for 1,000 images is roughly:
| Model | Approx. input cost for 1,000 images |
|---|---|
gpt-5-nano | $0.10 |
gpt-4.1-nano | $0.20 |
gpt-5.4-nano | $0.40 |
gpt-5-mini | $0.50 |
gpt-4.1-mini | $0.80 |
gpt-5.4-mini | $1.50 |
The short output text adds a small output-token charge, but the generated phrase is tiny compared with the image input. In practical terms, this workflow is usually measured in pennies or a few dollars for large batches, not hundreds of dollars. Check OpenAI's current pricing for exact per-model rates.
Configure WordPress to create alt text from file names
Install and configure the WordPress plugin:
- In WordPress, go to Plugins and install Auto Alt Text From File Name - Made by Saad.
- Activate the plugin.
- Go to Settings > Alt Text Generator.
- Enable automatic alt text generation for images.
- Choose any formatting options you want, such as title casing.
- Upload your ImageCrush outputs to the Media Library.
The plugin is intentionally simple: it turns the cleaned-up file name into the media text. That is why the ImageCrush step matters. The better the file name, the better the generated alt text.
Faster image SEO with less busywork
Image SEO is not just about smaller files, and alt text is not just a checkbox. Your images should load quickly, have useful names, and carry descriptive text that helps both people and search engines understand the page.
ImageCrush already handles resizing, compression, and WebP conversion. With LLM-powered auto rename in 0.1.6, it can also give each image a descriptive file name before it ever reaches WordPress. Pair that with Auto Alt Text From File Name - Made by Saad, and a task that used to take hours becomes a reviewable automated workflow.