Pricing Profiles
Overview
Pricing Profiles let you create dynamic price formulas using a set of predefined tokens. Once linked to a listing, the price recalculates automatically whenever a token value changes.
Before you begin
Pricing Profiles is an optional add-on feature. If it is not active on your account, contact the StoreFeeder support team to discuss enabling it.
Set up and edit pricing profiles
Go to Settings > Integrations > Pricing Profiles to create new profiles or edit existing ones.
On the edit page you can:
- Build or amend the price formula
- Set price ends
- Enter example data to preview what the profile would calculate
Attach a pricing profile to a channel
Each channel can have a default pricing profile, automatically applied when you create new listings for that channel. The setting is in the Misc section of channel settings.
Attach a pricing profile to a listing
When the feature is enabled, a chain-link icon appears to the right of the price box on every listing page. Select it to open a panel where you can choose or change the pricing profile.
When creating a new listing, any default pricing profile for the channel is pre-filled automatically.
For variant listings, the same chain-link icon appears in the price box. You can also update pricing profiles in bulk across variants by hovering over the price header and choosing the bulk actions option.
eBay default values
You can select a default pricing profile for eBay default values in the eBay default values settings.
Bulk update via import/export
Pricing profiles can be updated in bulk using the listing import/export. The profile is matched by the name you assigned to it.
Formula reference
Formulas are built from tokens, functions, and operators.
Available tokens (examples)
PriceAverageCostRRPMarginSold Last 7 DaysWeightPackagingCosts
Example formulas
[AverageCost] + [Margin] + [PackagingCosts]([PrioritySupplierCost] + [PackagingCosts]) * (1 + ([Margin] / 100))[RRP] + [Margin] + [PackagingCosts][AverageCost] + [Margin] + [PackagingCosts] + if([Inventory]<10, 5, 0)
Operators
Logical: or, ||, and, &&
Relational: =, ==, !=, <>, <, <=, >, >=
Additive: +, -
Multiplicative: *, /, %
Bitwise: & (and), | (or), ^ (xor), << (left shift), >> (right shift)
Unary: !, not, -, ~ (bitwise not)
Maths functions
Abs(x) - Returns the absolute value. Abs(-1.5) = 1.5
Ceiling(x) - Returns the smallest integer >= x. Ceiling(1.5) = 2
Floor(x) - Returns the largest integer <= x. Floor(1.5) = 1
Max(x, y) - Returns the larger of two numbers.
Min(x, y) - Returns the smaller of two numbers.
Pow(x, y) - Returns x raised to the power of y.
Round(x) - Rounds to the nearest integer.
Round(x, y) - Rounds to y decimal places.
Sqrt(x) - Returns the square root.
Truncate(x) - Returns the integer part. Truncate(1.5) = 1
Other functions
in(valueToCheck, x, y, z, ...) - Returns true if the value is in the list. Example: In(5, 0, 5, 10, 15) = true
if(condition, trueResult, falseResult) - Returns trueResult if condition is true, otherwise falseResult.
Price ends
Price ends (sometimes called charm pricing) let you control the decimal portion of calculated prices. For each profile, enter a comma-separated list of price end values (e.g. 0, 25, 50, 99) and choose a rounding strategy.
Round Down
Examples using price ends 25, 50, 99:
- 1.67 rounds to 1.50
- 1.99 rounds to 1.99
- 2.00 rounds to 1.99
- 1.33 rounds to 1.25
Round Up
Examples using price ends 25, 50, 99:
- 1.67 rounds to 1.99
- 1.99 rounds to 1.99
- 2.00 rounds to 2.25
- 1.33 rounds to 1.50
Midpoint
Examples using price ends 25, 50, 99:
- 1.67 rounds to 1.50
- 1.99 rounds to 1.99
- 2.00 rounds to 1.99
- 1.43 rounds to 1.50
Was this helpful?
Your feedback shapes what we write next.
