Product pages go stale. Descriptions copied from the manufacturer, “Summer 2024” still in a product name, images without alt text, categories with no introduction, links to products you deleted last year. Each problem is small, but together they cost you search traffic and sales. Kaiizen Shelf Life
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.5 and PHP 7.4.
SourceWordPress plugins · Nov 10, 2026
01 / Source details
Aboutthistool.
Product pages go stale. Descriptions copied from the manufacturer, “Summer 2024” still in a product name, images without alt text, categories with no introduction, links to products you deleted last year. Each problem is small, but together they cost you search traffic and sales.
Kaiizen Shelf Life checks every product and product category in your WooCommerce store, gives each one a health score from 0 to 100, and shows you a prioritized list of what to fix first — in plain language, with a concrete “how to fix” for every issue.
It is made for store owners, not SEO experts. Instead of jargon you get messages like:
This product’s description is only 18 words. Add at least 132 more words — details about size, use, materials and what makes it different.
What it checks
Products
Thin descriptions – long description under 150 words, or no short description.
Duplicate descriptions – the same (or nearly the same) text on several products, usually copied from the manufacturer.
Outdated years and seasons – past years or campaigns like “Summer 2024” or “Black Friday 2023” in the name or descriptions. Years inside SKUs, links and image attributes are ignored.
Meta description – missing, too short or too long. Read from Yoast SEO, Rank Math or All in One SEO; without an SEO plugin, the short description is checked instead and the message says so.
SEO title – missing or likely to be cut off in search results (when an SEO plugin is active).
Images – no main image, too few images, or images without alt text.
Product details for Google – missing price, SKU, reviews, and GTIN or brand (only if your store uses them).
Out of stock for a long time – tracked from the day the plugin is installed.
Links to missing pages – links in the description to deleted, draft or private products and pages.
Not updated in a long time – a gentle reminder to review older products.
Empty categories, or categories where every product is out of stock.
Outdated years and seasons in the name or description.
Every threshold can be changed, and every check can be turned off, in Shelf Life → Settings .
How the fix list is ranked
Each check can take points off a page’s 100-point score, weighted by how serious the issue is (high, medium or low). The fix list puts first the pages that have the lowest scores and matter most — published, in stock, priced and featured products rank higher.
Built for real stores
Never changes your products on its own. The free plugin only reads and reports. It never edits content and never changes a product’s “last modified” date.
Fast on large catalogs. Full scans run in the background in small batches with Action Scheduler (included with WooCommerce), and unchanged products are skipped. Tested with 10,000 products.
Always up to date. Products and categories are re-checked automatically when you save them, when stock changes, and when you fix alt text in the Media Library. An optional weekly scan catches everything else.
Dismiss or snooze any issue that does not apply to you.
Dashboard widget on the WordPress dashboard with your store health and the top 3 fixes.
WP-CLI commands : wp kaiizen-shelf-life scan , status and reset .
Works with HPOS, multisite, right-to-left languages and screen readers.
Fully translatable.
For developers
Shelf Life is built to be extended. Actions and filters include:
kzsl_register_checks – add, replace or remove checks (implement Kaiizen\ShelfLife\Checks\CheckInterface , or extend AbstractCheck ).
kzsl_item_importance – replace the importance estimate, e.g. with traffic or sales data.
kzsl_item_context – add data to the snapshot checks receive.
kzsl_admin_tabs – add admin tabs with their own submenu item; kzsl_background_hooks – register background jobs so they are cleared on deactivation; kzsl_uninstall_site – remove add-on data on uninstall.
The React admin exposes JavaScript filters through @wordpress/hooks : kzsl.adminTabs , kzsl.itemRowActions , kzsl.itemsBulkActions , kzsl.detailPanelAfter , kzsl.dashboardAfterSummary , kzsl.settingsBefore and kzsl.settingsAfter . Enqueue your script on the kzsl_admin_enqueue_scripts action with kzsl-admin as a dependency.
The REST API lives under /wp-json/kaiizen-shelf-life/v1/ and requires the manage_woocommerce capability.
The un-minified source of the admin app is included in the src folder; build it with npm install && npm run build .
Premium version
Everything in this plugin is free and fully functional, with no limits on the number of products and no time limit. A separate Premium version, available from the plugin website , adds Google Search Console traffic data, sales-based priorities, AI-assisted writing, bulk content refresh, before-and-after results and a weekly email report. You never need it to use this plugin.
Privacy
The audit runs entirely on your own server. Kaiizen Shelf Life does not send your products, content or scan results anywhere. The only optional connection is the Freemius opt-in described under External services .
External services
This plugin connects to one external service, and only if you choose to:
Freemius (optional usage-data opt-in). The plugin includes the Freemius SDK. When you first open the plugin it asks whether you want to share basic usage information. Nothing is sent unless you click to opt in, and you can skip it and use every feature. If you opt in, Freemius receives your site URL, WordPress, PHP and plugin versions and your admin email address. Terms of service , privacy policy .
See it in action
Screenshots & previews.
Dashboard: your store health score, open issues by severity, the most common problems, and the products and categories to fix first.Products list: score, open issues, priority and stock for every product, with filters for severity, problem, category and stock status.Categories list: every product category scored and ranked by priority.Detail view: each issue explained in plain language, with a "How to fix" hint and Dismiss or Snooze buttons.Premium: Improve with AI on a product page. Rewrite the description, write a short description or suggest image alt text with the AI provider you connect in WordPress.Premium: review queue. Compare each AI draft side by side with the current text, then approve, edit or reject it. Nothing is saved until you approve.Premium: before and after results. Google visits, position and sales 14, 28 and 56 days after each change.Premium: settings for Google Search Console and AI writing (brand voice, tone and description length).
02 / Source details
Gettingstarted.
01Make sure WooCommerce 8.0 or newer is installed and active.
02Install Kaiizen Shelf Life from Plugins → Add New , or upload the zip file, then activate it.
03Open Shelf Life in the admin menu and click Scan store . The scan runs in the background — you can leave the page.
A first scan also runs automatically about an hour after activation while the weekly scan is enabled.
03 / Source details
Frequently asked questions.
Will this plugin change my products?
No. Shelf Life only reads your store and reports what it finds. It never edits product content and never changes a product’s “last modified” date. You make the fixes yourself, in the normal product editor.
Do I need an SEO plugin?
No. Shelf Life works on its own. If Yoast SEO, Rank Math or All in One SEO is active, it also checks the SEO titles and meta descriptions you set there. Without one, it checks the short description (for products) and category description instead, and says so in the message.
Will it slow down my store?
No. Nothing runs on your shop’s front end. Scans run in the background in small batches, skip products that have not changed, and re-checks after you save a product happen after the page has loaded.
How does it know a product has been out of stock for 30 days?
WooCommerce does not keep a stock history, so Shelf Life records the date a product goes out of stock from the day you install it. Products that were already out of stock on that day are counted from the install date, and the message says “at least” that many days.
A year in my product name is correct (a model year). What do I do?
Click Dismiss on that issue. Dismissed issues do not count against the score and stay dismissed through future scans. You can also Snooze an issue for 7, 30 or 90 days.
Why are only some products flagged for a missing GTIN or brand?
Those checks only run if at least 20% of your products already have a GTIN or brand, so stores that do not use them are not flooded with warnings.
Does it work with large stores?
Yes. It has been tested with 10,000 products. Scans use small batches, so no single request runs long, and memory use stays flat.
Does it work on multisite?
Yes. Each site has its own results and settings.
How do I scan from the command line?
wp kaiizen-shelf-life scan scans in the foreground with a progress bar (add --force to re-check unchanged items, or --background to queue a background scan). wp kaiizen-shelf-life status shows results and wp kaiizen-shelf-life reset clears them.
What happens when I delete the plugin?
Its database tables, settings, scheduled tasks and the out-of-stock dates it recorded are removed, on every site of a multisite network. Your products are not touched.
When removing the plugin with WP-CLI, run both commands as an administrator so the cleanup runs: wp plugin deactivate kaiizen-shelf-life --user=<admin> and then wp plugin uninstall kaiizen-shelf-life --user=<admin> .
Is there a Premium version?
Yes, as a separate download from the plugin website . This plugin does not depend on it: every feature here works without it.
FinderPress Media Auditor helps site administrators scan for broken images, missing Media Library files, unreachable media URLs, and other media issues across WordPress content. Use it to audit images, video, audio, PDFs, featured images, and attachment files without sending scan data to an external
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati