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

# Beat The Cheapest

> Undercuts the cheapest eligible competitor by a configurable amount.

The **Beat The Cheapest** strategy sets your price just below the cheapest eligible competitor. Use it to deliberately take the cheapest position.

How the price is determined:

1. Your own offers and [ignored shops](#common-settings) are removed.
2. The remaining competitors are ranked by the chosen comparison basis (product price or [total price](/docs/en/guide/concepts/total-price)).
3. PricePirate undercuts the cheapest eligible competitor by the **minimum undercut amount** (default 0.01) — never below your limits.

## Variants

The strategy comes in three variants. They differ only in how the price floor is determined and whether fixed reset hours apply. The **minimum undercut amount** applies in all three variants.

### Standard (minimum price)

The default variant uses your fixed **minimum price** as the floor.

**Example:** cheapest competitor 16.78 €, undercut amount 0.01, your minimum price 15.00 €
→ New price **16.77 €** (undercut position 1 by 0.01). If the result were below 15.00 €, the minimum price would not be undercut.

| Field                   | Meaning                                                                                                                                                |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Minimum undercut amount | Amount by which to undercut the competitor. When competing on total price, this applies to total price (price + shipping). Overrides the default 0.01. |

### With minimum margin

Instead of a fixed minimum price, the floor is calculated from your costs and a target margin; the competitor is still undercut by the undercut amount. This requires a **unit cost** (cost per item) to be set in Shopify. The full formula and worked examples are on [Minimum margin](/docs/en/guide/pricing/min-margin).

Additional fields for this variant:

| Field              | Meaning                                                                                                                                                                                                   |
| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Minimum margin     | Required minimum profit margin percentage. The strategy calculates a price floor from unit cost, fixed cost, sales tax, transaction fee, and shipping revenue.                                            |
| Fixed cost         | Fixed per-order cost (e.g., shipping or packaging) used in margin calculations.                                                                                                                           |
| Unit cost override | Optional manual unit cost used for margin calculations. If set, it overrides the Shopify unit cost. When a minimum margin is defined, either this value or a valid numeric Shopify unit cost is required. |
| Sales tax (VAT)    | Sales tax rate used in margin calculations. Default is 19% (German VAT). Set to 0 to disable.                                                                                                             |
| Transaction fee    | Payment processing fee (e.g., credit card fees) used in margin calculations. Default is 3%. Set to 0 to disable.                                                                                          |

### With reset

Outside the configured reset hours, this variant behaves like the standard variant (it undercuts the cheapest). During a reset hour, the price is reset to a fixed default price — no dynamic pricing. The background and configuration examples are on [Reset windows](/docs/en/guide/pricing/reset-windows).

Additional fields for this variant:

| Field                 | Meaning                                                                                                                                                                                                                                                                                |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Default (reset) price | The price the variant is reset to during configured reset hours. If left empty, compare-at price is used only when compare-at fallback is enabled.                                                                                                                                     |
| Reset hours           | Semicolon-separated shop-local hours when the price resets. Single hours and ranges are both supported, for example `19;23` or `8-12;18-22`. Ranges that cross midnight (e.g. `22-2`) wrap around. The advanced settings let you override the reset hours per weekday (Monday–Sunday). |

## Common settings

These settings are the same across all strategies. The base settings are always visible; the rest open under **Advanced settings**.

| Field                        | Meaning                                                                                                                                                                                                                                                             |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Minimum price *(required)*   | Required hard price floor that will never be undercut, regardless of competitor prices. The **Minimum margin** variants replace the manual floor with a margin-derived floor instead (see [Minimum margin](/docs/en/guide/pricing/min-margin)).                          |
| Compete on total price       | When enabled, the strategy compares [total prices](/docs/en/guide/concepts/total-price) (product price + shipping) instead of just product prices. Your shipping cost will be taken into account when calculating the competitive price.                                 |
| Shipping cost                | Your shipping fee charged to the customer per order. Subtracted from the competitor's total when competing on total price.                                                                                                                                          |
| Ignore list                  | List of Idealo shop names to exclude from competitor analysis (separated by `;;`). Offers from these shops are filtered out before calculating prices. Example: `shop1;;shop2;;shop3`                                                                               |
| Fallback to compare at price | If no competitive price can be set that meets all constraints, fall back to using the variant's compare-at price if it is available and at or above the minimum price.                                                                                              |
| Last decimal (0–9)           | Set the last decimal digit of the price (0–9). For example, setting this to `9` will make prices end in `.X9`. The price is always rounded down, so it never rises above a competitor.                                                                              |
| Maximum price                | Optional cap. The final price will never exceed this value. Set to `0` to disable.                                                                                                                                                                                  |
| Minimum stock quantity       | Only update the price if the variant's stock quantity is at least this amount. If stock is below this threshold, no price change will be created.                                                                                                                   |
| Free shipping above          | Order value at or above which you offer free shipping. When the calculated price is at least this amount, shipping cost is treated as zero. Set to `0` to disable the threshold and always charge shipping.                                                         |
| Maximum target position      | Maximum rank to try in the eligible competitor list. Own offers and ignored shops are removed first, then competitors are sorted by the selected comparison basis (total price or product price). This may differ from the original Idealo position. Default is 10. |
