Segment-style hybrid per tracked user pricing
In this template we’ll break down how to create an annual commitment with a 14-day free trial and how to create pricing based on the number of unique users like Segment uses.
Segment is a Customer Data Platform that helps companies leverage first-party customer data, or data from within a customer’s application. Segment can be used to track and understand user actions on a site or application.
Segment’s billing is primarily based on the number of monthly tracked users (MTUs), on the customer application or website. This can be estimated by adding your monthly active user count to the number of anonymous visitors you get per month.
The Free plan includes up to 1,000 MTUs. The Team plan is an annual commitment that includes 10,000 MTUs where additional MTUs are tracked and billed per-unit according to a graduated rate table; the more MTUs, the lower the per-unit cost.
Here is the rate table for the Team plan, having the fixed monthly (base) cost of $120.
For the Team plan, customers commit to pay $1,440 over the year, with additional usage (MTUs beyond 10,000) billed monthly according to the per-unit table above. Another term for MTUs is monthly unique users – essentially Segment wants to bill for the number of unique users whose usage data is stored on the Platform. To do so accurately, each user must be counted once and once only for billing.
We will walk through how to re-create this pricing model in Amberflo. The first step is to create an Amberflo account if you haven’t already (use this link - https://ui.amberflo.io/signup). See our Documentation for help getting your account set up and inviting team members to join.
You need to create a meter that will track each time an activity is recorded by Segment and record each time a new user is encountered. To do this, create a new meter in Amberflo named “Number of MTUs” and select the “Unique Count” meter type.
The Unique Count meter requires a unique dimension - this dimension value is used to determine uniqueness. Set the unique dimension to ‘user_id’ and add ‘user_id’ to the list of dimensions for the meter.
Each time an event is sent, it will have an associated ‘user_id’. If that ‘id’ is yet-unseen (unique), the count increases by 1. If the ‘id’ has already been counted, the count will remain unchanged. In this way, all usage is tracked but each ‘user_id’ can only be counted one time.
To begin tracking real-time usage, deploy the meter to your application using SDKs or configuring the ingestion API as shown in the AWS-style pricing or Zapier-style pricing templates.
Next create the ‘Team’ pricing plan. This plan has a base rate of $120 per month. You can model this as a recurring Fixed Fee in Amberflo.
In this case, be sure that options for ‘Covered by Prepaid Credits’ and 'Covered by Promotions’ are selected, since you will create the 14-day free trial using Promotions, and use prepaid credits when creating the annual commitment.
Next, create the product item for MTUs that is associated with the meter tracking MTUs, and add it to the pricing plan you just created.
Navigate back to the pricing plan you’re creating and select the product item for MTUs that was just added. Select the tiered rate model and create the pricing tiers shown above. After the free 10,000 MTUs are consumed, usage is billed per-MTU, so the block size for each tier should be set to 1. Select ‘Max Over Billing Period’ since you want to bill for the number of unique users each month. See the screenshot below:
Once this is complete, you can activate the pricing plan using the toggle in the top left corner of the main pricing plan view.
Next, create the customers in Amberflo to assign the ‘Teams’ pricing plan and configure the annual commitment. Note that the customer is the owner of the site or application that Segment is being used to track activity for.
This customer creation can be automated via API - each time a customer signs up with Segment for an account a corresponding customer would be created in Amberflo and assigned to the plan they selected. See our API Reference for more information on automating this.
Now that the customer is created, navigate to the Customer overview by selecting their name from the list of customers. Here you’ll see a history of the customer’s pricing plans and invoices, as well as any active prepaid credits, promotions, or commitments.
The Teams plan bills the base rate annually, $120/month x 12 months = $1,440, and then bills usage beyond the 10,000 included MTUs monthly. We need to create the annual commitment for $1,400. Select ‘Add Commitment’ and choose the option for ‘Pay in Advance’. Set the amount of credits at $1,440.
Create a promotion called 14-day Free Trial. It is a 100% discount for 14 days, then it expires and the customer is billed normally going forward. When creating the commitment, be sure ‘Pricing Plan Level’ is selected under the Promotions subsection, and then choose the 14-day Trial promotion you just created.
After you select ‘Save’, the commitment will be activated and can no longer be changed.
Segment’s per-tracked-user pricing is a great way to align the spend with resource consumption. Companies with applications and sites that see large number of users are creating greater data volumes on Segment’s platform, plus they have greater capacity to pay due to their larger size.
With the Free tier and tiered usage-based pricing scheme, Segment demonstrates value before seeking payment and decreasing the per-user rate as the total usage volume increases.
Central to it all is the ability to accurately track unique users of a site or app. Amberflo guarantees the accuracy and completeness of meter data so you can rest assured that your billing always remains correct and up-to-date.
With Amberflo you can implement any custom variation of unique user tracking with graduated pricing tiers like Segment uses for your own product.
Get started today, click here to create your account and start building.