Pruneline

Find what breaks or lingers after plugins and builders change: missing blocks and widgets, unused templates and patterns, leftover plugin data.

Updated Oct 17, 2026
  • WordPress 6.5 – 7.1
  • PHP 7.4+

The free version is waiting for review at WordPress.org

WordPress.org checks every new plugin before listing it, which usually takes a few weeks. Follow Pruneline and we’ll email you the day it’s available.

Pruneline banner

When you switch off or delete a plugin, its pieces stay behind. Pages keep blocks and widgets that nothing draws any more. Saved templates and patterns pile up, and nobody knows which are still used. Options, tables and scheduled events stay in the database. Pruneline scans your site, tells you what is missing, what is unused and what was left behind, and by which plugin. Scanning only reads. Nothing changes until you choose to move something to the Trash or delete leftover data, and leftover data is exported first.

The scan

  • Everything is under Tools → Pruneline, in tabs: Overview, Blocks, Page builders, Patterns & parts, Elementor, What breaks, Leftover data and Handover report.
  • Scan the site reads your posts, pages and every other kind of content, block widgets and your block theme's template files. Big sites are scanned in batches, with a progress bar.
  • It also reads the code of your installed plugins and themes, so it knows which blocks, widgets, options, tables and scheduled events belong to which plugin, even after the plugin is switched off.
  • Published and private content is scanned, and drafts, pending and scheduled posts too unless you turn that off. The trash and revisions aren't.
  • Saving a post updates the results straight away, so they stay current between scans.
  • The Overview sums up what to look at in each list, and which editors and page builders your pages use.
  • Every list can be searched, sorted and downloaded as CSV.

Missing blocks, widgets and modules

  • Blocks: blocks in your content that no active plugin or theme provides, with the plugin they came from, how many places use them, and how many of those are drafts. Where used lists each page, with a link to edit it.
  • A block whose plugin is active but registers it only in the editor is marked Needs confirmation, not Missing.
  • Page builders: widgets and modules that nothing on the site provides now, for Elementor, Beaver Builder, SiteOrigin Page Builder, Bricks, Oxygen, Divi and WPBakery. A page built with a builder that is switched off shows as Builder inactive.

Templates, patterns and menus

  • Templates: saved Elementor, Beaver Builder, Divi, Bricks and Oxygen templates and layouts, and where each one is used.
  • Templates applied by display conditions, popups opened by their own triggers and the active Elementor site kit are marked as such, not as unused.
  • No reference found marks the ones that nothing Pruneline scanned points at. Select them and Move to Trash. You can restore them from the Trash.
  • Patterns & parts: synced patterns, template parts and navigation menus, and where each one is used: in content, in other patterns, in templates, in widgets and in your theme's files. Unused ones can go to the Trash too.

Elementor

  • Widget usage: which Elementor widgets each page uses, drafts included, and how many are missing.
  • Hidden everywhere: Elementor elements hidden on every device. Visitors never see them, but they still load. HTML, Shortcode and Code widgets get a note, because their script or shortcode may still run.
  • A small panel in the Elementor editor lists the page's shortcodes and whether each one works.

What breaks, and what was left behind

  • What breaks: for each plugin and theme, including deleted ones, the blocks, Elementor widgets, shortcodes, scheduled events and leftover data that depend on it. Check it before you remove a plugin.
  • Leftover data: options, database tables, scheduled events (WP-Cron and Action Scheduler) and post and user meta that inactive or deleted plugins left behind, with the plugin that left them and how Pruneline knows: Named in its code or Matches its prefix.
  • WordPress's own data, and data an active plugin or theme names in its code, is never listed.
  • Data whose owner can't be found is listed but can't be deleted from here. Neither can data a free plugin and its paid add-on keep for each other.
  • Cleaning up takes three steps: download a JSON export of what will go, tick a box, then delete. Database tables are exported as their structure only, so back up your database first.
  • A Site Health check lists scheduled events that inactive or deleted plugins left behind.

Handover report

  • One page on how the site is built: the theme, the editors and active plugins, templates and where they're used, Elementor's global colours and fonts, which add-on each widget comes from, and the blocks from plugins. Print it or save it as PDF for a client or the next developer.

WP-CLI

  • wp pruneline scan, wp pruneline list <audit> and wp pruneline report scan, list any audit (as a table, CSV or JSON) and print the handover report.

For developers

  • Filters and actions for the scan (pruneline_sources, pruneline_scan_finished), what counts as registered (pruneline_registered), template types and how they're applied (pruneline_template_types, pruneline_template_applied), protected data and cleanup (pruneline_protected, pruneline_cleanup_capability, pruneline_cleaned), the audits and the report (pruneline_audits, pruneline_report), who can use it (pruneline_capability) and the settings page (pruneline_settings).
  • pruneline_loaded fires once Pruneline has loaded, for add-ons.
  • No WooCommerce or other plugin needed.

With Bracketline, our free shortcode audit, active, What breaks also counts each plugin's shortcodes, and the Elementor panel links each shortcode to its page in Bracketline.

Pruneline is free, with nothing locked. See extendiment.com/plugins/pruneline for the docs.

Screenshots

  • Tools → Pruneline1 / 8Scan the site, then see how many items each list has to look at, and which editors and page builders your pages use.
  • Blocks2 / 8Blocks in your content that no active plugin provides, the plugin they came from, and how many places use them.
  • Page builders3 / 8Saved templates and where each one is used, applied by display conditions, or with no reference found.
  • Patterns & parts4 / 8Synced patterns, template parts and navigation menus, and where each one is used.
  • Elementor5 / 8Elements hidden on every device, with a note when their script or shortcode may still run.
  • What breaks6 / 8For each plugin and theme, the blocks, widgets, shortcodes, scheduled events and leftover data that depend on it.
  • Leftover data7 / 8Options, tables, scheduled events and meta that inactive and deleted plugins left behind, and how Pruneline knows.
  • The handover report8 / 8How the site is built, ready to print or save as PDF.

No releases published yet.

You might also like