What Is Retail Business Intelligence? KPIs, Data Sources and Use Cases

Learn how retail business intelligence works, its key metrics and use cases, and how sales, inventory and competitor data improve retail decisions.

Author: Arslan Ali

Retail business intelligence (retail BI) is the process of collecting, integrating, analyzing and visualizing retail data to guide pricing, inventory, merchandising and marketing decisions. Business intelligence (BI) is the general practice of turning raw business data into reports and dashboards people can act on.

The Census Bureau e-commerce report states: "E-commerce sales in the second quarter of 2026 accounted for 17.1 percent of total sales" (US, seasonally adjusted, preliminary). Those online prices are public, yet most retail business intelligence setups analyze only internal data.

Retail BI vs. Retail Analytics

Retail analytics is the analysis work itself, such as finding out why sales fell in one region. Retail BI is the broader system around that work: the data, the models, the dashboards and the decisions they feed.

Both move through four levels of questions. Descriptive analytics reports what happened, diagnostic analytics explains why, predictive analytics estimates what comes next, and prescriptive analytics recommends an action. Many teams use "retail analytics," "retail data analytics" and "retail BI" interchangeably, so expect the terms to overlap.

Where Retail BI Data Comes From

Retail BI data comes from two layers. Internal data shows what happened inside your business, and external data shows what happened in the market around it.

Retail business intelligence is only as complete as its inputs. Most setups connect the internal layer and leave the market layer blank.

Data layerExample sourcesWhat it answersWho owns it
InternalPoint-of-sale (POS) systemWhat sold, where, when and at what priceStore operations and finance
InternalE-commerce platformOnline orders, sessions and cart behaviorE-commerce team
InternalERP and inventory systemWhat is in stock, on order and in transitSupply chain and finance
InternalCRM and loyalty programWho bought and how often they returnMarketing and CRM team
InternalMarketing platformsWhich campaigns drove visits and salesMarketing team
ExternalCompetitor prices and promotionsWhat shoppers see elsewhere for the same itemPricing team
ExternalCompetitor assortment and stock availabilityWhich products rivals carry and have in stockMerchandising team
ExternalReviews and ratingsHow shoppers judge products on public pagesMerchandising and product teams
ExternalMarketplace listingsWhich sellers offer an item and at what priceE-commerce and brand teams

Internal Data: What Happened in Your Business

Internal data is the record your own systems keep of sales, stock and customers. Three systems supply most of it.

  • Point of sale (POS): The checkout system that records each sale, item, price and time.
  • Enterprise resource planning (ERP): The back-office system that tracks inventory, purchasing, suppliers and finance.
  • Customer relationship management (CRM): The database of customers, their purchases and their loyalty activity.

These systems tell you what sold, what is on the shelf and who bought it. They say nothing about what competitors charged that same day.

External Data: What Happened in the Market

External data is market information that lives outside your systems, mostly on public web pages. Competitor product pages show current prices, promotions, new products and stock status.

This blind spot changes how you read your own numbers. A sales dip on a top item may come from a competitor's price cut instead of weak demand. Without market data, the dashboard shows the drop but not the cause.

Teams that run competitive intelligence monitoring workflows turn competitor pages into structured pricing and product signals. Those signals can then sit in the same database as POS and ERP data.

Retail KPIs That BI Should Track

Retail KPIs (key performance indicators) are the numbers a team watches to judge whether the business is healthy. Most retail dashboards start with these internal KPIs:

  • Revenue and sales per square foot: Total sales, plus store sales divided by selling space to compare stores of different sizes.
  • Gross margin: Revenue minus the cost of goods sold, shown as a share of revenue.
  • Sell-through rate: Units sold divided by units received in a period, which shows how fast new stock moves.
  • Inventory turnover: Cost of goods sold divided by average inventory, or how many times stock sells and refills in a year.
  • Stock-out rate: The share of items or days when a product was unavailable to buy.
  • Average order value (AOV): Revenue divided by the number of orders.
  • Customer lifetime value (CLV): The total margin a customer is expected to bring over the whole relationship.
  • Conversion rate: The share of visits that end in a purchase.

Two external KPIs fill the market gap. Both work best on key-value items (KVIs), the products shoppers use to judge whether a store is cheap, such as milk or a popular phone.

  • Price index vs. competitors: Your price divided by a competitor's price for the same item, times 100. An index above 100 means you charge more.
  • Competitor in-stock rate on KVIs: The share of your KVIs a competitor has in stock. A drop may signal a chance to win its shoppers.

Common Retail BI Use Cases

Retail BI use cases are the recurring decisions that data supports. Each one needs a different mix of internal and external data.

Pricing and Promotions

Pricing decisions set what to charge and when to discount. Your margin data shows what you can afford, while competitor prices show what shoppers will compare you against.

Deloitte surveyed 330 retail executives for its 2026 outlook. The Deloitte 2026 retail outlook reports: "Top AI adoption areas include fraud detection (64% currently using), pricing optimisation (48%), and customer service chatbots (42%)." The sample may skew toward larger retailers, so smaller teams may see different adoption.

Dynamic pricing means changing prices often in response to demand, time or competitor moves. The Gartner dynamic pricing survey states: "Sixty-eight percent of consumers report they feel taken advantage of when brands use dynamic pricing, according to a survey by Gartner, Inc."

That 2024 survey covered 303 US consumers. Use competitor price intelligence to set guardrails for price moves as well as to react to them.

Inventory and Demand Forecasting

Demand forecasting estimates how many units of each product you will sell in a future period. Most models start from sales history, seasonality and planned promotions.

Competitor availability adds a market signal. If a rival runs out of a popular item, some of its shoppers may come to you. Tracking competitor stock-outs can help planners spot that shift before it shows up in their own sales.

Assortment and Merchandising

Assortment analysis compares the products you carry with the products competitors carry. It shows gaps, such as a missing size range or brand, and overlaps where you compete head-on.

Product data enrichment is the work of filling in missing product details, such as attributes, dimensions and descriptions, so listings are complete and searchable. Merchkit uses Olostep to enrich retailer product data across many stock keeping units (SKUs), the codes retailers assign to each distinct product.

The Merchkit catalog enrichment case study reports 94% faster enrichment, 5x more SKUs optimized per month and a 10x cost reduction. These are Olostep-published case-study results for catalog enrichment, so treat them as one customer's outcome.

Customer Analytics and Personalization

Customer analytics groups shoppers into segments based on what and how they buy. Teams then personalize offers, emails and product recommendations for each segment.

The 2021 McKinsey personalization research states: "Research shows that personalization most often drives 10 to 15 percent revenue lift (with company-specific lift spanning 5 to 25 percent, driven by sector and ability to execute)." The figure covers many industries, and this use case runs mostly on internal CRM data.

MAP Compliance Monitoring

MAP (minimum advertised price) is the lowest price a brand allows resellers to advertise for its products. Brands monitor reseller and marketplace listings to catch ads below that floor.

MAP monitoring depends on external data, since violations appear on other sellers' public pages. Each violation record needs the seller, the advertised price, the page URL and a capture time.

How to Add External Web Data to Retail BI

Adding external web data to retail business intelligence means turning competitor web pages into scheduled, structured records. Those records load next to your internal data so one query can use both.

The steps below cover competitor price tracking and stock monitoring. They assume you collect only publicly accessible web data.

  1. Define the questions and KVIs: List the decisions the data must support. Then pick the KVIs and competitors worth tracking.
  2. Discover competitor URLs: Use sitemaps, web search or a URL-mapping tool to list category pages and product detail pages (PDPs), the page for one product.
  3. Crawl category pages: Use a crawler to crawl entire competitor categories and collect every product URL, including new arrivals.
  4. Extract to one fixed schema: Define fields like price, currency, stock and variant once. An e-commerce price monitoring API can return them in one JSON shape.
  5. Schedule batches: Set up batch scraping thousands of URLs per run. Time each run to the refresh cadence of its signal.
  6. Monitor changes: Use scheduled website change monitors to compare captures. Send a webhook, an automatic message to your system, when price or stock changes.
  7. Match products to your SKUs: Join competitor records to your SKUs by GTIN, UPC or MPN. Fall back to brand, title and attributes when codes are missing.
  8. Load into the warehouse and BI tool: Load the JSON into a data warehouse, the central analytics database, such as Snowflake or BigQuery. Then build dashboards.

GTIN (Global Trade Item Number) is the global barcode number for a product. UPC (Universal Product Code) is its common 12-digit form in North America. MPN (manufacturer part number) is the maker's own model code.

You know the pipeline works when each run lands the expected number of records with prices, currencies and capture times filled in. Your matched records should also produce a price index that analysts can check by hand against a few live pages.

The fixed schema is what makes the feed usable in BI. Each field becomes a stable column, so a price index query works the same way for every competitor.

Olostep's parsers apply one schema across very different retailer sites and return the same JSON fields from each. Merchkit describes it this way: "We define the data schema we want once using the Olostep's parsers, and then run it at scale to get deterministic JSON from the website."

Illustrative example only: a sample record from one competitor product page. The retailer, product and values are hypothetical.

json
{
  "source_url": "https://www.example.com/p/trail-runner-2-mens",
  "retailer": "Example Outdoor Co.",
  "captured_at": "2026-10-23T06:00:00Z",
  "location": { "country": "US", "postal_code": "10001" },
  "product": {
    "title": "Trail Runner 2 Men's Running Shoe",
    "brand": "Northpeak",
    "gtin": "00012345678905",
    "mpn": "TR2-M-BLK",
    "retailer_sku": "EX-448812"
  },
  "variant": { "color": "Black", "size": "10" },
  "price": 119.99,
  "list_price": 139.99,
  "currency": "USD",
  "promotion_text": "Extra 10% off with code FALL10",
  "in_stock": true,
  "seller": "Example Outdoor Co.",
  "rating": 4.5,
  "review_count": 312,
  "matched_sku": "OUR-TR2-BLK-10"
}

The extraction step fills every field except matched_sku. Your matching job adds that field in step 7.

How Often to Refresh Each Signal

Refresh cadence is how often you collect each signal again. Match it to how fast the related decision moves, since not every signal needs real-time data.

SignalSuggested refreshDecision it supports
Prices on KVIsDaily or more oftenPrice matching and promotion response
Stock status on KVIsDailyDemand-shift and stock-out alerts
Full catalog pricesWeeklyCategory price index
Reviews and ratingsWeeklyListing fixes and product quality checks
Assortment (new and dropped products)Weekly or monthlyRange planning

Treat these as starting points, not rules. Raise the cadence during peak sales events, and lower it for categories where prices rarely move.

Edge Cases That Break Price Data

Edge cases are page conditions that make a collector return a wrong value without an error. Check each one before you trust a retail price monitoring feed.

  • Location-specific prices: Some retailers show different prices by ZIP code or store. Record the location used for each capture.
  • Variant-level price and stock: Each size or color can carry its own price and stock. Store each variant as its own record.
  • Member-only prices: Some prices appear only after login. Skip them unless you have authorized access, and do not log them as out of stock.
  • JavaScript-loaded prices: Some pages load the price after the first HTML arrives. The collector needs browser rendering to see it.
  • Currency switches: A site may choose a currency from the visitor's location or settings. Store the currency code with every price.
  • Bundles and multipacks: A 6-pack price next to a single-unit price skews the index. Convert both to a unit price.
  • Marketplace sellers: One marketplace listing can hold offers from many third-party sellers. Record which seller owns the displayed price.

Olostep supports location settings for geo-specific pricing and extracts each size and color variant with its own price and stock.

Collect only publicly accessible web data. Respect each site's terms, robots directives (the robots.txt rules a site publishes for crawlers) and rate limits. Do not bypass logins, CAPTCHAs or other access controls, which Olostep's own terms also prohibit.

Data Quality Problems in Retail BI

Data quality problems are errors in the inputs that make retail business intelligence reports wrong. The Gartner data quality guide notes that "poor data quality costs organizations at least $12.9 million a year on average, according to Gartner research from 2020."

That figure is a cross-industry average. Four problems are common when teams mix internal and external retail data analytics inputs:

  • Inconsistent fields: One site labels a value "price," another "sale price," and a third shows both. The same column then means different things.
  • Duplicate products: The same item appears under several URLs or sellers. It gets counted twice in the index.
  • Stale data: A price captured last week sits next to today's sales. The dashboard makes it look current.
  • Silent collection failures: A layout change breaks the collector. It keeps returning blanks or the wrong number without raising an error.

Validation checks catch these before they reach a dashboard:

  • Schema checks: Reject records missing required fields such as price, currency or URL.
  • Duplicate checks: Remove duplicates by identifier, seller and location before loading.
  • Range checks: Flag prices that move more than a set percentage between captures for review.
  • Freshness checks: Show the capture time on every dashboard and alert when a source stops updating.
  • Volume checks: Compare record counts per competitor with the last run to spot pages that stopped returning data.
  • Match-rate checks: Track the share of competitor records matched to your SKUs.

How to Choose Retail BI Tools

Choosing retail BI tools starts with splitting the stack into four parts. Each part has a different job.

  • BI and dashboard tool: Power BI, Tableau, Looker or Domo, where teams build reports and dashboards.
  • Data warehouse: Snowflake, BigQuery or a similar database that stores every input in one place.
  • Internal connectors: Pipelines that copy POS, ERP, CRM and e-commerce data into the warehouse.
  • External data source: The feed that brings competitor and market data in from the web.

For the external data source, teams pick one of three approaches.

In-house scripts are scrapers your engineers write and run. Pricing intelligence software is a packaged app that collects competitor prices and shows them in its own views. A web data API is a managed service that returns structured web data you load into your own warehouse.

ApproachSetup effortMaintenanceFlexibilityData ownership
In-house scriptsHigh: you build crawlers, rendering, proxies and parsersHigh: each site layout change needs a code fixHigh: any public field on any site you chooseFull: data stays in your stack
Pricing intelligence softwareLow: you set up competitors and products in the vendor appLow for you: the vendor maintains collectionLower: limited to the vendor's sites, fields and viewsPartial: data lives in the vendor app, and export options vary
Web data APIMedium: you define schemas and write load jobsMedium: the provider maintains browsers and proxies, and you maintain schemas and matchingHigh: you choose sites, fields and cadenceFull: JSON lands in your warehouse

Pricing intelligence software fits teams that want ready-made pricing views with little engineering work. A web data API fits teams that want market data as columns in their own warehouse, joined to internal data. In-house scripts can work for a few stable sites, but upkeep grows with every site you add.

Olostep is a web data API, so it is the external data layer in this stack and not a BI tool. It does not provide dashboards, POS analytics, forecasting or price optimization. Its JSON output feeds your warehouse, where Power BI, Tableau, Looker or Domo can read it.

Frequently Asked Questions

What Is the Difference Between Retail BI and General BI?

Retail BI applies general BI methods to retail-specific data and KPIs, such as sell-through, stock-outs and store performance. General BI covers any industry and does not assume stores, SKUs or inventory.

Can Small Retailers Use Business Intelligence?

Yes, small retailers can use business intelligence. Start with POS and e-commerce data and a few KPIs, such as gross margin and sell-through, before adding more sources.

Where Does Competitor Price Data Come From?

Competitor price data comes from public product pages. Teams collect it with crawlers and scrapers or a web data API, then structure it into JSON for the warehouse.

Collecting publicly accessible prices is common practice, but the rules vary by jurisdiction and by each site's terms. Follow site terms, robots directives and rate limits, and get legal advice for your situation.

How Do You Match Competitor Products to Your Own SKUs?

Match on standard identifiers first, such as GTIN, UPC or MPN. When codes are missing, match on brand, title and attributes like size and color, then review low-confidence matches by hand.

How Long Does Retail BI Take to Show Results?

Retail business intelligence results depend on how ready your data is. First dashboards can come quickly when data is clean and connected, while forecasting and pricing models take longer because they need history and testing.

Curious what we are building?

Explore our APIs and start creating

Are you an AI Agent? Get started here