App Download Hero — iOS Android Store Buttons HTML CSS

App Download Hero · Heroes · Plain HTML & CSS · Live preview

Share & Support

What's included

Features

CSS phone frame mockup
Pure CSS phone bezel with double border simulation, centred notch, and a full app UI (header, balance card, chart, transactions) — no images needed.
Gradient text headline
background-clip: text with an indigo-to-pink gradient — the CSS gradient text technique used by Linear, Vercel, and Stripe for hero headings.
App Store + Google Play buttons
Both store buttons use official platform icon SVGs with the correct two-line label/name layout — matching the official Apple and Google badge design.
Dual radial glow background
Two CSS radial gradients — one on .hero-bg and one on ::before — create depth without images. The phone has its own blurred glow beneath it.
Social proof avatar row
Five overlapping circular avatars with negative margin (margin-right: -6px) — the "people are using this" social proof pattern.
Star rating with review count
Amber stars + rating score + review count — the app store rating pattern that communicates quality and adoption simultaneously.
App UI balance card
Gradient balance card inside the phone mockup matches the hero accent colour — visual cohesion between the hero and the phone content.
Responsive: phone hides on mobile
The phone mockup hides on screens under 700px — the content column centres with store buttons and social proof remaining fully visible.

About this UI Snippet

App Download Hero — Phone Mockup, Store Buttons, Gradient Text & Social Proof Row

Screenshot of the App Download Hero snippet rendered live

The app download hero is the most critical section of any mobile app landing page — it must communicate the app's value proposition, show what the app looks like, and drive users to download in under 5 seconds. This snippet builds a complete dark-theme app download hero: animated gradient text headline, App Store and Google Play buttons, a CSS phone frame mockup with a realistic app UI inside, star rating with review count, overlapping social proof avatars, and a radial glow background effect.

App landing pages from Notion, Linear, Robinhood, and Revolut all use this hero layout — left-side text and CTAs, right-side phone mockup showing the actual app UI. The phone mockup removes the need for actual screenshots and loads instantly, while the social proof row (overlapping avatars + user count) provides the "this is popular" signal that drives downloads.

CSS phone frame mockup

The phone frame is built entirely in CSS — no images, no SVGs. A dark rounded rectangle (border-radius: 36px) with a double border (inner border via box-shadow: 0 0 0 1px #1e293b) simulates a phone bezel. The notch is a centred dark rectangle at the top. The screen content is a flex column of app UI elements: header, balance card, bar chart, and transaction list.

The balance card uses an actual gradient (linear-gradient(135deg, #6366f1, #8b5cf6)) matching the hero's accent colour — this creates visual cohesion between the phone mockup and the surrounding hero content. The bar chart uses flex-aligned divs of varying heights — the active bar gets the gradient fill, all others remain dark.

Gradient text headline

The "beautifully simple." gradient uses background: linear-gradient(90deg, #818cf8, #c084fc, #f472b6) with -webkit-background-clip: text and -webkit-text-fill-color: transparent. The cross-browser approach uses both -webkit-background-clip: text (Safari/Chrome) and the standard background-clip: text (Firefox). The gradient runs from indigo through purple to pink — a colour story that complements the dark navy hero background.

Store buttons

Both store buttons use the same .store-btn base class with the native platform icon SVG. The layout is icon + two-line text block: a small "Download on the" / "Get it on" label and a larger platform name. This matches the exact layout of the official Apple and Google store badge design guidelines. Pair with a floating dock for a mobile navigation pattern that complements the app download theme.

Radial glow background

The hero background combines two radial gradients on the .hero-bg element and its ::before pseudo-element. The main glow is centred toward the phone side of the layout; the secondary glow appears at the bottom-left for depth. The phone itself has a separate .phone-glow div with a blurred radial gradient beneath it — simulating the ambient light effect used in Apple's product photography.

Step by step

How to Use

  1. 1
    Paste HTML and CSSA full-screen dark hero appears with text content on the left and a phone mockup on the right. The phone shows a finance app UI with balance, chart, and transactions.
  2. 2
    Read the app UI in the phoneThe phone mockup contains a greeting, a gradient balance card showing $12,847.50, a bar chart with one highlighted bar, and three transaction rows.
  3. 3
    Hover the store buttonsApp Store and Google Play buttons lift with a subtle shadow on hover — identical to native platform badge interaction patterns.
  4. 4
    Check the social proof rowFive overlapping avatar initials plus "Join 50,000+ users managing money smarter" — the social proof row sits below the store buttons.
  5. 5
    Customise the headlineChange the main title text. The second line (.gradient-word) has the purple-to-pink gradient — swap it to any text or add your own gradient colours.
  6. 6
    Update the phone UI contentChange the balance amount, chart bar heights (via inline style="height:X%"), and transaction rows. Update colours and emoji icons to match your app's brand.

Real-world uses

Common Use Cases

Mobile app landing pages
The primary use case — fintech, productivity, health, and lifestyle apps use this layout to drive App Store and Google Play downloads.
SaaS with mobile companion apps
B2B SaaS products that have mobile apps use this hero to cross-promote the mobile experience to desktop web users.
Product Hunt launch pages
Launch day landing pages for mobile apps use the phone mockup hero to show the product immediately — before users decide to click through to the store.
Coming soon pages for apps
Pre-launch landing pages collect email subscribers with this hero — "Join 50,000+ on the waitlist" variant of the social proof row.
App feature showcase pages
Multi-section landing pages use this hero as the first section, with feature cards, testimonials, and pricing sections below.
Developer portfolio for mobile apps
Freelance mobile developers and app studios use this hero to showcase their apps — the phone mockup shows the UI without requiring actual App Store screenshots.

Got questions?

Frequently Asked Questions

Replace .phone-screen content with an <img> element: <img src="screenshot.png" style="width:100%;display:block;">. Set the phone-frame height to match the image aspect ratio. Use object-fit: cover if the screenshot doesn't exactly match the phone dimensions.

Add a <canvas id="qr"> or <img src="qr.svg"> element below the store buttons. For a real QR code, use the qr-code-generator snippet — generate the QR targeting your app store deep link URL.

Add opacity: 0; transform: translateY(10px) to each phone UI section and a CSS animation that fades/slides them in with staggered delays. The balance card at 0.2s, chart at 0.4s, transactions at 0.6s — creating a "loading" reveal effect inside the phone.

Create an AppHero component with props: {title, gradientText, description, appName, rating, reviewCount, userCount, balance, transactions}. The store buttons are always present. The phone mockup renders from the balance and transactions arrays. The gradient text headline uses a <span style={{background: gradient, WebkitBackgroundClip: 'text', WebkitTextFillColor: 'transparent'}}>.