PLG OS

BlogsComponentsPricingDemo
Get started

Pricing page template · 6 min read

SaaS Pricing Page Template: Tiers, Table, FAQ and CTAs

A SaaS pricing page needs five parts: a small set of tiers, each named for the customer it serves; a rule for what goes in each tier; a feature comparison table grouped by job; an FAQ that answers billing and plan-change questions; and one primary call to action per tier. The outline below covers all five, with placeholders to fill in.

Use this as a drafting outline, not a finished page. Prices, limits and plan names are placeholders in [brackets]. The structure assumes a product with a self-serve path and a sales-assisted path; drop the tiers you don't sell. Nothing here is a benchmark, so compare your own conversion data before and after any change.

The copyable page outline

Paste this into your page doc and replace each [bracket]. The sections run top to bottom in the order a visitor reads them.

Pricing page outline
PRICING PAGE OUTLINE: [Product name]

1. Header
   - Headline: [Outcome the customer pays for], priced for [team size or usage]
   - Subhead: [One sentence on the value metric, e.g. "Pay per active seat"]
   - Billing toggle: Monthly | Annual ([state the annual terms plainly])

2. Tier cards (left to right, lowest to highest)
   For each tier:
   - Tier name: [name]
   - Who it is for: [one line, e.g. "Solo builders validating an idea"]
   - Price: [amount] per [unit] per [month | year]
   - Value metric limit: [seats | projects | events | credits]
   - "Everything in [previous tier], plus:"
   - 3-5 features that differ from the tier to the left
   - One primary button: [Start free | Start trial | Contact sales]

3. Feature comparison table
   - Rows grouped by the job the customer is doing
   - Columns: the tiers, in the same order as the cards
   - Cells: included, a stated limit, or not included

4. Policy line
   - [Cancellation policy] | [Refund policy] | [Security or data page]

5. Pricing FAQ
   - 5-8 questions on billing, limits, plan changes and cancellation

6. Closing CTA
   - The self-serve button and the sales button side by side

Tier structure and what goes in each tier

Decide the tiers before you design the cards. Each tier should map to a distinct customer and a step up in the value metric, so a buyer can tell which one is theirs without reading the whole table.

Tier structure
TierWho it is forWhat goes in itWhat stays outPrimary CTA
Free or trialSomeone checking whether the product solves their problemEnough of the core workflow to reach your activation event at least onceTeam administration, high usage limits and support commitmentsStart free or Start trial
Entry paid tierAn individual or small team using the product regularlyThe core workflow with working limits, basic integrations and email supportControls that only larger teams needStart [tier name]
Team or growth tierA team that collaborates and needs to manage accessCollaboration, roles and permissions, more integrations, higher limits and reportingProcurement and compliance requirementsStart [tier name]
Enterprise or customAn organisation with security, procurement or scale requirementsSSO, audit logs, custom contracts and invoicing, a support commitment and custom limitsNothing hidden: list what's included even when the price is Contact salesContact sales
  • Pick one value metric, such as seats, usage or projects, and make it rise across the tiers. Several metrics at once make the cards hard to compare.
  • Put each feature in the lowest tier where the customer who needs it first appears.
  • Write each card's feature list as the difference from the tier to its left.
  • If you highlight a recommended tier, say who it's recommended for.

Feature comparison table layout

The table answers the question the cards can't: is the specific thing I need included? Group rows by the job the customer is doing and keep the column order identical to the cards.

Feature comparison table layout
Group: row[Free][Entry][Team][Enterprise]
Usage: [value metric][limit][limit][limit]Custom
Usage: [second limit, e.g. projects][limit][limit][limit or unlimited]Unlimited
Core workflow: [feature]IncludedIncludedIncludedIncluded
Collaboration: roles and permissionsNot includedNot includedIncludedIncluded
Integrations: [integration group][number or list][number or list]IncludedIncluded
Security: SSONot includedNot included[Add-on or not included]Included
Security: audit logNot includedNot included[Add-on or included]Included
Support: channel and response commitment[Docs or community][Email][Email and chat][Named contact and stated commitment]
Billing: payment termsNot applicable[Card][Card][Invoice]
  • Write cell values as words or limits. A check mark alone can't express a limit.
  • Keep the column headers visible while scrolling a long table, and let it scroll sideways on phones instead of squeezing the columns.
  • Link a row label to documentation when the feature name isn't self-explanatory.

Pricing-page FAQ copy

Draft answers for the questions buyers ask before they pay. Replace the bracketed terms with your actual policy, and never publish a policy you don't operate.

Pricing FAQ copy
Q: Can I change plans later?
A: Yes. You can upgrade at any time and [describe proration, e.g. "pay the
   difference for the rest of the billing period"]. Downgrades take effect
   [at the end of the current billing period | immediately].

Q: What happens when my trial ends?
A: [Your account moves to the Free plan | Your workspace is paused until you
   choose a plan]. We [do | do not] ask for a card to start the trial.

Q: What counts as a [value metric unit]?
A: A [unit] is [precise definition, e.g. "a member who signs in during the
   billing month"]. You can see your current usage in [location in product].

Q: What happens if I go over my limit?
A: [We notify you before you reach the limit and you can upgrade | Overage is
   billed at [rate] | Usage pauses until the next billing period].

Q: Do you offer annual billing?
A: Yes. Annual plans are billed [upfront | in instalments] and [state the
   annual terms].

Q: How do I cancel?
A: [Path in product, e.g. "Settings > Billing > Cancel plan"]. Your plan
   stays active until [the end of the paid period], and [state what happens
   to your data].

Q: Do you offer discounts for [startups | nonprofits | education]?
A: [Yes: eligibility and how to apply | No].

Q: Which payment methods do you accept?
A: [Cards | invoice for the Enterprise tier | other methods you support].

CTA placement

Give each position one job, and keep the button text consistent with the tier it belongs to.

CTA placement
PositionCTAWhy it is there
Under the headlineThe self-serve button for the most common tierVisitors who've already decided shouldn't have to scroll
Each tier cardOne button per card, labelled for that tierThe card is where the choice is made
Below the comparison tableThe self-serve and sales buttons side by sideDetailed evaluators finish reading here
After the FAQThe closing CTA againObjection handling ends here
Enterprise card and columnContact sales, plus what happens nextSales-assisted buyers want to know the next step
  • Use one primary button style per card. A second action, such as Compare plans, works better as a text link.
  • Say what the click does. Write 'no card required' only if no card is required.
  • Test every button URL after each deploy, so no CTA leads to an error page.

How to do it with PLG OS

PLG OS doesn't build your pricing page. It covers what happens around it, inside your product, with capabilities described on plgos.com.

Show plan information inside the product

The SDK component library lists a Pricing & Credits component for pricing and credit management, so plan details can appear where a user reaches a limit, not only on the marketing page. SDK components

Target upgrade prompts

PLG OS plans list audience and segmentation plus custom events and attributes, so an upgrade prompt can be shown only to accounts near a limit instead of to everyone. PLG OS pricing

Ask users what they'd pay for

In-app feedback and surveys let you ask users how they rate the product and which features they want next, which is direct input for what belongs in each tier. Feedback and surveys

Answer pricing questions in context

Help Hub is an in-product assistant that answers user questions and can share updates, so the FAQ above can also live inside the product. User assistance

Get started with PLG OS →

Common questions

How many tiers should a SaaS pricing page have?

As many as you have distinct customer types. For many self-serve products that's three or four, including a free or trial tier. Each extra tier makes the comparison harder, so add one only when a real customer group doesn't fit the existing tiers.

Should I show a price for the enterprise tier?

Only if the price isn't negotiated. If it is, say Contact sales, but still list what's included and what happens after someone gets in touch, so the tier isn't a blank box.

What is a value metric?

It's the unit the price scales with, such as seats, usage or projects. A good value metric rises as the customer gets more value from the product, which keeps upgrades in line with use.

Should the free tier include the core feature?

It should include enough of the core workflow for a user to reach your activation event. A free tier that stops before the first moment of value gives people little reason to upgrade.

Should the billing toggle default to monthly or annual?

Default to the option most of your customers actually choose, and state the annual terms plainly. Whichever you pick, the price shown must match what checkout charges.

How do I know whether a pricing page change worked?

Compare one defined conversion, such as pricing-page visit to paid signup, across comparable periods or in a controlled test. Pricing pages often get little traffic, so allow enough time for a difference to be more than noise.

Basis and scope

This template is a drafting aid built on commonly used definitions and illustrative placeholders. It is not a measured benchmark or a customer case study. Prepared with AI assistance. Check product-specific behaviour against current documentation and your own data.

Read next