PRICING / FREE HTML + ASTRO

Software pricing with billing switch

A software pricing section with monthly and annual options, explicit annual totals and live price announcements.

Try the design

Open demo ↗

Preview links stay in the example. Copy the source to use your own destinations. Form previews never send information.

Copy the source

<section class="fct-software-billing-pricing s-pricing s-billing" data-snippet="software-billing-pricing" aria-labelledby="fct-software-billing-pricing-heading"><div class="s-wrap"><p class="s-kicker">Clear options. Useful details.</p><h2 id="fct-software-billing-pricing-heading">Choose the scope that fits.</h2><p class="s-pricing-intro">Editable example prices and inclusions. Replace these with your actual scope, tax treatment and billing terms.</p><fieldset class="s-billing"><legend>Billing period</legend><label><input type="radio" name="fct-software-billing-pricing-billing" value="monthly" checked> Monthly</label><label><input type="radio" name="fct-software-billing-pricing-billing" value="annual"> Annually</label></fieldset><p role="status" class="s-billing-status">Showing sample monthly prices.</p><div class="s-prices"><article><div><p class="s-kicker">01 / Package</p><h3>Solo</h3></div><div class="s-price"><strong data-price="12" data-annual="120">€12</strong><p data-billing-note>per month</p></div><ul><li>1 workspace</li><li>3 active projects</li><li>Self-serve help center</li></ul><a class="s-button" href="contact.html">Discuss Solo</a></article><article><div><p class="s-kicker">02 / Package</p><h3>Team</h3></div><div class="s-price"><strong data-price="29" data-annual="290">€29</strong><p data-billing-note>per month</p></div><ul><li>3 workspaces</li><li>20 active projects</li><li>Shared team access</li></ul><a class="s-button" href="contact.html">Discuss Team</a></article><article><div><p class="s-kicker">03 / Package</p><h3>Studio</h3></div><div class="s-price"><strong data-price="59" data-annual="590">€59</strong><p data-billing-note>per month</p></div><ul><li>10 workspaces</li><li>100 active projects</li><li>Account support</li></ul><a class="s-button" href="contact.html">Discuss Studio</a></article></div></div></section>

Where this design fits

A native radio group changes the displayed billing option. Annual mode shows the annual total and its monthly equivalent; the supplied sample values are examples, not live subscription prices.

  • Monthly/annual radio group
  • Explicit annual totals
  • Polite price announcements

What is included

The HTML ZIP includes a standalone demo, reusable markup, scoped CSS, its small JavaScript runtime, a license and setup notes. The Astro ZIP includes Snippet.astro. It can be imported into an existing Astro page or layout.

Replace the demonstration prices

Update every price, currency, billing period, inclusion and tax statement. Action links lead to your chosen enquiry or checkout destination; this snippet does not create subscriptions, process payments or enforce plan limits.

Add it to an HTML website

  1. Copy snippet.html into the relevant page section.
  2. Load snippet.css after your existing site stylesheet. The class prefix identifies this design.
  3. Load snippet.js once with defer. Keep the included keyboard behavior when adapting interactions.
  4. Replace example content and check mobile widths, zoom, links and keyboard focus in your actual website.

Use it in Astro

Copy Snippet.astro into src/components/, import it into your page or shared layout, and insert the component where the section belongs. Keep each generated prefix unique if you duplicate a component on one page.

Keep the section maintainable

Start with the variables at the top of the CSS for background, text and accent colors. Preserve semantic labels and focus styles. Existing site selectors can still affect imported markup, so test the combined result. Read the complete setup notes.

GOOD DESIGN, OCCASIONALLY.

Your next idea
could start here.

New templates, useful guides, and updates from us.
A little inspiration for whatever you’re building.