Delete a WordPress theme without breaking your site
Updated October 30, 2026
You can delete a WordPress theme you don't use in about a minute. In wp-admin it's 4 clicks per theme, and with WP-CLI it's one command for all of them.
There are 3 ways. Appearance → Themes fits almost everyone. WP-CLI is quicker when you're cleaning up a pile of themes or several sites. The file manager is for the day wp-admin won't load at all.
But don't delete all of them. Leave one default theme installed, even if you never use it. Twenty Twenty-Five is the right spare, because it's what you switch to when your real theme breaks, and WordPress itself falls back to the default theme when the active one goes missing.
Everything else you can delete.
Delete a theme in wp-admin
This works the same on WordPress 6.x and 7.x, for block themes and classic themes.
- Go to Appearance → Themes.
- Hover over the theme you want gone and click Theme Details.
- Click Delete in the bottom-right corner of the details window.
- Click OK when your browser asks "Are you sure you want to delete this theme?"
WordPress shows "Theme deleted." at the top of the screen, and the folder is gone from wp-content/themes.
The WordPress docs are blunt about what that means: the theme's files and folders are deleted completely, and so is anything you changed inside them. If you ever edited a theme file directly, copy it somewhere first.
No Delete link?
You'll hit one of three things:
- It's the active theme. WordPress doesn't show Delete on the theme you're using. Activate another one first.
- It's the parent of your active child theme. WordPress refuses and tells you it can't delete a theme while it has an active child theme. Leave the parent alone; the child needs it.
- Your user isn't an administrator. Deleting themes needs the
delete_themescapability, which only administrators get on a normal site.
Delete themes with WP-CLI
If you've got SSH access, this is faster than clicking. First see what's inactive:
wp theme list --status=inactive
Then delete the ones you named:
wp theme delete twentytwentythree twentytwentyfour
You'll get "Success: Deleted 2 of 2 themes." There's also wp theme delete --all, which removes every theme except the active one. So it takes your spare with it. Skip --all unless you reinstall a default theme straight after.
And don't reach for --force. That flag exists to delete the active theme, which is never what you want on a live site.
Delete a theme folder by hand
When wp-admin is down, you can still remove a theme through your host's file manager or an SFTP client.
- Open the file manager in your hosting panel (or connect with SFTP).
- Go to
public_html/wp-content/themes/. If WordPress lives in a subfolder, it'spublic_html/your-folder/wp-content/themes/. - Find the folder with the theme's slug, like
twentytwentythree, and delete it.
This is also the official fix when a broken theme takes the whole site down: rename or remove the active theme's folder, and WordPress stops loading it. If a default theme is installed, it takes over. If none is, you're stuck uploading one by hand, and that's the day the spare earns its place.
Or ask your assistant
If your site is connected to Kitepod, you can do the cleanup from Claude or ChatGPT.
List the themes installed on my site, tell me which one is active, and delete every inactive theme except Twenty Twenty-Five.
You get the list before anything is removed, which is handy on an old site where nobody remembers who installed half of them. Deleting a theme always waits for a person in Kitepod, whatever approval setting the site uses, so each delete sits there until you click approve. The assistant can't approve it for you.
Kitepod isn't a backup service. If a theme has edits you might want back, take your own backup before you approve.
What goes wrong
A child theme shows up as broken
You deleted the parent of a child theme you weren't using yet, then activated the child. WordPress lists it under broken themes with "The parent theme is missing." Reinstall the parent from Appearance → Themes → Add Theme (labeled Add New Theme on some 6.x versions).
Your custom edits vanished
If someone edited the theme's functions.php or templates directly, deleting the theme deleted those edits. The only way back is a backup. That's why edits belong in a child theme or in custom CSS that survives updates.
The site went white after a manual delete
You removed the active theme's folder and there was no default theme to fall back on. Upload a fresh copy of Twenty Twenty-Five to wp-content/themes/ by SFTP, then log in and activate the theme you meant to use. If the screen stays white, the white screen guide walks through the rest.
Finer points
Is it safe to delete unused WordPress themes?
Yes, as long as it isn't the active theme, isn't the parent of your active child theme, and you keep one default theme as a spare. Your posts, pages, media and menus live in the database and the uploads folder, so deleting a theme doesn't touch them. Of the default Twenty-something themes, keep the newest one you've got and delete the rest.
Why can't I delete my WordPress theme?
It's either active, it's the parent of your active child theme, or your account isn't an administrator. Fix whichever applies and the Delete link shows up in Theme Details.
Can I get a deleted theme back?
Reinstall it. Free themes come back from Appearance → Themes → Add Theme, and paid ones from the zip the seller gave you. Any edits you made to its files only come back from a backup.