Jun 10, 2025
How to implement Clay’s pricing using Flexprice?



Credit-based pricing is becoming the go-to model for AI and API-first products. In this model, users purchase a set number of credits in advance, which act as a universal currency across your product. Instead of pricing each feature individually in tokens, API calls, compute time, or storage, you assign each action a credit cost. As the user interacts with the product, credits are deducted based on what they use.
Implementing a credit-based pricing model is hard. We’ve written about the framework you should consider before launching a credit-based pricing model.
In this guide, we’ll walk through how to implement such a model using Flexprice with a real-world example inspired by Clay, a popular AI-powered lead enrichment tool.

Clay offers a credit-based pricing model across 5 different plans based on different team sizes and usage needs. These credits gets renewed every month for Monthly plans while all credits are granted upfront in case of Annual plan. These credits are consumed as you perform actions like enriching contacts, scraping data, or generating AI content within the platform. If we deep dive into the pricing page, it includes:
Credits & billing:
Each plan gives you a fixed number of credits per month (e.g., 2,000, 10,000, or 50,000), which are used to run tasks on the platform. These credits renew every month.Credit rollover:
Unused credits roll over to next month but you can only accumulate up to 2X your monthly allocation.
For example, if you’re on the Explorer plan with 10,000 credits/month, your credit balance will never exceed 20,000 at any time.Monthly vs annual billing:
You can choose between monthly or annual billing. Annual billing offers a 10% discount and provides all credits upfront, which is ideal for teams planning long-term projects.Flexible credit options:
Some plans (like Starter and Explorer) let you choose between different credit amounts, giving you more control based on your expected usage.Feature access:
All paid plans include features like Chrome extensions, integrations, AI enrichment (Claygent), scheduling, and more. Higher-tier plans unlock deeper integrations, webhooks, CRM workflows, and support for larger data volumes.
Whenever you perform any action in the product, credits are consumed based on individual action. Example,
Creating a table of suitable prospects costs 10 credits.
Enriching a contact costs 1.5 credits per table row.

Now, let’s assume you’re a product (or growth) manager at Clay and you plan to use Flexprice for monetizing your platform. Let’s create a Starter plan using the dashboard:
Login into platform
Go to Flexprice's dashboard & log in to your workspace.
Create features
Features represent the building blocks of your pricing logic. They determine what you meter, charge for, or gate under different plans.
Every action a user performs in the product (whether it consumes credits or not but is part of pricing) can be defined as a Feature in Flexprice.Let’s say whenever a user using Clay’s platform successfully creates a table, an event is triggered with Event name = table_create and Status = success
You can create a Metered feature for the same and define the event schema.
Similarly, as soon as a user enriches a row on the platform, Clay’s team triggers an event which can be defined in a similar format.
Then there are features like Exporting that are part of pricing page but aren’t consuming any credits. Feature like these can be defined as Boolean features. If however, you want to know how many times a user clicks on export or maybe plan to charge at a later stage, you can go ahead and define it as a metered feature.
Set up a pricing plan
In Flexprice, you can define a pricing plan like "Starter" by setting up the following:
Charges
Define Recurring charges as $149 per month. You can also define other configurations like you want users to pay during start or end of the billing period or a trial period as well.
Similarly, define usage-based charges as well by selecting the feature and amount associated with it.
Example create table feature consumes $10 while enrich contacts consume $1.5 per row. Don’t worry about currency ($) to credit conversion. That will be taken care of while we’ll create a wallet
Entitlements
You can use Entitlements to define the other features which are part of pricing plan (e.g. Exporting in this case) but you don’t want to charge for them. Also, if say Clay wanted to give 5 table creations for free, they can do it using Entitlements.
Assign a subscription to the customer
Create a customer and assign a plan. This is known as subscription. You can select the subscription date as well as when do you want to bill your users which is based on Calendar(1st of every month) or Anniversary (the date on which user has purchased the subscription).
Define Credit Grants
Field
Meaning
Credit Name
Name of credit you want to show on the invoice
Amount
Number of credits you want to grant
Cadence
One-time or recurring (monthly/yearly)
Expiry
Set expiry: Never, After X days, or End of Subscription
Priority
Determines which credits are consumed first (lower = higher)
Define Recurring Credits
In our use case, for Starter plan, users get 2000 recurring credits that gets renewed every month. Add Credit name, the number of credits that you want to give and the frequency at which you want to grant credits. For example, if you’ve an yearly plan but you want credits to renew every month, you can implement such use cases as well.Set-up expiry date
While defining credit grants, you have an option to set-up expiry as well which means you want credits to expiry after certain number of days, by the end or the subscription period or never gets expired. Example Clay gives 100 credits in Free plan that gets expired as soon as the free period of 14 days end. So, you can define 14 days here.Define credit priority
You can also, define the Priority of the grant. Example you’ve a sale and you planned to top-up all accounts with 100 free credits and want them to be used first and then use the monthly credits, you can define the priority of those credits. Lower the value, higher the priority.
Now, for the same customer, hover over to the wallet section and you’ll see
Current Balance It is the balance as per the latest invoice.
Ongoing balance This is real-time balance which gets adjusted based on how customer is using the platform on real-time basis.
Credit-based pricing helps abstract complex usage into a flexible, fair monetization model — one that aligns better with infrastructure costs, product value, and customer willingness to pay.
With Flexprice, you can:
Launch credit-based plans in minutes
Track and meter real-time usage
Empower product and GTM teams to iterate without engineering cycles
Blogs
Blogs
Blogs
More insights on billing
Insights on
billing and beyond
Explore expert tips, industry trends, and best practices for billing, pricing, and scaling revenue.