WordPress comment moderation: pending comments, approving and replying
WordPress comment moderation is a decision about each comment in the queue: approve, reply, mark as spam or delete. You'll find pending comments in the dashboard under Comments. Backlogs usually come from the lack of a steady routine, not from the number of comments, so a few minutes regularly and sensible Discussion settings are enough.
Author: The TellMyShop team. A guide for WordPress site and WooCommerce store owners: the cause, the manual fix and the same work in a chat conversation.
Last updated: · 6 min read
Why comments wait for weeks
On most business sites nobody is assigned to moderation. Notifications of new comments get lost in the inbox among invoices, and the bubble with the number in the dashboard keeps growing. After a month the queue is a mix of spam, old questions and a few kind words nobody approved.
The trouble isn't only cosmetic. A reader who asked a question under a guide and got no answer rarely comes back. In a store it's the same: a question about size or delivery time under a post is a customer who was close to buying.
If most of your queue is spam with links, start with the post on WordPress comment spam, where we compare ways to block it. Here we deal with genuine comments waiting for a decision.
How to approve a comment, step by step
- In the dashboard, open Comments and switch the view to Pending.
- Read the comment. Check which post it's under and whether it contains links to other sites.
- Hover over the comment and click Approve if it should appear on the site.
- If it's a question, click Reply and write the answer straight from the list. For a pending comment, the button below the reply box approves it together with your reply.
- Mark spam with the Spam link, and move unwanted comments to the Trash.
- With a larger number, tick the comments and use Bulk actions.
All the queue options and settings are described in the WordPress documentation on comment moderation.
The Discussion settings that decide the queue
What ends up in the queue is set in Settings → Discussion. Three fields have the biggest effect.
| Setting | What it does | When it fits |
|---|---|---|
| Comment must be manually approved | every comment waits for your decision | a site with few comments where you want to control everything |
| Comment author must have a previously approved comment | regular commenters publish straight away, new ones wait | a blog with a group of regular readers |
| Hold a comment in the queue if it contains a number of links | comments with links go to the queue | almost every site, because spam usually has links |
| Email when a comment is held for moderation | sends a message to the admin address | when there are few comments; with heavy traffic it floods the inbox |
WPMU DEV's guide to discussion settings walks through every field on that page in detail.
It's also worth knowing that WordPress marks links in comments as untrusted. Google recommends marking user-generated content this way and describes it in its guide to qualifying outbound links. So an approved comment with a link won't pass value to another site, but spam on your pages still looks bad.
A steady routine instead of a big clean-up
The simplest way to avoid a backlog is a small, steady portion:
- once or twice a week you go through the pending queue,
- questions get an answer during the same pass, even a short one,
- spam you mark straight away, so the spam filter learns from it,
- comments on old posts you can close automatically after a chosen number of days, if they mostly attract spam.
If several people look after the site, agree who moderates. Otherwise everyone assumes someone else will. In WordPress both administrators and editors can moderate comments, so you can hand moderation to a staff member without giving them full control of the site.
Short replies have their own style too. A few rules that work:
- match the author's tone, formal or informal,
- answer the question in the first sentence, and only then say thanks,
- when the answer is longer, point to the post or page where the topic is covered,
- don't include customer details or an order number in the reply.
When questions under posts keep repeating, add the answer to the post itself. How to refresh old posts is covered in the guide to refreshing old WordPress posts.
How the chat helps with moderation
The TellMyShop plugin for WordPress and WooCommerce shows your chat (Claude or ChatGPT) the list of comments awaiting moderation, including product reviews. In TellMyShop Free the chat only reads: it tells you how many comments are waiting, which are questions and which are spam, and points out the ones worth replying to. It fits well into a morning conversation where you ask what's new on the site.
In TellMyShop Pro the chat approves, rejects and marks as spam up to 50 comments at once, and suggests replies to chosen comments. This works straight after licence activation, without turning on any switches.
You: What's waiting in the comments? I haven't looked for a month.
Your chat: 23 comments are waiting. 15 are spam with links. 6 are thank-yous under guides, without links. 2 are questions: about worktop thickness under the kitchen post, and about lead time under the Offer page.
You: Yes. Reply to the thickness question that we make 30 and 40 mm.
Your chat: Reply preview: “Hello, we make oak worktops in 30 and 40 mm thicknesses. We're happy to help you choose.” Publish it?
You: Yes.
Your chat: 8 comments approved, 15 marked as spam, reply published. The changes are in the change history.
I suggest approving the 8 genuine comments and marking the spam. For example:
old version: comment under “Oak worktop in the kitchen”, question about thickness: pending
new version: comment under “Oak worktop in the kitchen”: approved
The numbers and text in this conversation are examples. The chat doesn't guess facts about your offer: if a reply needs a number, a price or a date, it asks you.
Each batch has a preview and waits for your “yes”, and you can undo most changes from the change history. TellMyShop doesn't send emails to comment authors. The reply appears only on the site, under the comment.
During moderation the chat doesn't change the options in Settings → Discussion. Those are WordPress options that would need the Service switch, so it's simpler to set them yourself in two minutes using the table above.
More about what the chat does on your site is on the TellMyShop for WordPress and WooCommerce page. You can compare licences on the pricing page, and other guides are on the blog.
Questions and answers
Where are pending comments in WordPress?
In the dashboard, under the Comments menu, in the Pending view. The number in the bubble next to the menu shows how many comments are waiting for a decision. Hover over a comment to see the Approve, Reply, Spam and Trash links.
How do I approve many comments at once?
In the comment list, tick the boxes next to the chosen comments, choose Approve from Bulk actions and click Apply. Before ticking the whole page, look through it, because the queue usually contains spam too.
Why is my comment awaiting moderation?
WordPress holds a comment when manual approval is on, when the author has no previously approved comment, when the comment has too many links, or when it contains a word from the moderation list. You set all these conditions in Settings → Discussion.
Do I have to reply to every comment?
No, but questions are worth answering. An unanswered question under a post is also seen by other readers and potential customers. A short reply after a few days is better than none.
Can the chat reply to comments for me?
In TellMyShop Pro the chat suggests the reply text and publishes it under the comment only after your approval in the preview. It approves and rejects comments in batches of up to 50, straight after licence activation. In TellMyShop Free it only shows what's waiting and what's worth replying to.
WordPress is a trademark of the WordPress Foundation. WooCommerce is a trademark of Automattic Inc. Claude is a trademark of Anthropic PBC. ChatGPT and OpenAI are trademarks of OpenAI. TellMyShop is not affiliated with these companies.