{{ pageTitle }}
{{ pageVer }}
{{ pageSub }}
Week of
{{ meta.runDate }}
Market
What we shop every week
{{ prog.scopeNote }}
{{ c.value }}
{{ c.label }}
{{ c.note }}
Price checks per run
{{ prog.perRunMath }}
{{ prog.perRun }}
{{ prog.perMonth }}
per month
{{ prog.perYear }}
per year · {{ prog.weeks }} shopping weeks
{{ prog.skuLines }}
SKUs tracked
unique part numbers under watch
{{ prog.brands }}
Brands covered
across the shopped categories
{{ prog.perMarket }}
Checks per market
each of the 8 markets, weekly
{{ prog.coverage }}
Catalog coverage
of {{ prog.catalogCats }} Big-4 parts categories
Categories by group
Every category gets the same 200-SKU depth
{{ g.cats }} cats · {{ g.perRun }} checks
What we deliberately leave out
Scope decisions, stated up front
Tools, shop & chemicals
Not vehicle parts. Excluded from the program entirely.
{{ prog.excluded }} commodity categories
{{ prog.excludedNote }}
Categories all four carry
If a category isn't stocked by all four retailers there's nothing to compare, so it's out.
The long tail
We shop the top 200 sellers per category, not the full catalog — that's where pricing decisions actually get made.
This week
{{ marketLabel }} · vs week of {{ meta.prevRunDate }}
Next refresh {{ meta.nextRunDate }}
{{ sum.headline }}
{{ sum.subline }}
{{ k.value }}
{{ k.label }}
{{ k.sub }}
Top 5 brands
Share of sampled SKUs across the shopped program
{{ b.name }}
{{ b.pct }} of sampled SKUs
Deepest categories
How deep the Big-4 catalog runs — the weekly shop samples the top 200 of each
{{ t.count }} catalog SKUs
{{ t.group }}
Biggest price increases
Largest moves up since last week
{{ m.pn }}
{{ m.delta }}
{{ m.was }} → {{ m.now }}
Climbing the ranks
Biggest jumps up the top-seller list
{{ m.pn }}
▲ {{ m.move }}
#{{ m.prev }} → #{{ m.rank }}
Falling back
Biggest drops down the top-seller list
{{ m.pn }}
▼ {{ m.move }}
#{{ m.prev }} → #{{ m.rank }}
⌕
{{ matrixCount }} SKUs
| {{ h.label }} | ||||||
|---|---|---|---|---|---|---|
| {{ r.rank }} | {{ r.pn }} | {{ r.brand }} | {{ r.partType }} | {{ c.txt }} |
|
{{ r.idx }} |
Green price = lowest of the four on that SKU. Rank in type shows where that part sits on price among every SKU of the same subtype, per retailer. Index compares O'Reilly against the lowest competing price — negative means O'Reilly is under the market.
{{ k.value }}
{{ k.label }}
{{ k.sub }}
Where O'Reilly sits
Every SKU carried at O'Reilly and at least one competitor
Under the market
{{ idx.under }}
At market (±1%)
{{ idx.match }}
Over the market
{{ idx.over }}
Head to head
Share of SKUs where each competitor undercuts O'Reilly
{{ v.name }}
{{ v.beats }}/{{ v.n }} cheaper · avg {{ v.avg }}
| {{ h.label }} | ||||||
|---|---|---|---|---|---|---|
| {{ r.pn }} | {{ r.brand }} | {{ r.oreilly }} | {{ r.rival }} | {{ r.rivalName }} | {{ r.gap }} | {{ r.badge }} |
Week of {{ meta.runDate }} vs {{ meta.prevRunDate }} · {{ marketLabel }}
| {{ h.label }} | ||||||
|---|---|---|---|---|---|---|
| {{ r.kind }} | {{ r.pn }} | {{ r.brand }} | {{ r.retailer }} | {{ r.posArrow }} {{ r.posTxt }} {{ r.posWasTxt }} | {{ r.detail }} | {{ r.delta }} |
{{ k.value }}
{{ k.label }}
⌕
{{ cov.count }} categories
| {{ h.label }} | |||||
|---|---|---|---|---|---|
| {{ r.id }} | {{ r.group }} | {{ r.partType }} | {{ r.subtype }} |
|
{{ r.skus }} |
Classified per the PJX Part Classification Standard — Part Type is the bare noun, Subtype is the licensing unit, Variant is a nullable filter. Every part type carries 200 SKUs × 4 retailers = 800 listings; brand counts below sum to that 800.
Pick a SKU to inspect
Click any row on the Price Matrix to open it here.
{{ det.pn }}
{{ det.brand }}
Rank #{{ det.rank }}
{{ det.group }} › {{ det.partType }} › {{ det.subtype }} › {{ det.variant }}
{{ c.name }}
LOWEST
{{ c.price }}
{{ c.note }}
vs O'Reilly {{ c.gap }}
Price across all {{ meta.markets }} markets
| Market | {{ rn }} |
|---|---|
| {{ m.name }} | {{ c.txt }} |
Part number
Paste part numbers
one per line or comma separated · up to 100
{{ qBulkCount }} / 100
Market
Retailers
Shopping {{ qMarketName }} — visiting each retailer
{{ s.name }}
{{ s.status }}
{{ s.count }}
Include
Exclude
{{ qShown }} of {{ qTotal }} rows
| {{ h.label }} | |||||
|---|---|---|---|---|---|
| {{ r.retailer }} | {{ r.part }} | {{ r.brand }} | {{ r.price }} | {{ r.store }} | {{ r.online }} |
Internal
Feasibility model — not client-facing. Only hard anchor is the Ford contract at {{ econ.fordRate }}/shop for 245,369 shops. This program is {{ econ.volumeX }} that volume.
Scope
{{ i.label }}
{{ i.hint }}
Rate per shop
what WebFetch charges us at volume
Fixed cost / yr
hosting, pipeline, support
Target margin %
{{ econ.cats }}
Shoppable categories
cards + named subtypes
{{ econ.perRun }}
Shops per week
{{ econ.perYear }} per year
{{ econ.totalCost }}
Cost to run / yr
{{ econ.shopCost }} shops + {{ econ.fixedF }} fixed
Sell at {{ econ.marginF }} margin
{{ econ.priceF }}/yr
{{ econ.monthlyF }} per month · {{ econ.profitF }} gross profit
Per category
{{ econ.perCatMo }}/mo
{{ econ.perCatYr }} per year
{{ econ.verdict }}
Cost curve by negotiated rate
Click a rate to model it. The Ford rate is what low volume costs — this program should price far below it.
This week's reports
Files reflect the week of {{ meta.runDate }}. Refreshed automatically each Monday — nothing for your team to run.