{"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-05-17T12:14:15","modified_gmt":"2026-05-17T12:14:15","slug":"compass-kpi-dashboard-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/compass-kpi-dashboard-for-woocommerce\/","author":23495175,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"6.9.4","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-05-17 12:14:15","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":34,"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"}},"upgrade_notice":{"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"],"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."},"jetpack_post_was_ever_published":false},"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 v1.0 ships with eight 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<\/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>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>. No data leaves your server. 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<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. Compass v1.0 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 in v1.0 \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.<\/p><\/dd>\n<dt id=\"is%20there%20a%20settings%20page%3F\"><h3>Is there a settings page?<\/h3><\/dt>\n<dd><p>No. v1.0 has no user-configurable options on purpose \u2014 there is nothing to set up before running your first report. Settings will arrive in a later version 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.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:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/311172","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=311172"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/transactly"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=311172"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=311172"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=311172"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=311172"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=311172"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=311172"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}