VeroXM Docs

SaaS

A SaaS marketing site lives or dies on messaging: pricing framing, feature positioning, onboarding copy inside the product itself. This walkthrough sets up a Pricing Plans collection and an in-app onboarding experiment.

Modeling pricing plans

FieldTypeNotes
nametexte.g. “Growth”
taglinetextOne-line pitch shown on the pricing page
monthlyPricenumber
annualPricenumber
featuresmulti_enumerationFeature flags included in the plan
highlightedbooleanWhether to show the “Most popular” badge
ctaLabeltextButton copy, e.g. “Start free trial”

Driving the pricing page

The marketing site fetches all plans and renders them in the order returned, sorted by price:

GET /collections/pricing-plans/content
?sort=monthlyPrice:asc

Testing onboarding copy

The first screen a new signup sees inside the product is often managed as content too - a Onboarding Steps collection rendered by the app shell. Run an experiment on the first step's entry to test two different framings of the value proposition, and record a conversion when a new user completes onboarding rather than abandoning it:

Resolving the active variant
GET /collections/onboarding-steps/content/1?experiment=1

Because variant resolution is opt-in per request, the same entry can keep being read normally everywhere else in the product (support tooling, internal previews) while only the onboarding flow itself asks for a variant.

Plans as relations

If your app also needs to look up a plan by the slug a webhook or billing event references, add a relation field from your Accounts collection back to Pricing Plans so the dashboard shows which plan an account is on without a separate lookup table.