pricing-tables
beginner
pricing
cards
subscription
plans
responsive
Category · Pricing Tables Difficulty Level · Beginner Published on · August 18, 2025

Pricing Cards

Modern pricing cards with different plans, features comparison, and interactive hover effects.

#pricing #cards #subscription #plans #responsive

Responsive Design

Yes

Dark Mode Support

No

lines

680

Browser Compatibility

Chrome · Firefox · Safari · Edge

Live Preview

Interact with the component without leaving the page.

600px

Overview

Modern pricing cards with different plans, features comparison, and interactive hover effects.

How to use

  1. Copy the HTML markup into your page.
  2. Paste the CSS into your stylesheet and ensure the selectors match your markup.
  3. Paste the JavaScript and load it after the markup.
  4. Adjust spacing, colors, and text to match your design system.

Customization tips

  • Rename class names to avoid collisions with your existing CSS.
  • Replace hard-coded colors with CSS variables for theming.
  • Verify the layout at 320px, 768px, and 1024px widths.

HTML

198

lines

CSS

340

lines

JavaScript

142

lines


                <div class="pricing-container">
  <div class="pricing-header">
    <h2 class="pricing-title">Choose Your Plan</h2>
    <p class="pricing-subtitle">Select the perfect plan for your needs</p>
    
    <div class="billing-toggle">
      <span class="billing-label">Monthly</span>
      <label class="toggle-switch">
        <input type="checkbox" id="billingToggle">
        <span class="toggle-slider"></span>
      </label>
      <span class="billing-label">Annual <span class="discount-badge">Save 20%</span></span>
    </div>
  </div>
  
  <div class="pricing-grid">
    
    <div class="pricing-card basic">
      <div class="card-header">
        <h3 class="plan-name">Basic</h3>
        <p class="plan-description">Perfect for individuals getting started</p>
      </div>
      
      <div class="price-section">
        <div class="price-wrapper">
          <span class="currency">\$</span>
          <span class="price" data-monthly="9" data-annual="7">9</span>
          <span class="period">/month</span>
        </div>
        <p class="price-note">Billed monthly</p>
      </div>
      
      <ul class="features-list">
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Up to 5 projects
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          10GB storage
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Email support
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Basic analytics
        </li>
      </ul>
      
      <button class="cta-button basic-btn">Get Started</button>
    </div>
    
    
    <div class="pricing-card pro popular">
      <div class="popular-badge">Most Popular</div>
      <div class="card-header">
        <h3 class="plan-name">Pro</h3>
        <p class="plan-description">Best for growing businesses</p>
      </div>
      
      <div class="price-section">
        <div class="price-wrapper">
          <span class="currency">\$</span>
          <span class="price" data-monthly="29" data-annual="23">29</span>
          <span class="period">/month</span>
        </div>
        <p class="price-note">Billed monthly</p>
      </div>
      
      <ul class="features-list">
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Unlimited projects
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          100GB storage
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Priority support
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Advanced analytics
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Team collaboration
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          API access
        </li>
      </ul>
      
      <button class="cta-button pro-btn">Start Free Trial</button>
    </div>
    
    
    <div class="pricing-card enterprise">
      <div class="card-header">
        <h3 class="plan-name">Enterprise</h3>
        <p class="plan-description">For large organizations</p>
      </div>
      
      <div class="price-section">
        <div class="price-wrapper">
          <span class="currency">\$</span>
          <span class="price" data-monthly="99" data-annual="79">99</span>
          <span class="period">/month</span>
        </div>
        <p class="price-note">Billed monthly</p>
      </div>
      
      <ul class="features-list">
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Everything in Pro
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Unlimited storage
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          24/7 phone support
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Custom integrations
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Advanced security
        </li>
        <li class="feature-item">
          <svg class="check-icon" viewBox="0 0 24 24" fill="currentColor">
            <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
          </svg>
          Dedicated manager
        </li>
      </ul>
      
      <button class="cta-button enterprise-btn">Contact Sales</button>
    </div>
  </div>
  
  <div class="pricing-footer">
    <p class="footer-text">All plans include a 14-day free trial. No credit card required.</p>
    <div class="trust-indicators">
      <div class="trust-item">
        <svg viewBox="0 0 24 24" fill="currentColor">
          <path d="M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4z"/>
        </svg>
        <span>SSL Secured</span>
      </div>
      <div class="trust-item">
        <svg viewBox="0 0 24 24" fill="currentColor">
          <path d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/>
        </svg>
        <span>Money Back Guarantee</span>
      </div>
    </div>
  </div>
</div>

              
198lines
7107characters
HTMLLanguage

Browser Compatibility

Chrome

>= 60

Firefox

>= 55

Safari

>= 10

Edge

>= 15

Related Code Snippets

Explore template packs

Need larger building blocks? Browse responsive landing pages and component bundles.

Open HTML Template Library ->