{"id":311172,"date":"2026-05-17T12:14:51","date_gmt":"2026-05-17T12:14:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/compass-kpi-dashboard-for-woocommerce\/"},"modified":"2026-10-19T21:05:51","modified_gmt":"2026-10-19T21:05:51","slug":"compass-kpi-dashboard-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/fr.wordpress.org\/plugins\/compass-kpi-dashboard-for-woocommerce\/","author":23495175,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.0","stable_tag":"1.2.0","tested":"7.1.3","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Compass. KPI Dashboard for WooCommerce","header_author":"Transactly","header_description":"WooCommerce KPI dashboard with action items and performance reports. Plain-English recommendations to grow sales. No nags, no bundled plugins.","assets_banners_color":"a7b1b8","last_updated":"2026-10-19 21:05:51","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/transactly.org\/compass\/","header_author_uri":"https:\/\/transactly.org","rating":0,"author_block_rating":0,"active_installs":0,"downloads":449,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"transactly","date":"2026-05-17 12:14:15","revision":3534518},"1.1.0":{"tag":"1.1.0","author":"transactly","date":"2026-08-13 13:29:43","revision":3645468},"1.2.0":{"tag":"1.2.0","author":"transactly","date":"2026-10-19 21:05:51","revision":3755555}},"upgrade_notice":{"1.2.0":"<p>Your Compass reports are now readable by AI assistants: three abilities registered via the WordPress Abilities API (WP 6.9+), exposed as MCP tools through the official MCP Adapter. Store-manager capability required; still zero outbound calls.<\/p>","1.1.0":"<p>Three new finding rules: category concentration risk, new-vs-returning mix shift, and a preventive inventory reorder warning. No new settings, no new external calls \u2014 drop-in upgrade.<\/p>","1.0.0":"<p>First public release of Compass.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.gif":{"filename":"icon-128x128.gif","revision":3534635,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.gif":{"filename":"icon-256x256.gif","revision":3534635,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3534518,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3534518,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.1.0","1.2.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3534518,"resolution":"1","location":"assets","locale":"","width":1280,"height":800},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3534518,"resolution":"2","location":"assets","locale":"","width":1280,"height":800},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3534518,"resolution":"3","location":"assets","locale":"","width":1280,"height":800},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3534518,"resolution":"4","location":"assets","locale":"","width":1280,"height":800},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3534518,"resolution":"5","location":"assets","locale":"","width":1280,"height":800}},"screenshots":{"1":"The Compass dashboard. One button generates a focused report from your local WooCommerce data.","2":"The report opens with an executive summary that leads with the highest-priority pattern, never with raw revenue.","3":"Each action item is a measurable pattern, plus a plain-English recommendation, plus a falsifiable test you can run to prove or disprove it.","4":"A \"Numbers for context\" appendix grounds the action items in the period's headline KPIs and your top five products.","5":"The About page makes the privacy stance and the clean-uninstall commitment explicit. Compass reads only your store's local data and removes everything it created when you delete the plugin."}},"plugin_section":[],"plugin_tags":[232,434,26384,3654,286],"plugin_category":[36,45],"plugin_contributors":[263249,263248],"plugin_business_model":[],"class_list":["post-311172","plugin","type-plugin","status-publish","hentry","plugin_tags-analytics","plugin_tags-dashboard","plugin_tags-kpi","plugin_tags-reports","plugin_tags-woocommerce","plugin_category-analytics","plugin_category-ecommerce","plugin_contributors-drashco","plugin_contributors-transactly","plugin_committers-transactly"],"banners":{"banner":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/banner-772x250.png?rev=3534518","banner_2x":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/banner-1544x500.png?rev=3534518","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/icon-128x128.gif?rev=3534635","icon_2x":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/icon-256x256.gif?rev=3534635","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/screenshot-1.png?rev=3534518","caption":"The Compass dashboard. One button generates a focused report from your local WooCommerce data."},{"src":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/screenshot-2.png?rev=3534518","caption":"The report opens with an executive summary that leads with the highest-priority pattern, never with raw revenue."},{"src":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/screenshot-3.png?rev=3534518","caption":"Each action item is a measurable pattern, plus a plain-English recommendation, plus a falsifiable test you can run to prove or disprove it."},{"src":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/screenshot-4.png?rev=3534518","caption":"A \"Numbers for context\" appendix grounds the action items in the period's headline KPIs and your top five products."},{"src":"https:\/\/ps.w.org\/compass-kpi-dashboard-for-woocommerce\/assets\/screenshot-5.png?rev=3534518","caption":"The About page makes the privacy stance and the clean-uninstall commitment explicit. Compass reads only your store's local data and removes everything it created when you delete the plugin."}],"raw_content":"<!--section=description-->\n<p>Compass turns your WooCommerce data into a focused report you can act on in an hour. One click produces a short executive summary, a ranked list of action items, and the period numbers for context \u2014 all from your store's own database.<\/p>\n\n<p>Every action item is built around the same four questions:<\/p>\n\n<ul>\n<li><strong>What's the pattern?<\/strong> A specific, measurable observation about your store.<\/li>\n<li><strong>Why does it matter?<\/strong> One sentence on the business impact.<\/li>\n<li><strong>What should you do?<\/strong> A concrete next step you can take today.<\/li>\n<li><strong>How will you know it worked?<\/strong> A falsifiable test with a measurable outcome.<\/li>\n<\/ul>\n\n<h4>What Compass looks for<\/h4>\n\n<p>Compass ships with eleven Tier-1 finding rules. None of them is a number you can already see at a glance in the WooCommerce \u2192 Reports tab \u2014 they're patterns the reports tab can't surface. Each rule has a strict trigger threshold; rules that don't apply to your store stay silent. Empty audits are the right answer when nothing is wrong.<\/p>\n\n<ul>\n<li><strong>Stockout cost<\/strong> \u2014 currently out-of-stock products that were selling, with estimated lost revenue.<\/li>\n<li><strong>Discount dependency<\/strong> \u2014 the share of paid orders that used a coupon, and how much margin discounts absorbed.<\/li>\n<li><strong>Product rank trajectory<\/strong> \u2014 top-30 products that fell five or more ranks versus the prior period.<\/li>\n<li><strong>Single-product concentration risk<\/strong> \u2014 when one product carries too much of your store's revenue.<\/li>\n<li><strong>Payment-method completion gap<\/strong> \u2014 gateways with materially worse completion rates than their peers.<\/li>\n<li><strong>Refund-reason cluster<\/strong> \u2014 a keyword crossing 30% of refund notes across multiple SKUs (sizing, damage, expectation gap, etc.).<\/li>\n<li><strong>Geographic concentration<\/strong> \u2014 the top three postcode prefixes accounting for more than half of revenue.<\/li>\n<li><strong>Year-over-year anomaly<\/strong> \u2014 current 30-day window deviating from same-period-last-year after normalising for store growth.<\/li>\n<li><strong>Category concentration risk<\/strong> <em>(new in 1.1)<\/em> \u2014 top product category accounting for more than half of revenue.<\/li>\n<li><strong>New vs returning customer mix shift<\/strong> <em>(new in 1.1)<\/em> \u2014 new-customer share moving 20+ percentage points versus the prior 90 days.<\/li>\n<li><strong>Inventory reorder warning<\/strong> <em>(new in 1.1)<\/em> \u2014 top-revenue products with less than 14 days of stock at the current sales rate.<\/li>\n<\/ul>\n\n<h4>What you get<\/h4>\n\n<ul>\n<li>A short executive summary that leads with the highest-priority pattern.<\/li>\n<li>A ranked list of action items with confidence, impact, and effort bands.<\/li>\n<li>A \"Numbers for context\" appendix with paid orders, revenue, average order value, repeat-customer share, and your top five products.<\/li>\n<li>A downloadable Markdown copy of the report you can paste into a doc, an email, or a Slack thread.<\/li>\n<\/ul>\n\n<h4>Works with AI assistants<\/h4>\n\n<p>On WordPress 6.9 or newer, Compass registers three abilities with the WordPress Abilities API:<\/p>\n\n<ul>\n<li><code>compass\/get-findings<\/code> \u2014 read the latest report: executive summary plus ranked action items.<\/li>\n<li><code>compass\/run-audit<\/code> \u2014 generate a fresh 90-day report (it also appears on the Latest Report admin page).<\/li>\n<li><code>compass\/get-kpi-summary<\/code> \u2014 headline KPIs: paid orders, revenue, average order value, repeat-customer share, and top products, current vs prior period.<\/li>\n<\/ul>\n\n<p>Install the official WordPress MCP Adapter plugin and these become MCP tools automatically, so an AI assistant connected to your site \u2014 Claude, ChatGPT, or any MCP client \u2014 can answer \"what should I fix in my store this week?\" with Compass's ranked action items. Every ability requires the same store-manager capability (<code>manage_woocommerce<\/code>) as the Compass admin pages. On older WordPress versions the abilities simply aren't registered and everything else works unchanged.<\/p>\n\n<h4>Privacy<\/h4>\n\n<p>Compass reads only your local WooCommerce data \u2014 orders, products, refunds, coupons, and shipping addresses. It makes <strong>zero external HTTP calls<\/strong>. Compass never pushes data anywhere. No telemetry, no phone-home, no API keys required. The plugin is reviewable in a sandbox and works on stores behind a firewall or in staging.<\/p>\n\n<p>The AI-assistant abilities are inbound-only: an assistant can read your Compass data only when you connect it to your site yourself, and only after it authenticates through WordPress's own APIs with store-manager permission.<\/p>\n\n<h4>Clean uninstall<\/h4>\n\n<p>When you remove Compass, every option, transient, and cached value the plugin created is deleted. We don't leave database garbage behind. The cleanup is multisite-aware and works correctly with persistent object caches like Redis or Memcached.<\/p>\n\n<h4>Roadmap<\/h4>\n\n<p>A PRO version with weekly automated reports, GA4 \/ Search Console signals, and AI-assisted causal analysis is in development at https:\/\/transactly.org\/compass\/ \u2014 see the About page in the plugin for details. The free Compass plugin is fully usable on its own and is not gated on the PRO release.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Make sure WooCommerce is installed and active.<\/li>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>, or install via Plugins \u2192 Add New \u2192 Upload Plugin.<\/li>\n<li>Activate Compass through the Plugins screen.<\/li>\n<li>Open the new \"Compass\" item in the WP admin sidebar and click <strong>Run Report<\/strong>.<\/li>\n<\/ol>\n\n<p>The first report typically takes a few seconds to a few seconds-and-change to generate, depending on order volume. Subsequent reports within an hour are served from a transient cache.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20compass%20send%20my%20data%20anywhere%3F\"><h3>Does Compass send my data anywhere?<\/h3><\/dt>\n<dd><p>No. Every number in the report comes from your store's own database. Compass makes no external HTTP calls \u2014 that is a deliberate design choice, not an oversight. It removes a whole class of review concerns and lets the plugin run in environments without outbound internet. (The first feature with optional outbound calls \u2014 PageSpeed Insights \u2014 is planned for v1.5 and will ship behind a default-off toggle.)<\/p>\n\n<p>If you connect an AI assistant to your site (see the next question), that assistant reads your data through WordPress's own authenticated APIs at your initiative \u2014 Compass itself still sends nothing anywhere.<\/p><\/dd>\n<dt id=\"can%20ai%20assistants%20read%20my%20compass%20reports%3F\"><h3>Can AI assistants read my Compass reports?<\/h3><\/dt>\n<dd><p>Yes, on WordPress 6.9 or newer. Compass registers three abilities with the WordPress Abilities API \u2014 <code>compass\/get-findings<\/code>, <code>compass\/run-audit<\/code>, and <code>compass\/get-kpi-summary<\/code>. Install the official WordPress MCP Adapter plugin and they become MCP tools that any connected MCP client (Claude, ChatGPT, and others) can call, so you can ask your assistant \"what should I fix in my store this week?\" and get Compass's ranked action items. Every ability requires the <code>manage_woocommerce<\/code> capability \u2014 the same gate as the Compass admin pages. On WordPress older than 6.9 the abilities are simply not registered, and the rest of the plugin works unchanged.<\/p><\/dd>\n<dt id=\"is%20there%20a%20settings%20page%3F\"><h3>Is there a settings page?<\/h3><\/dt>\n<dd><p>No. The free plugin has no user-configurable options on purpose \u2014 there is nothing to set up before running your first report. Settings will arrive when a feature genuinely requires them (the planned PageSpeed integration in v1.5 is the first such feature).<\/p><\/dd>\n<dt id=\"does%20compass%20work%20with%20high-performance%20order%20storage%20%28hpos%29%3F\"><h3>Does Compass work with High-Performance Order Storage (HPOS)?<\/h3><\/dt>\n<dd><p>Yes. All order queries use the WooCommerce CRUD API (<code>wc_get_orders()<\/code>, <code>wc_get_order()<\/code>) and work in both legacy post-table and HPOS modes. Refund and order-item handling uses the documented <code>instanceof WC_Order<\/code> \/ <code>instanceof WC_Order_Refund<\/code> guards so refund objects never leak into order iteration.<\/p><\/dd>\n<dt id=\"can%20i%20download%20the%20report%3F\"><h3>Can I download the report?<\/h3><\/dt>\n<dd><p>Yes. The Latest Report page has a \"Download as Markdown\" button that ships exactly what you see on screen as a <code>.md<\/code> file you can paste into any document, email, or chat tool.<\/p><\/dd>\n<dt id=\"how%20does%20compass%20decide%20which%20findings%20are%20most%20important%3F\"><h3>How does Compass decide which findings are most important?<\/h3><\/dt>\n<dd><p>Each finding is calibrated against a 1\u201310 priority score based on the size of the underlying signal (e.g., percentage share of revenue, magnitude of a rank drop, gap size in completion rates). Reports are sorted by priority descending, capped at the top 10. Patterns below priority 4 don't ship.<\/p><\/dd>\n<dt id=\"what%20if%20my%20store%20doesn%27t%20have%20enough%20data%20yet%3F\"><h3>What if my store doesn't have enough data yet?<\/h3><\/dt>\n<dd><p>If your current 90-day window has fewer than 10 paid orders, Compass returns a \"data sufficiency\" notice instead of running the rules. Findings on a tiny sample are misleading; an honest \"not enough data yet\" is more useful.<\/p><\/dd>\n<dt id=\"why%20%22compass.%22%20with%20a%20period%3F\"><h3>Why \"Compass.\" with a period?<\/h3><\/dt>\n<dd><p>Brand. The plugin's job is to point at the next thing worth doing \u2014 declarative, not exploratory.<\/p><\/dd>\n<dt id=\"how%20do%20i%20report%20a%20bug%20or%20request%20a%20feature%3F\"><h3>How do I report a bug or request a feature?<\/h3><\/dt>\n<dd><p>Open a thread on the WordPress.org support forum for this plugin. Reproducible steps with WordPress + WooCommerce versions are appreciated.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Compass now works with AI assistants: on WordPress 6.9+, three abilities are registered with the WordPress Abilities API \u2014 <code>compass\/get-findings<\/code> (read the latest report), <code>compass\/run-audit<\/code> (generate a fresh one), and <code>compass\/get-kpi-summary<\/code> (headline KPIs, current vs prior period).<\/li>\n<li>With the official WordPress MCP Adapter installed, these appear automatically as MCP tools for any connected AI client (Claude, ChatGPT, and others).<\/li>\n<li>Every ability requires the <code>manage_woocommerce<\/code> capability \u2014 the same gate as the Compass admin pages. On WordPress older than 6.9, nothing is registered and the plugin behaves exactly as before.<\/li>\n<li>Still zero outbound HTTP calls. The abilities are inbound-only, through WordPress's own authenticated APIs.<\/li>\n<li>Fix: Compass now declares High-Performance Order Storage (HPOS) compatibility to WooCommerce, so it no longer appears as \"incompatible\" on the WooCommerce &gt; Settings &gt; Advanced &gt; Features screen. (Compass has always used the HPOS-safe CRUD API; only the declaration was missing.)<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Three new Tier-1 finding rules:\n\n<ul>\n<li><strong>OOS-11 Category concentration risk<\/strong> \u2014 top product category accounting for more than half of revenue, with the next-strongest categories surfaced for diversification.<\/li>\n<li><strong>OOS-12 New vs returning customer mix shift<\/strong> \u2014 current 90 days vs prior 90 days, fires on a 20-percentage-point swing either way.<\/li>\n<li><strong>OOS-13 Inventory reorder warning<\/strong> \u2014 top-revenue products with less than 14 days of supply at the current sales rate. The preventive companion to OOS-01.<\/li>\n<\/ul><\/li>\n<li>Tested up to WordPress 7.0.<\/li>\n<li>Still local-data-only \u2014 zero external HTTP calls. Same clean-uninstall guarantee.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Eight Tier-1 finding rules covering stockouts, discount dependency, rank trajectory, concentration risk, payment-method completion gap, refund-reason clusters, geographic concentration, and YoY anomaly.<\/li>\n<li>Local-data-only \u2014 zero external HTTP calls.<\/li>\n<li>HPOS-compatible.<\/li>\n<li>Clean uninstall \u2014 every option, transient, and cached value is removed.<\/li>\n<li>Markdown export of the report.<\/li>\n<\/ul>","raw_excerpt":"WooCommerce KPI dashboard with action items and performance reports. Plain-English recommendations to grow sales. No nags, no bundled plugins.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/311172","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=311172"}],"author":[{"embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/transactly"}],"wp:attachment":[{"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=311172"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=311172"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=311172"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=311172"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=311172"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=311172"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}