Personalized Pricing

Problem

Set prices dynamically — varying by product, time, competitor pricing, inventory level, and demand signals — and optionally by customer segment or individual — to maximise revenue, margin, or a composite business objective. Dynamic pricing (same price for all, varies over time) is widely accepted; personalised pricing (different price per customer) is legally and ethically contentious.

Important distinction:

  • Dynamic/algorithmic pricing: Price changes with demand, inventory, time — all customers see the same price at a given moment → widely accepted
  • Price discrimination by segment: Different prices for different customer groups (e.g., loyalty tier, geography) → accepted if disclosed
  • Individual price personalisation: Different prices per customer based on inferred willingness to pay → legally restricted in many markets

Users / Stakeholders

RoleDecision
Pricing managerSet pricing rules and guardrails
Category managerCompetitive positioning for key products
FinanceRevenue and margin planning
Legal / complianceConsumer protection law compliance
CustomerExperience transparency and fairness

Domain Context

  • Competitive dynamics: Price changes trigger competitor responses. Automated repricing without limits creates price spirals (documented on Amazon).
  • Consumer Protection: UK: Consumer Rights Act. EU: Omnibus Directive (requires showing reference price before discount). US: state-level price gouging laws triggered in emergencies. Personalised pricing based on demographics (race, gender) is illegal.
  • Price elasticity: Core economic concept. ML learns elasticity from historical data. Elasticity varies by product category, customer segment, and time.
  • Anchoring effects: Showing a high “was” price alongside a lower current price drives conversion — behavioural economics in pricing.
  • Data requirements: Need matched price-demand observations with price variation. If price never changed historically, elasticity cannot be estimated.

Inputs and Outputs

Dynamic pricing features:

Demand signals: page_views_1h, add_to_cart_rate, conversion_rate_24h
Competition: competitor_price (scraped hourly), price_rank_vs_competitors
Inventory: stock_level, days_of_cover, replenishment_lead_time
Product: category, brand, margin, cost, minimum_price_floor
Time: day_of_week, hour, days_to_expiry (perishables), seasonal_index

Output:

recommended_price:    £X.XX within [floor, ceiling] range
expected_revenue:     Predicted revenue at recommended price
elasticity_estimate:  % demand change per 1% price change
price_change_action:  INCREASE / DECREASE / HOLD / PROMOTE

Decision or Workflow Role

Pricing engine runs (hourly or event-triggered by competitor price change)
  ↓
Demand model: estimate demand at current vs alternative prices
Margin model: calculate gross margin at each candidate price
  ↓
Optimisation: maximise revenue × margin subject to constraints
  (floor: cost + minimum margin; ceiling: MAP or brand guidelines)
  ↓
Guardrails: max price change per cycle; no pricing below cost; competitor band
  ↓
Price pushed to e-commerce platform via API
  ↓
Outcome: sales, revenue, conversion logged → model training data

Modeling / System Options

ApproachStrengthWeaknessWhen to use
Demand curve regression (log-log)Interpretable elasticity; economically groundedAssumes constant elasticity; limited interactionsBaseline; category-level pricing
LightGBM demand modelCaptures complex interactions; feature-richBlack box; harder to auditLarge catalogue; rich demand signals
Contextual banditsAdaptive; optimises online; handles explorationExploration cost; varianceWhen rapid adaptation needed
Bayesian structural time seriesUncertainty quantification; causal price effectComplex; slowerAttribution and A/B analysis

Recommended: LightGBM demand model + price optimiser. Contextual bandits for high-velocity SKUs.

Deployment Constraints

  • Guardrails mandatory: Min/max price bounds; max change per hour. Without guardrails, automated pricing can create reputational damage (e.g., £700 textbooks).
  • Price change explanation: Must be auditable. If challenged, must demonstrate price was driven by legitimate demand/competitive factors, not customer profiling.
  • Latency: Price update can be near-real-time (1–5 minutes). Inference latency not a constraint.

Risks and Failure Modes

RiskDescriptionMitigation
Price spiralCompeting algorithms drive prices to extremesGuardrails; monitoring; manual override
Discriminatory pricingProxy for demographics in pricing featuresFeature audit; legal review
Price display errorsWrong price shown vs charged → consumer law violationPre-display validation; price comparison audit
Elasticity overestimateModel thinks demand elastic; prices raised; demand collapsesCausal inference; A/B price experiments

Success Metrics

MetricTargetNotes
Revenue per unit+3–8% vs fixed pricingCausal A/B test
Gross margin+1–3ppNot just revenue uplift
Conversion rate≥ baselinePricing must not hurt conversion
Price audit compliance100% prices within approved boundsGuardrail KPI
Competitor price rankTrack position changesCompetitive monitoring

References

  • Phillips, R. (2005). Pricing and Revenue Optimization. Stanford Business Books.
  • Ferreira, K.J. et al. (2015). Analytics for an Online Retailer: Demand Forecasting and Price Optimization. M&SOM.

Modeling

Reference Implementations

Adjacent Applications