Back to Documentation
Pricing & Formulas

Smart Pricing System

Advanced dynamic pricing for Number Fields with range-based calculations, incremental pricing, and custom formulas for any pricing scenario.

15 min read
Updated December 2024
Quantity →Price →$10$5Volume Discount Pricing

Overview

The Smart Pricing System transforms standard Number Fields into powerful pricing engines capable of handling complex pricing structures. Perfect for products with bulk discounts, tiered pricing, incremental costs, or custom manufacturing calculations.

📈

Range-Based

Different prices for quantity ranges

Incremental

Price hikes every X units

🧮

Custom Formula

JavaScript calculations

Pricing Modes

📈Range-Based Pricing (Tiered)

Configure different prices for specific quantity ranges. Each range can have either a total price or a per-unit price. Perfect for volume discounts and wholesale pricing.

Configuration Example:

Min QtyMax QtyTotal PricePer Unit
050$500$10
51100-$8
101∞ (unlimited)-$5

Example Calculation:

Customer orders 75 units

→ Falls in range 51-100

→ Price = 75 × $8 = $600

JSON Configuration:

{ "mode": "range", "ranges": [ { "min": 0, "max": 50, "price": 500, "unit_price": 10 }, { "min": 51, "max": 100, "price": 0, "unit_price": 8 }, { "min": 101, "max": null, "price": 0, "unit_price": 5 } ] }

Incremental Pricing (Every X Units)

Start with a base price and add price hikes every specified number of units. Perfect for products with setup costs or scaling manufacturing fees.

Configuration Settings:

  • Base Price: $10 (starting price)
  • Every X Units: 10 (add hike every 10 units)
  • Price Hike: $5 (amount to add per increment)
  • Max Hikes: 5 (optional, cap at 5 increases)
  • Max Total Price: $50 (optional, absolute cap)

Calculation Breakdown:

• 0-10 units: $10 (base)

• 11-20 units: $15 (base + 1 hike)

• 21-30 units: $20 (base + 2 hikes)

• 31-40 units: $25 (base + 3 hikes)

• 41-50 units: $30 (base + 4 hikes)

• 51+ units: $35 (base + 5 hikes, capped)

Formula Logic:

increments = Math.floor((quantity - 1) / every) if (max_hikes > 0 && increments > max_hikes) { increments = max_hikes } price = base_price + (increments * hike) if (max_price > 0 && price > max_price) { price = max_price }

🧮Custom Formula Mode

Write your own JavaScript calculation for maximum flexibility. Access quantity, min, max, and step variables for unlimited pricing possibilities.

Available Variables:

quantity

User input number

min

Minimum value from field settings

max

Maximum value from field settings

step

Step value from field settings

Example Formulas:

Linear with Bonus:

quantity * 10 + (quantity > 50 ? (quantity - 50) * 2 : 0)

$10/unit, plus $2/unit bonus for quantities over 50

Exponential Pricing:

Math.pow(quantity, 1.5) * 2

Price increases exponentially with quantity

Tiered with Maximum:

Math.min(quantity * (quantity < 10 ? 15 : 12), 500)

$15/unit for <10, $12/unit for 10+, capped at $500

Square Footage Pricing:

quantity * 3.5 + (quantity > 100 ? 50 : 0)

$3.50 per sq ft, plus $50 fee for orders over 100 sq ft

Real-World Examples

🖨️ Printing Service

Scenario: Business cards with volume discounts

• 1-250: $0.20/card

• 251-500: $0.15/card

• 501-1000: $0.12/card

• 1000+: $0.10/card

Use Range-Based pricing mode

🏗️ Construction

Scenario: Hourly labor with overtime rates

• 0-8 hours: $50/hr

• 9-12 hours: $75/hr (1.5x)

• 13+ hours: $100/hr (2x)

Use Custom Formula mode

📦 Shipping

Scenario: Weight-based with handling fee

• Base: $10 handling

• Every 5 lbs: +$3

• Max: $50 total

Use Incremental pricing mode

🎨 Custom Art

Scenario: Square inch pricing with minimum

• $0.50 per sq inch

• Minimum: $25

• Bonus discount: 10% off 500+

Use Custom Formula mode

Setup Instructions

1. Add a Number Field

  1. Open your form in the form builder
  2. Add a Number Field to your form
  3. Set the label (e.g., "Quantity", "Hours", "Square Feet")
  4. Configure min, max, and step values

2. Enable Smart Pricing

  1. In the field settings, find the Smart Pricing section
  2. Toggle Enable Smart Pricing to ON
  3. Choose your pricing mode (Range, Incremental, or Custom Formula)

3. Configure Your Pricing

For Range-Based:

  • • Click "Add Range" to create a new tier
  • • Enter min/max quantities for each range
  • • Set either total price OR per-unit price (not both)
  • • Ranges cannot overlap

For Incremental:

  • • Enter base price
  • • Set "every X units" interval
  • • Enter price hike amount
  • • Optionally set max hikes and/or max total price

For Custom Formula:

  • • Write JavaScript expression in the formula field
  • • Use variables: quantity, min, max, step
  • • Test with different quantities using the preview

4. Test Your Pricing

Use the Live Preview feature to test your pricing with different quantities. Enter test values to see the calculated price in real-time before publishing.

Tips & Best Practices

✅ Do's

  • ✓ Test all quantity ranges thoroughly
  • ✓ Use clear field labels (Quantity, Hours, etc.)
  • ✓ Set appropriate min/max values
  • ✓ Preview pricing before going live
  • ✓ Document complex formulas
  • ✓ Consider mobile users (simple UI)

❌ Don'ts

  • ✗ Don't create overlapping ranges
  • ✗ Don't forget to set max values
  • ✗ Don't make formulas too complex
  • ✗ Don't skip testing edge cases
  • ✗ Don't forget decimal handling
  • ✗ Don't use negative prices

Troubleshooting

Price not calculating?

  • Check that Smart Pricing is enabled
  • Verify your ranges don't have gaps
  • Ensure quantity falls within defined ranges
  • Check browser console for JavaScript errors

Wrong price showing?

  • Double-check your range min/max values
  • Verify formula syntax in custom mode
  • Test with the preview feature
  • Check for decimal rounding issues

Pricing not syncing with cart?

  • Ensure form is properly attached to product
  • Check WooCommerce integration is active
  • Clear cart and try again
  • Verify product has a base price set

Need Complex Pricing Setup?

Our team can help you configure custom pricing logic for unique business scenarios.Get in touch with your requirements.

Master Smart Pricing

Watch our comprehensive video tutorial on setting up advanced pricing

Watch Video Tutorial