Most "delete account" plugins for WordPress are either too bloated or surprisingly insecure. I built Remove My Data to provide a middle ground: a lightweight, GDPR-friendly way for users to delete their own accounts using a secure, email-verified workflow.
- Email Verification: Users can't accidentally click a button and vanish. They receive a secure, time-limited link (valid for 1 hour).
- Security First: Uses SHA-256 token hashing and
hash_equalsto prevent timing attacks. - Throttling: Prevents "email bombing" by limiting deletion requests to one per hour per user.
- Admin Control: You choose exactly which roles (e.g., Subscribers only) have the right to delete themselves. Administrators are hard-blocked from deleting themselves through this tool for safety.
- Customizable UI: Change the button colors, titles, and success messages directly from the WP admin to match your theme.
- The Shortcode: Drop
[remove_data_profile]onto any page (like a User Account or Settings page). - The Request: The user clicks the button, and the plugin sends an email with a unique, hashed token.
- The Wipe: Upon clicking the email link, the plugin:
- Wipes the user's comments.
- Sends a hook for custom cleanup.
- Deletes the user account.
- Notifies the site admin (optional).
If your site uses WooCommerce, BuddyPress, or custom tables, you’ll want to wipe that data too. You can hook into the deletion process easily:
add_action( 'rmd_before_delete_user', function( $user_id, $user ) {
// Delete custom meta, orders, or files here
// $user is the full WP_User object snapshot
}, 10, 2 );- Upload the
remove-my-datafolder to your/wp-content/plugins/directory. - Activate the plugin through the 'Plugins' menu in WordPress.
- Go to Remove My Data in your admin sidebar to configure your settings.
- Add the shortcode
[remove_data_profile]where you want the deletion card to appear.