Stripe billing is a weird one to wrap your head around at first. You’ve got Products and Prices, and if you're like me, you are probably a bit confused as to how to structure your billing. It’s easy to overthink this. It’s a super powerful platform for managing subscriptions and pricing flexibly, but it needs to be set up correctly to avoid headaches down the line.
After setting up Stripe pricing for Conncord (in a somewhat rushed manner), I wanted to make sure I have things set up correctly, and in an extensible manner, for mentioned.fyi (coming soon btw!).
So I did a bunch of research and reading. Let me break it down in a way that actually makes sense.
What is a Product in Stripe?
A Product is what you’re selling—simple as that. It could be a SaaS subscription, a one-time service, or even a physical item. But the key takeaway is this: A Product doesn’t determine pricing. It’s just the thing you’re offering.
What qualifies as a Product?
- It’s a core service or item you provide.
- It exists independent of price.
- It could have multiple prices.
Examples of Products:
- Social Media Monitoring Subscription
- Analytics Dashboarding Tool
- SEO Consulting Service
Cool, now onto Prices.
What is a Price in Stripe?
A Price in Stripe is exactly what it sounds like—it’s how much you charge for a product and how it’s billed. A single product can have multiple Prices based on billing cycles, tiers, or usage.
Key Characteristics of a Price:
- Defines billing frequency (one-time, monthly, yearly, etc.).
- Supports tiered or usage-based pricing.
- Can be changed without modifying the product itself.
Examples of Prices:
- $49/month for 10 keyword tracking
- $99/month for 50 keyword tracking
- $199/month for unlimited keyword tracking
- $10/month per additional user (add-on)
When to Use Product vs. Price
Okay, but when do I use one vs. the other?
Here’s a simple rule:
- New Offering? Create a Product.
- Different ways to charge for that Offering? Create a new Price.
Scenario | Product or Price? | Example |
---|---|---|
Selling a core SaaS subscription | Product | Social Media Monitoring Subscription |
Offering different billing cycles (monthly vs. yearly) | Price | $49/month or $499/year |
Promotional Campaign Prices | Price | $ |
Selling an add-on feature (e.g., extra users) | Separate Product or Additional Price | $10/month per user |
Charging for a one-time service | Price | $299 for data export |
Usage-based billing (metered API calls) | Price (Metered) | $0.01 per API call |
How HubSpot Does It
One of the easiest ways to understand this, I've found, is by looking at how HubSpot would structure their Stripe billing if they were to use Stripe.
HubSpot’s Products (The Big Buckets)
- Marketing Hub – Email marketing, automation, landing pages.
- Sales Hub – CRM, sales automation, pipeline tracking.
- Service Hub – Customer support, ticketing, live chat.
- CMS Hub – Website management, content creation.
- Operations Hub – Data sync, automation, integrations.
- CRM Suite – A bundle that includes multiple hubs.
Each of these is a Product in Stripe’s terms.
HubSpot’s Pricing (How They Charge)
Each Hub has multiple Price points:
- Free – Basic CRM features at no cost.
- Starter – $X/month.
- Professional – $XX/month.
- Enterprise – $XXX/month.
On top of that, they have add-ons and usage-based pricing:
- Extra marketing contacts beyond the plan’s limit cost $X per 1,000 contacts.
- Custom reports, API calls, and advanced automation have separate pricing structures.
This Product-Price split allows HubSpot to offer multiple ways to buy and upgrade without needing to redefine their core offerings.
Final Thoughts
If you're building out billing for your own SaaS or service-based business, keep this in mind:
- Product = What you’re selling.
- Price = How you charge for it.
Simple, right? Well, kind of. Anyway, hope this helped.