Audio Monkey

Price Intelligence
connecting…
Confidence-weighted revenue left on the table
products where we're cheaper than the market and could raise price
products undercut by a competitor
total price gap where we're beaten
products where we're the cheapest
products tracked · sources

Pricing problems, by urgency

Every product where at least one confidently-matched competitor is cheaper than us right now, worst gap first. ~70% of the catalogue sits at RRP parity — the toggle below collapses that noise so only genuine exceptions show.

ProductStatusOur priceBest competitor SellerGapGap %Since

Where competitors have the better price

The competitive picture per product — who beats us, by how much, and when that gap first appeared.

Where we have the cheapest price

Products where Audio Monkey beats every tracked competitor — sorted by how big our advantage is.

ProductOur priceNext cheapestSellerOur advantageHeadroom

Revenue upside — price-raise candidates

Where we're the cheapest by a meaningful margin, we're likely under-pricing. Raising toward the next-cheapest competitor captures margin without losing the price-leader position. Estimate assumes matching to just under the next competitor.

ProductOur priceNext competitorSuggested priceMargin/unit gained

Marketplace buy-box — eMAG & Altex

On marketplaces where Audio Monkey also sells directly, "competition" splits into two layers: our own listing vs. our own site (consistency), and our own listing vs. other sellers on the same product (the buy box). This shows the second layer — who holds the buy box per SKU per marketplace, confidently-matched offers only.

ProductMarketplaceStatusOur listingCheapest other sellerSeller# sellers

Own-channel consistency — #13

Our own marketplace listing price should match our own audiomonkey.ro price, and if we're on both eMAG and Altex those should agree with each other. A mismatch usually means a manual edit on one channel that never propagated.

ProductChannel APrice AChannel BPrice BGap

Market position

The strategic view — not "what do I do about this SKU" but "how healthy is our position overall, and where should attention go."

Gap distribution — #5

Where the whole catalogue sits vs. the market. The tall bar at 0% is the RRP-parity majority; the tail to the left is where competitors undercut us.

Share of cheapest — #40

Across matched SKUs, who holds the lowest price most often.

SellerWins / SKUs contestedShare

Match coverage by brand — #20, #68

What fraction of each catalogue has a confident competitor match, for the brands actually configured in price_match_rules (docs/competitors.md's tracked set) — not every raw Shopify vendor value, most of which aren't real brands worth chasing matches for. Brands with matching deliberately disabled (near-exclusives) are labeled, not counted as gaps.

BrandMatched / totalCoverageStatus

Brand scorecards — #65

One tile per tracked brand: parity rate, undercut count, biggest gap, cheapest-share — the whole picture in one row.

Category rollup — #66

Matched products grouped by category (inferred from the product title's first word — Boxe/Casti/Amplificator etc., since the catalog has no category field). Click a category to drill into its SKUs.

Brand vs. brand — #67

Compare competitive position across two tracked brands side by side.

vs

Reseller clusters — #15

Sellers appearing as a competitor on 2+ products — a repeat name is the pattern worth watching for a grey-market reseller. (The suppress-self guardrail is structural: our own listing is filtered out before it can ever be counted as a competitor anywhere in this dashboard.)

SellerProductsWhere seen

Exclusive-brand watchlist — #99

Brands where matching is off by policy (near-exclusive distribution). A calm confirmation nothing's changed — or a flag if a competitor has appeared.

History

What changed over time — sourced from the append-only price_history log. Depth grows as the live scraper accumulates more runs; a fresh install shows thin data here by design.

Undercut duration — #6

For each product currently beaten, how long the cheapest competitor has stayed below our price.

ProductCheapest competitorGapUndercut streak

Price-change event log — #10

Every observed price move, ours and competitors', newest first.

WhenProductSourceChangeDelta

Compare two products — #94

Overlay two products' price history to spot a brand-wide move vs. a product-specific one.

vs

Anomalies

Prices that don't look right — before they reach the hero figure, an alert, or a repricing decision. Flag, don't silently trust: the same principle as the match-confidence gate, applied to the price value itself.

Price-drop / spike detector — #77

Any single-step price move of 40%+ between two consecutive observations of the same product/source — a flash sale, or a scrape glitch.

WhenProductSourceChangeMove

Implausible-price quarantine — #78

Competitor prices below 10% or above 500% of our own price for the same product — far more likely a wrong match or a scrape/parsing bug than a real price. Never counts toward the hero, alerts, or any other panel.

WhenProductSourceTheir priceOur price

Our own price changes — #80

Every observed change to our own price — catches a bad import or accidental edit as fast as it catches a deliberate reprice.

WhenProductChangeMove

Gone quiet — #80

Previously-matched products with no competitor observation in the last 48h. Could mean the competitor delisted it, or the scraper just hasn't circled back yet — worth a manual check either way.

ProductLast seen

Cheapest but unavailable — #71

An out-of-stock competitor price that would otherwise look like the cheapest — not real competitive pressure, since nobody can actually buy at that price. Already excluded from every other panel's "cheapest" calculation; shown here so it doesn't just silently vanish.

ProductOut-of-stock sellerTheir priceOur price

We're out, they're not — #71

We're out of stock while a competitor still has inventory — a compounding lost sale on top of whatever the price gap already costs.

ProductIn-stock competitorTheir price

Out of stock AND undercut — #70

The compound case: we're out of stock, and the in-stock competitor is also cheaper than our own listed price — not just unavailable, but losing on price too if we did have it.

ProductOur priceIn-stock competitorTheir price

MAP / RRP break detector

Confidently-matched competitor prices that fall below a brand's configured MAP floor. Our most defensible reason to act — and evidence for a brand escalation. Only brands with map_enforced set in price_match_rules appear here.

ProductCompetitorMAP floorTheir priceDepth below floorSince

Repeat-offender leaderboard — #32

Sellers ranked by how often and how deep they break MAP — the chronic cutters worth a strategic conversation, not a one-off promo.

SellerBreaksProductsAvg. depth below floor

"Everyone at RRP except X" spotlight — #23

The cleanest, most defensible signal: a product where every other confidently-matched competitor sits at RRP and exactly one has broken ranks.

ProductThe one outlierTheir priceFieldSince

Our own parity breaks — #25

We're the outlier in an otherwise fully-parity field — catches our own mispricing. "Export evidence" copies a plain-text summary (SKU, RRP, our price, every competitor at parity with sources) formatted to paste into a report.

ProductOur priceRRPGapEvidence

Parity exception heatmap — #24

Brand × source grid — darker means more of that brand's matched catalogue is off RRP on that source.

Parity-break clusters — #79

Many SKUs in one brand breaking parity on the same day signals a coordinated brand-wide move, not scattered one-off noise.

BrandSKUs affectedDay

Needs match verification

Competitor offers below the confidence gate (70%) or flagged for manual review. Excluded from every other panel and from the hero figure until confirmed — no repricing decision should rest on a shaky match. Reason flags (#18) are a title-text heuristic for bundle/pair-vs-single mismatches — a hint to check, not a verdict. "Compare" (#17) opens a side-by-side to confirm without leaving the dashboard.

ProductCompetitorTheir priceConfidenceReason

Site issues — audit worklist

Storefront defects found in the 2026-07-21 catalogue audit, as a tickable list. Open each link to verify on the live site, then mark it fixed. Three categories re-verify themselves against the storefront (marked auto) — those checkmarks can appear on their own once you fix them in Shopify.

Keyboard: j/k move between rows, x toggles fixed, o opens the product link — #92.

Scrape health

Per source: when it last actually contributed data, and how much. A source that's silently stopped working is worse than no source at all — this is the thing that catches it before a decision gets made on stale prices.

SourceStatusLast contributedRows on file

Freshness-adjusted alerts — #28

Open alerts that reference a source past its freshness window — not suppressed (a real undercut still deserves attention even on a slightly old read), but flagged so it's weighted accordingly.

Recent activity

Price-match decisions and stock changes.

Open alerts

    Write-back queue

    Approved price-match suggestions, staged for Shopify — see #41 in the roadmap.

      Recent decisions

        Reports

        How actively pricing is being managed, and a snapshot of where we stand — the two things worth checking on a regular cadence.

        Decision activity — #82

        Every alert on file, by how it was resolved.

        Positioning snapshot — #84

        Strategy

        The CEO-level view — where we compete on price vs. value, which lines are actually contested, and one number for overall competitiveness.

        Positioning quadrant — #95

        Benchmark index — #98

        Battleground — #96

        Products with 2+ confidently-matched competitors — genuinely contested, worth active attention.

        ProductCompetitorsPosition

        Safe harbour — #96

        Exclusive/near-exclusive lines with little real competitive pressure by policy.

        BrandWhy

        Price-leadership goals — #97

        Triage

        The most urgent items across the whole dashboard, condensed into one scrollable list — built for a phone, works just as well as a fast top-N view on desktop.