> ## Documentation Index
> Fetch the complete documentation index at: https://docs.retailgrid.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Price Monitoring

> Discover live competitor prices across the web with AI search and load verified results straight into your grid.

**Price Monitoring** finds competitor prices for the products in a grid. It searches the web with AI, verifies what it finds, and loads the verified offers into your competitor prices, so the grid's competitor columns fill in without a scraping project or a CSV.

Use it when you want competitor coverage on a grid and you do not already have a feed for it.

## When to use Price Monitoring

* You are onboarding a new category and have no competitor data for it yet.
* Your existing feed covers some competitors but leaves gaps you want filled.
* You want a fresh read on a specific grid before a pricing pass, rather than waiting for the next scheduled delivery.

If you already have a matched competitor feed and want to check it before pricing against it, that is [Competitor matching](/price-monitoring/competitor-matching) instead. Price Monitoring produces competitor prices; Competitor matching validates them.

## Run Price Monitoring

In any grid:

1. Click **Agents** in the top toolbar.
2. Select **Price Monitoring** from the All Agents modal.
3. Configure the run and start it.

The run executes in the background. Watch it in the [Runs](/runs/overview) section in the left sidebar; the active-runs badge on the Runs icon ticks up while it works.

## What happens during a run

Verified offers publish into your competitor prices as the run progresses, not only at the end. Your grid's competitor columns are re-resolved against the newly published prices as they land, so competitor values and gaps appear during the run rather than after it.

That means you can watch coverage build on a long run, and a run that is interrupted still leaves behind every offer it had already verified.

## What the agent writes

The agent adds to your **Competitor prices** dataset. Nothing about your own prices changes: Price Monitoring is a data-gathering agent, not a pricing agent. Once the competitor prices are in place, the usual flow applies:

* Competitor columns and price position show up in the grid.
* Competitor-based rules in [Dynamic Pricing](/agents/dynamic-pricing) (Price Match, parity, undercut) have data to evaluate against.
* Competitor metrics and the [Competitive Position dashboard](/dashboards/competitive-position) fill in.

## Common pitfalls

* **One run per grid at a time.** Starting a second run while one is in progress is refused. Wait for the first to finish, or cancel it from [Runs](/runs/overview).
* **Discovered prices are not a verified feed.** The agent verifies what it finds, but web discovery is inherently patchier than a contracted feed. Check coverage and match quality on [Competitor matching](/price-monitoring/competitor-matching) before you point pricing rules at it.
* **Currency.** If the offers the agent finds are priced in a different currency from your products, configure FX in [Currency](/settings/currency) before running competitor-based rules.
* **Scope the grid first.** The run covers the products in the grid you started it from. A narrower grid finishes faster and is easier to validate.

## Related

* [Competitor matching](/price-monitoring/competitor-matching)
* [Agents overview](/agents/overview)
* [Competitor prices data spec](/data-requirements/competitors)
* [Dynamic Pricing](/agents/dynamic-pricing)
* [Runs](/runs/overview)
