Overview
Matrix Pricing allows you to create flexible pricing structures that vary based on multiple attributes (dimensions) from your usage events. Instead of creating separate plans for different pricing scenarios, you can define a single price matrix that automatically applies the correct price based on event attributes.
What Can I do with Matrix Pricing?
- Price differently based on customer region and feature tier
- Vary rates by usage type and service level
- Combine any two event attributes to create custom pricing logic
- Maintain a single plan while supporting complex pricing requirements
Current Capabilities (Phase 1)
- Charge Type: Usage Based charges only
- Pricing Model: Per Unit pricing only
- Dimensions: Up to 2 dimensions from Event object fields
- Processing: Real-time and batch processing support
Getting Started
Prerequisites
Before setting up Matrix Pricing, ensure:
- You have “Event Based Rating” toggled ON for your company.
- Your usage events include the attribute fields you want to use as dimensions
- The event fields contain categorical values (text/string values like "us-east", "premium", "standard")
- You understand which event attributes drive your pricing logic
Create a Price Matrix Template
Price Matrix templates are reusable structures that define which dimensions to use for pricing. You can create templates once and reuse them across multiple charges.
Step 1: Access Price Matrix Management
- Navigate to Products and Plans in the main menu
- Click on Price Matrix (new menu item)
- You'll see the Price Matrix management page
Step 2: Create a New Template
- Click Create Price Matrix or Add New Template.
- Enter the following information:
- Template Name: Give your template a descriptive name (e.g., "Region and Tier Pricing")
- Description: Add details about when to use this template (optional but recommended)
Step 3: Add Dimensions
- Click Add Dimension to add your first dimension
- Select the event field you want to use (e.g., "region")
- Click Add Dimension again to add a second dimension (optional, maximum 2)
- Select another event field (e.g., "feature_tier")
Step 4: Review and Save
- Review your dimension selections
- The system creates a skeletal matrix structure (without prices)
- Click Save
- Your template is now available for use across multiple charges
Important Notes:
- Dimension values are view-only in templates and won't be saved with the template
- You'll populate actual prices when configuring individual charges
- Templates can be marked as "Active" or "Inactive" to control availability
Use Matrix Pricing in a Charge
Now that you have a template, you can apply it to usage-based charges.
Step 1: Create or Edit a Usage-Based Charge
- Navigate to your plan in Products and Plans
- Click Add on the Plans and Charges page.
- Click on Add Charge on the New Plan page.
- Select:
- Charge Type: Usage Based
- Pricing Model: Per Unit (only option for Matrix Pricing in Phase 1)
Step 2: Enable Matrix Pricing
- Locate the Enable Matrix Pricing toggle switch
- Turn the toggle ON
- A new Price Matrix tab will appear
Step 3: Configure Your Price Matrix
You have two options:
Option A: Select an Existing Template
- Click on the Price Matrix tab
- Select Use Existing Matrix
- Choose a template from the dropdown
- The matrix table will populate with dimension combinations
Option B: Create a New Matrix
- Click on the Price Matrix tab
- Select Create New Matrix
- Click Add Dimension and select event fields (same process as creating a template)
- Optionally click Save as Template to reuse this matrix later
Step 4: Populate Prices
The matrix table will display with the following structure:
For each row:
- Enter the Unit Price for that dimension combination
- The price will be applied when events match that exact combination
Step 5: Save Your Charge
- Review all price entries
- Ensure the Default row has a price
- Click Save to create the charge with matrix pricing
Same process can be used during Subscription creation to override existing pricing matrix or create a new one.
Understanding Matrix Pricing
Pricing Calculation Logic
When a usage event is processed:
- System identifies dimension values from the event
- Example: Event has region="us-east" and feature_tier="premium"
- System looks for exact match in the price matrix
- Searches for a row with (us-east, premium)
- If found, uses the unit price from that row
- Applies per-unit calculation
- Final charge = Event quantity × Unit price for that dimension combination
- Falls back to Default if no match
- If no exact match found, uses the Default row price
- Ensures every event can be priced
Example Calculation
Price Matrix Setup:
- Default: $1.00 per unit
- us-east | premium: $2.50 per unit
- us-west | standard: $1.25 per unit
Event Processing:
- Event 1: region=us-east, tier=premium, quantity=100
- Matches (us-east, premium) → 100 × $2.50 = $250.00
- Event 2: region=us-west, tier=standard, quantity=50
- Matches (us-west, standard) → 50 × $1.25 = $62.50
- Event 3: region=eu-central, tier=basic, quantity=75
- No match found → Uses Default → 75 × $1.00 = $75.00
Manage Price Matrix Templates
View Templates
- Go to Products and Plans > Price Matrix
- View all templates with:
- Template name and description
- Dimensions used
- Active/Inactive status
Edit Templates
- Click on a template from the list
- Modify:
- Template name or description
- Dimension selections
- Active/Inactive status
- Click Save
Note: Changing a template does NOT automatically update charges already using it. You must update each charge individually.
Clone Templates
- Find the template you want to copy
- Click the Clone button
- Give the new template a unique name
- Modify dimensions as needed
- Save the cloned template
Delete Templates
- Locate the template you want to delete
- Click Delete
- System checks if template is in use
- If in use: System shows error and lists charges using it
- If not in use: Confirm deletion
Comments
0 comments
Please sign in to leave a comment.