Avara UI

Pricing Components

A collection of highly-converting, responsive pricing sections. Whether you need traditional tiered subscription cards, a detailed comparison table, or an interactive quote builder, these components are designed to maximize conversions.
Pricing.tsx exports nine independent layouts — PricingCards, PricingScale, PricingDotPattern, PricingPlansPro, PricingBuilder, PricingTable, PricingSlider, PricingTypographic and PricingPlans — that share one color engine. Pick the layout that matches your funnel, then use the theme control above the gallery to see the accent cascade through badges, gradients, glows and buttons.

Selectable workspace plans

Interactive radio-selectable plans with Monthly/Annual toggle, team seat stepper, and responsive mobile accordion view.

Setvariant"plans-pro"
for selectable workspace plans with a sliding Monthly/Annual switch, Team Seats stepper, and orbiting border on the selected tier.
RenderPricingPlansPro
with plans (monthlyPrice, yearlyPrice, subtitle, features). Automatically switches from a 3-column card grid on desktop to an expandable radio stack on mobile.
scalePriceWithUsers{true}
multiplies each plan's displayed price as the user increments or decrements the Team Seats stepper.

Installation

New project? Follow the installation guide to set up Tailwind CSS, shadcn, the cn helper and lucide-react, register the @avara-ui registry once, then copy your styles from the Themes page.

Install Pricing

npx shadcn@latest add https://avaraui.com/r/pricing.json

components/custom/blocks/Pricing.tsx is written into your project. Copy any snippet from a Usage tab above and it runs.

Install dependencies

Step 1 installs these for you. Run them yourself only if you are adding Pricing to an existing project by hand. The cn helper and lucide-react are not listed — the installation guide covers them once for every component.

button, tilted-card and toggle-group are components, not packages — the shadcn CLI installs them as source files.

npx shadcn@latest add https://avaraui.com/r/button.json https://avaraui.com/r/tilted-card.json https://avaraui.com/r/toggle-group.json

Examples

Tiered cards

One card per plan, with a billing-cycle tab strip above them.

Setvariant"default"
for the classic three-column tiered subscription layout.
Passdata
as { tabs: [{ plans: [...] }] } — the tabs become the billing-cycle strip.
popular{true}
on a plan scales that card up, accents it with the theme border, and adds a subtle 3D tilt hover effect.

Dot matrix cards

Minimalist cards with top dot-matrix pattern, corner frame accents, and featured glow state.

Setvariant"dot-pattern"
for minimalist cards with a dot-matrix header pattern and corner angle brackets.
RenderPricingDotPattern
with plans — each a badgeTag, price, period, description and features under a featuresTitle. featured gives that card the glow.

Scale cards

Modern dual-card layout with launch & scale plans, monthly/annual toggle, and bottom strategy call CTA.

Setvariant"scale"
for the dual-panel launch & scale cards with a bottom strategy-call banner.
RenderPricingScale
with plans as { monthly, annually } — two plans each. A plan's popularBadgeText and featuresTitle label the highlighted card and its list; footerTitle, footerSubtitle and footerCtaText / footerCtaHref write the strategy-call strip.

Elegant cards

Setvariant"elegant"
for a lighter type scale and a top-border accent that lifts on hover.
counting{false}
disables animated price counting for a static numeric display.

Minimal cards

Setvariant"minimal"
to drop the card borders — the popular plan is marked by a single ring instead.

Bordered cards

Setvariant"bordered"
for the neo-brutalist take: square corners, thick borders, offset shadows.

Quote builder

Setvariant"builder"
for an interactive modular quote calculator.
color
is PricingBuilder's primary theme prop — it carries its own module data and recalculates the animated total itself.

Comparison table

Setvariant"table"
for a multi-column feature comparison matrix.
data
on PricingTable lays plans out as columns and features as grouped rows. A values entry may be true, false or a string.

Usage slider

Setvariant"slider"
for a volume-based range slider pricing tier.
data
on PricingSlider defines the volume tiers — dragging updates the tier, price and included limits together.

Typographic menu

Setvariant"typographic"
for an editorial horizontal list layout.
data
on PricingTypographic takes every plan in one array; tag each with billingCycle to drive the monthly/yearly switch — a ToggleGroup in the block's color.

Interactive service checklist

Setvariant"plans"
for an interactive service toggle checklist and live quote card.
PricingPlans
calculates estimated cost based on selected services (Design, Development, Fast Track).

Props Reference: PricingCards

PropTypeDefaultDescription
dataPricingDataRequired
The core data object containing an array of tabs (e.g. Monthly vs Annually), which in turn contain an array of plans.
variant
"default" | "dot-pattern" | "scale" | "elegant" | "minimal" | "bordered"
"default"
Applies structural card layouts. dot-pattern renders dot-matrix header cards, scale renders dual-panel scaling cards, bordered uses neo-brutalist edges, and elegant uses soft border-top accents.
titlestringundefined
Optional section header title text displayed above the pricing cards.
subtitlestringundefined
Optional subheader text displayed underneath the main title.
badgeTextstringundefined
Optional top badge tag text rendered above the section title.
color"indigo" | "rose" | "emerald" | "zinc" | string"indigo"
Applies global color themes to the "Most Popular" badges, checkmark icons, primary buttons, and gradients. Any custom hex string is resolved through CSS variables.
countingbooleantrue
Toggles animated number count-up for price values across all plans. When set to true, prices count up smoothly on mount or tab change; when false, prices display statically without animation.

Props Reference: Other Layouts

ComponentPropTypeDefaultDescription
PricingBuildercountingbooleantrue
Controls animated count-up for the calculated total price.
PricingBuildercolorPricingColor"indigo"
Accent for the module toggles, animated total and call to action.
PricingTabledataPricingTableDataRequired
plans become the columns (one may set featured) and sections group the feature rows.
PricingTablecountingbooleantrue
Toggles animated count-up for plan prices in column headers.
PricingTablecolorPricingColor"indigo"
Accent for the featured column, checkmarks and buttons.
PricingSlidercountingbooleantrue
Controls animated count-up when dragging the usage volume slider.
PricingSlidercolorPricingColor"indigo"
Accent for the range track, thumb and computed price.
PricingTypographicpackagesPricingTypographicPlan[]Required
A flat list of plans split by billingCycle.
PricingTypographiccountingbooleantrue
Toggles animated count-up for active plan prices.
PricingTypographiccolorPricingColor"indigo"
Accent for the active row, price and underline treatment.
PricingPlansservicesPricingServiceOption[]
List of selectable service items with pricing, icons and feature bullet points.
PricingPlanscolorPricingColor
Accent theme color for selected checkboxes, total calculation and CTA button.
PricingScaleplans{ monthly: ScalePlanItem[]; annually: ScalePlanItem[] }
Object containing monthly and annually arrays of pricing plan cards with titles, prices, icons and features.
PricingScalebadgeText / title / subtitlestring
Custom text props for top pill badge, section heading, and description paragraph.
PricingScalefooterTitle / footerSubtitle / footerCtaText / footerCtaHrefstring
Configuration props for the bottom strategy call CTA banner.
PricingScalecolorPricingColor
Applies accent color to popular plan ring/badge, checkmarks, active toggle, and CTA buttons.
PricingPlansProplansPlansProItem[]defaultPlansProItems
Array of selectable plan tiers (Starter, Growth, Scale) with monthlyPrice, yearlyPrice, subtitle, and features.
PricingPlansProlayoutMode"responsive" | "horizontal" | "vertical""responsive"
Renders a 3-column horizontal grid on desktop and automatically switches to a vertical expandable radio stack on mobile screens.
PricingPlansProscalePriceWithUsersbooleantrue
Multiplies each plan's displayed price dynamically as the user adjusts the seat counter stepper.