- A simulation replays the rule over the last days of competitor data, for all or some of the products in its scope, and keeps the result so you can explore every decision and compare runs. Use it before you switch a rule on, or after you change one.
- A quick preview, in the rule editor, runs the rule once on a few products you pick, against today’s competitor data.
Before you start
- The rule must be saved. A simulation uses the rule as it was saved when you started it.
- To open Dry-run and see the simulations, you need the Dry-run simulations permission, under Pricing Intelligence > Repricer. The Dry-run menu item also needs Repricer Rules. Create dry-run simulations lets you start one, and Cancel dry-run simulations lets you stop one that is running.
- The quick preview needs only the Repricer Rules permission.
Run a simulation
1
Open the rule's simulations
Open Pricing Intelligence > Repricer > Dry-run. Under Pick a rule to simulate, click the rule.You can also open the more menu (⋮) on the rule’s row in Rules and choose Run simulation, or click Dry-run
preview at the bottom of the rule editor. Dry-run preview saves the rule first; a new rule is saved as a
draft, and an existing rule keeps its status.
2
Start a new simulation
The page shows the rule’s earlier simulations on the left, under History, and the latest one on the right. To
set up a new one, click Run simulation under the history. A rule with no simulations shows Configure
simulation straight away.
3
Choose the period
In Lookback (days), enter how many days back to replay, from 1 to 90. The default is 30.
4
Choose the products
In Sample, choose:
- All products in scope: every product the rule covers.
- First N products: the first 50, 100 or 200 products of the rule’s scope; choose the number in Sample size.
- Specific SKUs: the products you pick under Pick products. Type a SKU or a product name to find them. Run simulation stays greyed out until you pick at least one.
5
Run it
Click Run simulation.
Read the result
The result opens when the simulation finishes. It covers every decision point: one product on one day.Verdict
The line under the title gives a verdict:
When the verdict is not the first one, a hint says what drove it:
- Missing purchase prices: “Many products have no usable purchase cost, so their margin floor couldn’t be checked and they weren’t priced. Fill in purchase prices (in the price’s currency) before promoting — loosening the rule won’t help.” See Purchase prices.
- Too little competitor data: “Limited competitor data — the rule couldn’t run on most days. Add more scrape sources or shorten the lookback.”
- The rule’s constraints: “Most decisions hit your margin floor or MAP. Loosen the constraint, change the strategy, or narrow the scope.”
- A margin that no price can meet: the rule’s minimum margin is outside 0–100%. Open the rule and set it within that range.
- A mix: “Mixed issues — partly data coverage, partly proposed prices hitting constraints.”
Key figures
Daily margin plots, day by day, the average margin at the simulated prices (Simulated) and at the product’s
current price (Actual).
Decisions breaks the decision points down by outcome:
Click a segment, or its line in the legend, to filter the decisions below; click the centre to clear the filter.
Things to know lists what deserves a look. Each item except Purchase price approximated before history has
View affected decisions, which filters the decisions below:
- Margin floor blocked changes and MAP violations prevented: decisions that would have priced below the floor or the MAP.
- Products without a usable purchase cost: the purchase price is missing, zero, or in another currency than the price, so the margin floor could not be checked.
- Purchase price approximated before history: days before the product’s purchase price history began. They used the earliest purchase price on record, or today’s for a product with no history.
- Skipped products: decisions the rule skipped.
Explore the decisions
Top margin winners and Top margin losers list the 10 products whose average margin rises and falls the most. Click one to see its days. Below them, two tabs:- Decisions: one row per product and day, with Date, SKU, Name, Current, Proposed, Outcome, Δ margin pp, Offers (how many competitor offers the rule saw) and Min comp. (the lowest of them). Use the outcome chips to filter, and click a column heading to sort. 25 rows per page.
- Per SKU: one row per product, with Days, Outcome mix, Avg Δ margin, Σ |Δ price| (the total price movement) and Last proposed. Click View days to see the product’s decisions.
See one decision in detail
Click a decision row. Decision detail opens on the right with the product, the day, the outcome and the price change, and the steps the rule took: the competitor offers it saw, the strategy’s price, the constraints and the rounding. Show raw step data shows the engine’s raw values. Use ‹ and ›, or the left and right arrow keys, to move to the previous or next decision, and × or Escape to close. Omnilinker works the decision out again when you open it, so the detail can carry a note:- “The rule was modified after this simulation ran — today’s rule may decide differently.”
- “The replay no longer matches the stored result (historical data or the rule changed) — the header shows the original run’s values.”
- “Some competitor offers from the original run have since been pruned by data retention.”
- “Replay unavailable — the product no longer has pricing data. The header shows the stored result.”
- “The original rule snapshot couldn’t be restored — replayed with the rule as it is configured today.”
- “Computed under a previous (net) pricing basis — live replay unavailable.”
Compare two simulations
1
Select the first simulation
Click it in History.
2
Pick the one to compare with
Click vs next to another completed simulation.
History
History lists the rule’s simulations, newest first. Each shows its status (Queued, Running, Completed, Failed or Cancelled), when it was requested, its period and products, and, once complete, the change in average margin and the number of decisions. A failed or cancelled simulation shows Simulation failed or Simulation cancelled, with the reason when there is one. Click Retry to set up a new one. Omnilinker keeps the 10 most recent finished simulations of each rule (completed, failed or cancelled). Older ones are deleted every night. The settings page has no field for this number. A simulation from an older version of Omnilinker shows a short table of sample decisions instead of the decision explorer, with “Re-run this simulation to unlock the decision explorer — full per-day decisions, per-SKU rollups and drill-down.”Preview a rule in the editor
1
Open the rule's review step
In the rule editor, go to the review step. For a new rule, click Save draft & dry-run to save it and go there.
2
Pick products
Type a SKU or product name in Type SKU or product name… and pick the products to try.
3
Run it
Click Run dry-run.
How a simulation works
- The rule is the one saved when you started the simulation. Later edits do not change the result.
- Competitor prices are each day’s latest collected offers, within the same freshness window the live repricer uses, so a day without fresh offers is skipped.
- Purchase prices are the ones known at the end of each day. A day before the product’s purchase price history uses the earliest one on record.
- Your prices are today’s: the products’ current prices, price levels and VAT rates. Actual in Daily margin is the margin at today’s price, not the price you had on that day.
- Days are calendar days in UTC.
- Markets are not separated: “Not scoped by market: a simulation blends markets that share the product’s currency, exactly as a live run does.”
Troubleshooting
“Another simulation is already running or queued for this rule…”
“Another simulation is already running or queued for this rule…”
A rule runs one simulation at a time. Wait for it to finish, or open it in History and click Cancel
simulation.
“Lookback days must be between 1 and 90.”
“Lookback days must be between 1 and 90.”
Enter a number of days from 1 to 90 in Lookback (days).
“No decisions in this window — check the rule's scope.”
“No decisions in this window — check the rule's scope.”
The rule covered no products, or none had data in the period. Check the rule’s scope, and that its products have
competitor offers in the last days.
Most decisions are Skipped
Most decisions are Skipped
There was no fresh competitor data for those products on those days. Check that the products are matched to
competitor offers and that their data sources collect regularly. See
Product matching.
“Dry-run sample size exceeded: … requested but max is …”
“Dry-run sample size exceeded: … requested but max is …”
The quick preview takes a limited number of products. Pick fewer, or run a simulation instead.
Rules and strategy templates
Create and change the rules you simulate.
Constraints and guardrails
The margin floor, MAP and price limits behind blocked decisions.
Recommendation queue
Review the prices a live rule proposes.
Repricer roles
Who can run and cancel simulations.