Blog

How to set up competitor price monitoring

Adapted from building the Smyalichi platform

How to set up competitor price monitoring

Introduction

If you run an e-commerce store, clinic, or service business, you hear “Why is the competitor cheaper?” at least once a week. Manual price collection means dozens of open tabs, messy spreadsheets, and lost margin.

At Smyalichi we walked this path ourselves — first collecting prices by hand for our own healthcare project, then automating it, and later turning the stack into a dedicated monitoring product at price.smyalichi.ru.

This article is a step-by-step playbook that works beyond medical clinics: from food delivery to construction materials.

Step 1. Define data sources — where prices come from

The classic early mistake is trying to monitor everyone at once. Start small.

Who to include

  • Direct competitors (3–5 companies in your region) — your day-to-day benchmark
  • Market leaders (1–2 large chains) — for strategic positioning
  • Unexpected competitors — e.g. clinics in a neighboring city winning your patients with online consults

Data sources

  • Competitor websites — the main channel: product/service pages, promos, category listings
  • Published price lists — PDF or Excel on their sites
  • Marketplace listings — when your category lives there (pharma, parts, electronics)
  • Aggregator APIs — advanced, for large-scale collection

From our practice. For the “MRI Leader” healthcare project we started with three competitor sites in one city and five key exams (brain, spine, joints MRI, etc.). That was enough to see 30–40% spreads on comparable studies.

Step 2. Matching rules — the hard technical problem

You collected a thousand prices from five sites. How do you know competitor A’s “abdominal ultrasound” is the same as competitor B’s “ultrasound of abdominal organs?”

Your matching rule stack is the brain of the monitor.

Identification hierarchy

Layer rules strictly:

  • Level 1 — your internal ID. If you have SKU/article in your system, anchor on it.
  • Level 2 — exact title match. Identical names or identical after noise cleanup.
  • Level 3 — partial / keyword match. Brand, model, key attributes.
  • Level 4 — manual match. Everything the model misses goes to a human.

In practice

In Smyalichi we combine:

  • Custom PHP (Symfony) parsers for collection
  • Regex cleanup for noisy titles
  • Partial rules for near-duplicates (“knee MRI” vs “MRI of the knee joint”)
  • A UI for unmatched rows

Important: do not chase 100% automation. 80–90% auto-match is a strong outcome.

Step 3. Refresh cadence — how often to update

Cadence depends on category and goals.

Category Suggested cadence Why
Retail, delivery 1–4× per day Promo-driven volatility
Electronics, construction Daily Enough to react
Medical services, B2B services 1–2× per week Prices move slower
Flights, hotels Near real-time Dynamic pricing

For medical monitoring we picked twice a week — Tuesday and Thursday afternoons. By then competitors usually refreshed weekly pricing, and we still had runway before Friday to act.

Step 4. Comparison mechanics — how to analyse

You have the dataset. Now what?

Baseline report metrics

  • Compare competitor average to your price — show % delta
  • One matrix: every competitor vs each of your SKUs/services
  • Per item: min, max, and market average
  • Day-over-day tracking — simple charts on key SKUs

Traffic-light priorities

  • Red — you are >10% above market on top sellers → act
  • Amber — +3–10% → watch
  • Green — below or aligned with market → healthy

Smyalichi report example. On one clinic site a competitor’s spine MRI looked 22% cheaper. On inspection, their quote excluded the radiology report. The client adjusted price but kept the report bundled — conversion improved.

Step 5. Operationalising change — responding to signals

Monitoring is useless if decisions do not follow.

When a competitor cuts price

  • Match the cut — to regain leadership (watch for price wars)
  • Add value — hold price, strengthen the bundle (speed, reporting, warranty)
  • Segment offers — price-sensitive vs premium service buyers

Rituals with ready-made reports

  • Weekly 15-minute review: traffic light + decisions on red items
  • Telegram alerts: “Competitor thyroid ultrasound is 15% below yours — suggested response…”
  • Monthly strategy: trend review and pricing adjustments

Tooling by stage

Stage Tooling Time to launch
Manual, up to ~10 SKUs Spreadsheets + site walkthrough 1 day
Automated up to ~100 SKUs price.smyalichi.ru 1–2 days setup
Industrial 1000+ SKUs price.smyalichi.ru API + ERP (e.g. 1C) 1–2 weeks

Common mistakes

  • Monitoring too many players → start with 3–5 competitors and 20–50 hero SKUs
  • Reacting to every tick → only meaningful moves (≈5–10%)
  • Ignoring bundle terms → compare apples to apples (shipping, warranty, service)
  • No automated reporting → you will drown in sheets; use Telegram/email digests
  • Stale competitor lists → refresh every 3–6 months; new entrants appear

Conclusion

Competitor price monitoring is not a one-off project — it is an operating rhythm: sources, matching, automation, and — most importantly — actions driven by the data.

Start small: three competitors, twenty critical SKUs, and a guided setup on Smyalichi; within two weeks you will see how much market signal you were missing.

P.S. When we launched monitoring for “MRI Leader”, I spent two days on manual collection. On day three I started the parser. A month later the tool saved ~5 hours weekly on collection alone — time we reinvested in service quality and patient acquisition.

We productised those tools as Smyalichi — readers can start a 30-day trial at price.smyalichi.ru; we help wire the first sources.