Bulk editing in WordPress usually means the Bulk Edit panel on the Posts screen. That panel cannot touch the thing most people want to change in bulk: SEO titles and meta descriptions. Those fields belong to your SEO plugin, so your real choice is between the plugin's own editor, a spreadsheet import, WP-CLI, or an AI client that writes and saves them for you. On one site, the plugin editor is fine. On five sites, it isn't.
TL;DR:
- WordPress's built-in Bulk Edit changes categories, tags, authors and status, but it has no access to SEO titles or meta descriptions.
- Every SEO plugin stores descriptions under a different meta key, so a bulk method that works with one plugin can silently fail with another.
- Google sets no character limit on meta descriptions and may ignore yours anyway, so unique, accurate copy matters more than a perfect length.
- Plugin bulk editors and WP-CLI handle one site well. Neither does much for you once you're juggling five or more sites.
- An AI client connected to all your sites can draft, review and save descriptions in batches, but you still need to read what it writes before it goes live.
Table of Contents
- What WordPress Bulk Edit Changes, and the One Thing It Can't
- Bulk Editing Meta Descriptions: Four Methods Compared
- Where Bulk Edits Go Wrong: Meta Keys, Caches and Silent Failures
- What Google Actually Does With Your Bulk-Written Descriptions
- The Multi-Site Problem: Why Per-Site Tools Stop Scaling
- A Safe Bulk Editing Workflow, Step by Step
- Which Bulk Editing Method to Pick, by Situation
- Bulk Edit Meta Descriptions Across Every Site From One Chat Window
- Frequently Asked Questions
- Sources
What WordPress Bulk Edit Changes, and the One Thing It Can't
Open Posts, tick a few boxes, choose "Edit" from Bulk Actions, and you get a compact panel. According to the WordPress.org documentation for the Posts screen, that panel lets you change categories, tags, author, comment and ping status, publish status, post format, sticky status and template across many posts at once. It's useful for tidying taxonomy and terrible for SEO.
The panel has no field for a meta description or an SEO title, because WordPress core doesn't have those fields at all. They are added by whichever SEO plugin you run and stored as post metadata, or in the plugin's own database table. Core can't bulk edit what it doesn't know exists.
Zero. That is how many SEO title or meta description fields the native WordPress Bulk Edit panel can touch.
So when someone says they want "bulk editing" for a WordPress site with 400 posts and no descriptions, the panel they already have is the wrong tool. Everything that follows is about the right one.
Bulk Editing Meta Descriptions: Four Methods Compared
There are four realistic ways to change SEO metadata across many posts. They differ less in what they can do and more in how many sites they cover before they become a chore.
| Method | Best for | Speed per 100 posts | Works across several sites? | Main risk |
|---|---|---|---|---|
| SEO plugin's bulk editor | One site, a few dozen posts | 1–2 hours by hand | No, one dashboard at a time | Tedium, so you stop halfway |
| CSV export and import | Agencies with a spreadsheet habit | 30–60 minutes plus writing time | Only by repeating the whole process | Wrong column mapping overwrites good data |
| WP-CLI scripting | Developers with shell access | Minutes, once scripted | Yes, if you script each site | Wrong meta key fails silently |
| AI client connected to WordPress | Several sites, missing or weak descriptions | Minutes to draft, plus review time | Yes, from one conversation | Unreviewed copy goes live |
The hours are rough estimates for writing genuinely unique descriptions, not pasting the same line 100 times. Pasting the same line is faster and worse than leaving the field empty, for reasons covered below.
The SEO plugin's own bulk editor
Some SEO plugins include a bulk editor that lists posts with editable title and description fields. Yoast's lives under its Tools menu, for example. It's free and safe, and it writes to the right place by definition. The catch is that you're the one writing every description, in a small text box, one site at a time.
CSV export and import
Export your posts with their SEO fields, fill in a spreadsheet, and import it back. This works well when a copywriter who will never log into WordPress does the writing. The risk is mechanical. One shifted column or a mismatched post ID can overwrite 200 good descriptions with someone else's.
WP-CLI
If you have shell access, WP-CLI's post meta update command writes a value straight to a post's metadata, and a loop does it for hundreds of posts in seconds. It's the fastest option and the least forgiving, because it does exactly what you type, including the typo in the meta key.
An AI client connected to your sites
The newest option is an AI assistant that can read your posts and write to your SEO plugin's fields through a proper connection, usually built on the open Model Context Protocol. You describe the job in plain English, the assistant drafts descriptions from each post's actual content, and you approve them before they're saved.
Where Bulk Edits Go Wrong: Meta Keys, Caches and Silent Failures

Bulk edits rarely fail loudly. They report success and then nothing changes on the live page. Three culprits cause most of it.
- The wrong meta key. Each SEO plugin stores descriptions under its own key. Yoast uses
_yoast_wpseo_metadesc, Rank Math usesrank_math_description, and SEOPress uses_seopress_titles_desc. Write to the wrong key and WordPress happily stores a value that nothing ever reads. - Plugins with their own tables. Recent versions of All in One SEO keep most of their data in a dedicated database table rather than in standard post meta. A script that only updates post meta may not change what that plugin outputs. Check the plugin's documentation before you script anything.
- Leftovers from a plugin switch. If a site moved from one SEO plugin to another, the old plugin's meta keys are often still sitting in the database. Your script reads the old value, "improves" it, and saves it somewhere the active plugin ignores.
- Page caching. The database is correct but the cached HTML isn't. Until the cache clears, view-source shows the old description and you assume the edit failed.
The fix for all four is the same habit. After any bulk run, open three random posts in a private window, view the page source, and search for name="description". If the new text is there, the run worked. If not, one of the four causes above is to blame.
What Google Actually Does With Your Bulk-Written Descriptions
Before you spend an afternoon on this, know what you're optimizing for. Google's guidance on controlling snippets says Google may use a page's meta description for its search snippet, but it will often generate a snippet from the page content instead, especially when that content better matches the searcher's query.
The same documentation asks for descriptions that are unique to each page and accurately summarize it, and it warns against identical or near-identical descriptions across many pages. That's the core danger of bulk editing done lazily. Pasting one template across 300 posts gives Google 300 reasons to ignore all of them.
There is no character limit on a meta description. Google says snippets are truncated to fit the device width, so the "155 characters" rule is a habit, not a specification.
A sensible target is still roughly 120 to 160 characters, because shorter descriptions are less likely to be cut mid-sentence on mobile. But accuracy beats length. A 140-character description that matches the page beats a 155-character one that oversells it. Titles follow similar logic: Google's title link documentation explains that it may rewrite titles that are boilerplate, keyword-stuffed or don't match the page.
The Multi-Site Problem: Why Per-Site Tools Stop Scaling

Every method in the table above was designed with one site in mind. That's fine if you have one site. If you look after eight client sites, a plugin bulk editor means eight logins, eight dashboards and eight slightly different plugin versions, possibly with three different SEO plugins between them.
The work multiplies, and so does the boredom. The real cost of bulk editing across sites isn't the clicks. It's that you do the first two sites properly and the next six "later", which in agency terms means never.
Some people try to solve this structurally. If your sites share a theme and an owner, WordPress Multisite can put them under one network admin. It won't give you a cross-site SEO editor, though, and migrating existing client sites into a network is a project in itself. For most freelancers, the sites stay separate and the tooling has to cope with that.
This is where the AI-client approach pulls ahead. A client that holds credentials for every site can run the same job ("find posts with no meta description and draft one from the first 200 words") across all of them in one session, reading each site's active SEO plugin and writing to the correct field.
A Safe Bulk Editing Workflow, Step by Step

Whatever tool you choose, the safe order of operations is the same.
- Back up first. Take a database backup or, at minimum, export the current titles and descriptions. A bulk mistake is easy to undo if you have the old values and miserable if you don't.
- Audit before writing. List posts with missing, duplicate or truncated descriptions. Missing descriptions are the cheapest wins, and duplicates are the ones most likely to be hurting you.
- Confirm the plugin and key. Check which SEO plugin is active on each site and where it stores descriptions. Don't assume it's the same plugin you installed two years ago.
- Draft from content, not titles. Every description should be written from the post's actual opening and headings. A description generated from a title alone tends to be vague, and an AI working from a title alone will happily invent claims the page doesn't make.
- Review, then write in batches of 25–50. Smaller batches mean smaller mistakes and an easier rollback.
- Verify on the live page. Run the view-source check from earlier on a sample from every batch.
If you're connecting an AI tool or a script over the REST API, use WordPress application passwords rather than your main login. Each tool gets its own revocable credential, and you can cut one off without changing your real password.
Pro Tip: Do your highest-traffic pages last, not first. Run the bulk job on the long tail, where a mediocre description costs you almost nothing. Fix your process there, then hand-check the 20 pages that actually earn traffic. Most people do it the other way round, learning their mistakes on the pages that matter.
Which Bulk Editing Method to Pick, by Situation
Here's how the choice breaks down in practice.
- One site, under 50 posts. Use your SEO plugin's editor and write them yourself. Any extra tooling takes longer to set up than the job takes to finish.
- One site, hundreds of posts, and you're a developer. WP-CLI, after you've confirmed the meta key on a single test post. It's fast, free and scriptable, and the risk is manageable if you verify.
- A copywriter is doing the writing. CSV import, with a locked template and post IDs the writer can't edit.
- Three or more sites, especially with mixed SEO plugins. An AI client connected to all of them. This is the only option where the effort doesn't scale with the number of sites. Which model you use matters less than people think, though there are real differences in how ChatGPT and Claude handle WordPress work.
If you're truly undecided, pick the AI route for drafting and keep a human on approval. That's the position this article takes. Machines are good at writing 300 serviceable descriptions, and people are good at spotting the eleven that are wrong.
Bulk Edit Meta Descriptions Across Every Site From One Chat Window
Presshand connects Claude or ChatGPT to every WordPress site you run, from your own machine or server. You can ask it to find posts with missing or duplicate meta descriptions, draft new ones from each post's content, and save them to Yoast, Rank Math, All in One SEO or SEOPress, whichever each site uses. It also scores live pages for SEO out of 100, so you can check the result instead of hoping. That's one of 83 WordPress jobs it handles, alongside posts, menus, plugins and images.
It costs $97 once for every site you own, or $197 for the Agency license with rebrand and resell rights. Updates are optional at $49 a year after the first 12 months. The honest limit: you still need your own Claude or ChatGPT account, and the AI writes drafts, not verdicts. Review each batch before it's saved, exactly as you would with a junior copywriter.
Frequently Asked Questions
Can I bulk edit meta descriptions with WordPress's built-in Bulk Edit?
No. The native Bulk Edit panel only covers fields like categories, tags, author, status and template. Meta descriptions are added by your SEO plugin, so you need that plugin's editor, a CSV import, WP-CLI or an AI tool that writes to the plugin's fields.
How long should a meta description be?
Google sets no fixed limit and truncates snippets to fit the device width. Around 120 to 160 characters is a practical target that usually avoids truncation on mobile. Accuracy and uniqueness matter more than hitting an exact count.
Is it bad to use the same meta description on many pages?
Yes. Google's documentation asks for descriptions that are unique to each page and warns against duplicates. Leaving a description empty is often better than copying one template across hundreds of posts, because Google will then build a snippet from the page content.
Why did my bulk edit say it worked but the description didn't change?
The usual causes are writing to the wrong plugin's meta key, a plugin that stores data in its own database table, leftover data from a previous SEO plugin, or page caching. Check the page source in a private window and clear the cache before assuming the edit failed.
Is it safe to let AI write meta descriptions in bulk?
It's safe if the AI drafts from each post's actual content and you review the drafts before they're saved. Working in batches of 25 to 50 makes mistakes easy to spot and easy to roll back. Unreviewed AI copy can overstate what a page offers.
Sources
- Control your snippets in search results | Google Search Central
- Influencing your title links in search results | Google Search Central
- Posts Screen | WordPress.org Documentation
- wp post meta update | WordPress Developer Resources (WP-CLI)
- Model Context Protocol | Model Context Protocol