Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
25 Million+
Websites using our plugins
Years of WordPress experience
WordPress tutorials
by experts

How to Bulk Delete WordPress Posts (2 Easy Solutions)

Editorial Note: We earn a commission from partner links on WPBeginner. Commissions do not affect our editors' opinions or evaluations. Learn more about Editorial Process.

Do you want to bulk delete WordPress posts?

It’s easy to manage individual posts from the admin area. However, if you want to delete a lot of posts, then selecting and deleting each post individually can take a lot of time.

In this article, we will show you two quick and easy ways to bulk delete WordPress posts from your blog.

Bulk delete WordPress posts with two easy methods

Why Bulk Delete WordPress Posts?

When you want to remove a post from your WordPress website, you can simply go to Posts » All Posts and hover over the article you want to delete.

When it appears, simply click on the ‘Trash’ link to send that post to the trash.

How to bulk delete WordPress blog posts

By default, WordPress automatically deletes anything that has been in the trash for 30 days. After that, they will be permanently deleted from your WordPress database unless you’ve disabled the automatic empty trash feature in WordPress.

However, sometimes, you may need to bulk delete posts. For example, if you accept guest blogs, then you may get dozens or even hundreds of posts that aren’t suitable for your website. Deleting each post manually would take a lot of time.

With that being said, let’s see how you can bulk delete WordPress posts.

Video Tutorial

Subscribe to WPBeginner

If you don’t want to watch the video tutorial, then you can continue reading the text version below. Simply use the quick links to jump straight to the method you prefer:

Method 1: Using the Bulk Actions Feature (No Plugin Required)

The easiest way to bulk delete WordPress posts is by using the bulk actions feature. This tool is built into WordPress, so you don’t need to install any extra WordPress plugins.

First, head over to Posts » All Posts. You can now check the box next to each post you want to delete.

Bulk deleting WordPress blog posts

Another option is to check the box next to ‘Title’, which selects all the WordPress posts on the current page.

You can then uncheck any posts that you don’t want to delete.

Deleting an unlimited number of WordPress posts

When you are happy with your selection, just open the dropdown menu that shows ‘Bulk actions’ by default and select ‘Move to Trash.’

Finally, click on ‘Apply’ to delete the selected posts from your WordPress blog.

Move to trash option

WordPress will now move the selected posts to the trash.

With this method, you can delete 20 posts at a time. However, it is possible to bulk delete more items by changing the number of posts that WordPress shows on each page.

To do this, you need to click on ‘Screen Options‘ in the top right corner of the screen. You can now type a new number into the ‘Number of items per page’ box.

Change the number of posts to be displayed

Then, simply click on the ‘Apply’ button, and WordPress will show the number of posts you typed in earlier.

You can now go ahead and bulk delete these WordPress blog posts by following the same process described above.

Bulk Delete Posts by Specific Author or Category

Sometimes, you may want to delete posts for a specific category or tag or posts written by a specific author. To do this, simply go to Posts » All Posts and then click on the category, tag, or author name.

Display posts by author, category, or tag

This will show all the posts that have this category, tag, or author. For example, clicking on the ‘Apple News’ category will show all the posts filed under that category on your news aggregator website.

You can then bulk delete the posts by following the same process described above.

Method 2: Using the Bulk Delete Plugin (More Options)

The built-in WordPress bulk delete feature is a good solution for most websites. However, sometimes, you may want to delete posts based on specific criteria such as the post status, how many comments the post has received, or its URL.

In this case, you can use the Bulk Delete plugin. This free plugin allows you to bulk delete based on custom taxonomies, custom post types, post status, and other criteria.

First, you need to install and activate the Bulk Delete plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.

Upon activation, you must go to Bulk WP » Bulk Delete Posts to see all the different filters you can use. You can filter posts by duration, select posts published in the last x days, delete them instantly without sending them to trash, and even schedule to delete them later.

The Bulk Delete WordPress plugin

As you scroll down further in the settings screen, you will find more options to select and delete posts by categories, custom taxonomies, custom post types, and more.

You can even bulk delete all WordPress comments, pages, users, and custom fields.

Sort and select posts by category

We hope this article helped you learn how to easily bulk delete WordPress posts using these two methods. You may also want to see our list of the best WordPress plugins for business websites or our guide on how to make money online blogging with WordPress.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

Editorial Staff

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

10 CommentsLeave a Reply

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Jiří Vaněk says

    The instructions are great, I’m just wondering if it deletes all the articles as one process, or is each deletion a separate process? Because if I delete, for example, 100 or more articles, I might very easily run into a PHP server limit if WordPress does it all as one process.

    • WPBeginner Support says

      It would depend on the specific hosting provider as moving a post to the trash is normally a low server load action but it can be a good practice to limit how many are moved at once.


      • Jiří Vaněk says

        OK thank you. I will think about it and I will divide any larger deletion of articles into several smaller blocks in order to fit into the max execution time set on the server.

  3. Noble says

    Please this bulk delete remove the featured images also? Because I also want the featured images to be deleted along side the posts…


    • WPBeginner Support says

      The featured images would be in your media library but not attached to any posts.


  4. joseph tersoo says

    i tried the first and the second method on my site but the issues i had is that i wasnt executing on time, it process like upto 5mins and just about 20 post will delete. also the same using the plugin, dont know thats the problem? i have over 2000 post to delete.

  5. Ashish Punetha says

    Great Post,
    I want to just confirm, can we consider deletion via WordPress database.


    • Editorial Staff says

      Hey Ashish,

      Using the above methods, the posts will be deleted from the WordPress database.

      You can also use SQL queries to delete posts directly in the database, but that method is not beginner friendly and are prone to more errors.

      Thanks for leaving a comment :)


Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.