Preblocks

Pricing Blocks for Shadcn and React

Saas pricing with billing toggle

Block details

A SaaS subscription pricing section with monthly/yearly billing toggle using Shadcn Tabs. Features a 3-column grid layout with customizable pricing tiers, feature lists, highlighted popular plans, and discount badges for annual billing. Perfect for SaaS products and subscription services.

Dependency Source
Card (shadcn) Registry
Badge (shadcn) Registry
Button (shadcn) Registry
Tabs (shadcn) Registry
Lucide React NPM

Horizontal pricing card

Block details

A horizontal pricing card layout with a two-column design. Features a left section for plan details and features list, and a right section with centered pricing and call-to-action. Perfect for showcasing a single premium plan.

Dependency Source
Button (shadcn) Registry
Lucide React NPM

Frequently asked questions

How do I customize the pricing tiers?
Pass a `tiers` prop with an array of pricing tier objects. Each tier includes id, name, description, price, currency, features array, and optional highlighted flag. The buttonText and buttonVariant properties allow you to customize each tier's call-to-action independently.
Can I highlight a specific pricing tier as "Most Popular"?
Yes! Set the `highlighted` property to `true` on any pricing tier object. This will add a "Most Popular" badge, apply primary border styling, and add a subtle ring effect to make the tier stand out from the others.
Is this pricing block responsive?
Absolutely. The pricing grid uses a responsive layout that displays as a single column on mobile, and 3 columns on desktop (lg breakpoint). All cards maintain consistent height and spacing across breakpoints.
How do I change the currency symbol or pricing display?
Each pricing tier has a `currency` property (default is "$") and a `price` number. You can customize these per tier.
Can I customize the features list for each tier?
Yes, each tier accepts a `features` array of strings. The component automatically renders each feature with a check icon. Features can be different for each tier - use "Everything in [Plan]" to indicate plan inheritance clearly.
How do I change the button text and style for each tier?
Use the `buttonText` property to set custom text (e.g., "Get Started", "Contact Sales") and `buttonVariant` to choose between "default" (filled) or "outline" styles. This allows you to differentiate tiers with different calls-to-action.
Are the pricing blocks free to use?
Yes. All our pricing blocks are free to use in personal and commercial projects.
How do I use these pricing blocks in my project?
Simply browse our collection, click on the "Copy Code" button for your chosen block, and paste it into your Shadcn React project. All components are built with Tailwind CSS and shadcn React, so they'll work seamlessly with your existing setup.
Can I customize the pricing blocks?
Absolutely! All our pricing blocks are fully customizable. You can easily modify colors, spacing, typography, and layout by adjusting the Tailwind CSS classes in the component code.