Skip to main content
Agency Program 50% cashback. 10% commissions. Priority support. Built for growing agencies. 50% cashback for agencies Speak to the team Join free
WP-Sweep icon

WP-Sweep

v1.1.8
by Lester Chan · 4.7 (137 reviews)

WP-Sweep allows you to clean up unused, orphaned and duplicated data in your WordPress. It also optimizes your database tables.

100K+ active installs Updated Apr 16, 2025 Tested to 6.8.3
Try Demo Download
Pre-installed Ready in ~10s No card
WP-Sweep

About WP-Sweep

WP-Sweep is a plugin that helps you clean up your WordPress database by removing unnecessary data such as revisions, auto drafts, deleted comments, and more. It uses proper WordPress delete functions to ensure safe and efficient cleaning. You can use WP-Sweep through the WP REST API or WP-CLI commands, and it is not compatible with certain plugins like Elementor Popup Builder and WPML.

Screenshots

WP-Sweep screenshot
WP-Sweep screenshot

Frequently asked questions

What does WP-Sweep do?
WP-Sweep cleans up unused, orphaned, and duplicated data in your WordPress database. It also optimizes your database tables. This plugin uses proper WordPress delete functions as much as possible instead of running direct delete MySQL queries.
What types of data can WP-Sweep clean?
WP-Sweep can clean revisions, auto drafts, deleted comments, unapproved comments, spammed comments, orphaned post meta, orphaned comment meta, orphaned user meta, orphaned term meta, orphaned term relationships, unused terms, duplicated post meta, duplicated comment meta, duplicated user meta, duplicated term meta, transient options, and oEmbed caches in post meta.
Does WP-Sweep offer API or CLI access?
Yes, WP-Sweep provides WP REST API Endpoints for counting, detailing, and sweeping items. It also offers WP-CLI Commands to run sweeps for all items or specific items.
Are there any known plugin incompatibilities with WP-Sweep?
WP-Sweep is not compatible with Custom Fonts, Elementor Popup Builder, MailPress, and Meta….

Changelog

1.1.8

  • FIXED: Added current_user_can() Check For AJAX Calls

1.1.7

  • FIXED: Pass in default blank string to fix fatal error

1.1.6

  • NEW: Re-org wp-sweep.php to inc/class-wpsweep.php
  • NEW: Bump to WordPress 6.2

1.1.5

  • NEW: Bump to WordPress 5.8

1.1.4

  • FIXED: Replaced %_transient_% with %\_transient\_%. Escape _ in MySQL if not it is being used as a wildcard character. Props @janrenn.

1.1.3

  • FIXED: Changed permissions check to activate_plugins because update_plugins will return false when DISALLOW_FILE_MODS=true.

1.1.2

  • NEW: Changed permission check to update_plugins for better MultiSite compatibility.
  • NEW: Bump min PHP version to 5.6.

1.1.1

  • NEW: wp_sweep_excluded_termids filter.

1.1.0

  • NEW: Added WP Rest API Endpoint support, sweep/v1/count/<Name>, sweep/v1/details/<Name>, and sweep/v1/sweep/<Name>
  • FIXED: Follow as close as possible to WordPress Coding Standards

1.0.12

  • NEW: Bump to WordPress 4.9
  • NEW: Update README to incompatible plugins

1.0.10

  • FIXED: Invalid plugin head ‘This plugin has an invalid header.’

1.0.9

  • NEW: Support for Codeclimate
  • FIXES: Uses get_sites() on WordPress 4.6. This should fix deprecated notices.
  • FIXES: Fixes translation placeholder count. Props @pedro-mendonca.
  • FIXES: Use manage_options capability as it conflicts with Admin Menu Editor on multisite installs. Props @EusebiuOprinoiu.

1.0.8

  • NEW: Added wp_sweep_excluded_taxonomies filter to allow more than just link_category taxonomy
  • NEW: Support for WP-CLI wp sweep

1.0.7

  • FIXES: Use custom query to delete Orphaned Term Relationship if wp_remove_object_terms() fails

1.0.6

  • NEW: Delete ‘languages’ folder from the plugin
  • NEW: Use translate.wordpress.org to translate the plugin
  • FIXED: Works only with WordPress 4.4 because of new term meta

1.0.5

  • FIXED: apply_filters() wrong arguments

1.0.4

  • NEW: oEmbed caches in post meta Sweep
  • NEW: Add POT file for translators

1.0.3

  • NEW: AJAX Sweep All
  • NEW: AJAX Sweeping
  • NEW: View details of sweep
  • NEW: Optimize DB sweep
  • NEW: User hint and confirmation. Props @SiamKreative
  • FIXED: Division by zero. Pros @barisunver

1.0.2

  • FIXED: Use term_id for wp_remove_object_terms()
  • FIXED: number_format_i18n() issues after sweeping

1.0.1

  • NEW: Moved plugin location to WP-Admin -> Tools -> Sweep
  • NEW: Add Deleted Post Sweep
  • FIXED: Use forced_delete for wp_delete_post() and wp_delete_comment();
  • FIXED: If orphaned meta has an object id of 0, use SQL query to delete

1.0.0

  • Initial release

Try other plugins