For agencies
The chapter your audit report does not have — what the catalogue itself is costing the client. Free version, no account, no writes.
A WooCommerce audit you sell today is mostly infrastructure: speed, plugin conflicts, versions, checkout, payment gateways, security, error logs. Merchlint does almost none of that and is not trying to — of its seventeen checks, about three would belong in that report at all.
It does the part those audits leave out: the catalogue as a commercial object. Which products sold last year and cannot be bought today. Which sale prices expired in March and are still running. Which SKUs are duplicated, so the feed quietly merges them. None of it reports itself on the storefront, which is exactly why it survives a technical audit intact.
So this is a chapter you can add to a report you already sell. Seventeen checks run in about forty seconds, and every finding comes with the field and value it was based on, so the write-up is a filter away rather than a re-investigation.
Everything here works in the free version
There is no agency tier to buy. The plugin is GPL, the seventeen checks have no product cap, and nothing on this page needs a licence key.
wp plugin install merchlint --activate
wp merchlint scan
wp merchlint export > audit-clientname-2026-09.csv
Nine commands are available — scan, status, cancel, findings, rule, export, hide,
unhide, hidden. Every path in the admin has an equivalent without a browser, which is what makes
this usable across twenty stores instead of one.
Over a set of sites you manage, that becomes a loop:
for site in client-a client-b client-c; do
wp --path="/srv/$site" merchlint scan
wp --path="/srv/$site" merchlint export > "reports/$site.csv"
done
Why this is safe to run on a client’s production store
It writes nothing. No product, price, stock level, order, option or media file is modified. The only rows it creates are its own results table. That is enforced by an automated gate on every build, not by convention — the reasoning is on why there is no “Fix it” button.
It makes no outbound connections. Nothing about your client’s catalogue leaves their server. There is no account, no sign-up and no telemetry, which also means there is nothing to put in a data processing agreement.
It is resumable and bounded. Scanning runs in batches through Action Scheduler with a hard time budget per batch; a 50,000-product catalogue completes in about 91 seconds and survives the PHP process being killed halfway.
What you get that a checklist does not
Ranking by revenue. Findings are ordered by what each product actually earned over the past twelve months, read from the store’s own order data. On a client call, “these three products earned 12,400 zł last year and cannot be bought today” is a different conversation from “you have 247 issues”.
Deterministic results. Two scans of an unchanged store produce the same list, item for item. A separate screen shows what changed between scans and whether the difference came from the store or from a rule of ours getting smarter. You can hand a client a before-and-after without caveats.
Evidence per finding, which is what survives a client saying “that is not true”.
What does not exist yet, stated plainly
- No central panel. Each store is scanned on its own; the CSV export is how you aggregate today.
- No white-label. Reports carry no branding at all, yours or ours, but there is nothing to rebrand either.
- No scheduled scans or email alerts in the free version.
Those three are the agency roadmap, and they are deliberately not being built yet. The plugin has been public since 1 September 2026; building a multi-store panel before knowing whether agencies want one is how a solo project spends its entire budget on a guess.
Which is where you come in
If you manage WooCommerce stores, we want to hear how you audit them now, what you charge for it, and what would have to be true for a tool to be worth paying for. Not a sales call — there is nothing to sell yet, and that is exactly why the answers are useful.
contact@merchlint.com — replies within a working day, from the person who wrote it.