Hero Image Mobile Optimization: Display Beautiful Visuals on Every Screen
Most hero images look great on desktop and terrible on mobile. Here's how to build responsive hero visuals that work beautifully on every screen size.
By Sharon Onyinye

You design a stunning hero image on your 27-inch monitor. Wide product screenshot, bold headline, perfect composition. Then you check it on your phone and the screenshot is microscopic, the text is unreadable, and the layout is broken.
This happens to almost every landing page. And it matters — over 60% of web traffic is mobile. If your hero image only works on desktop, it's failing for the majority of your visitors.
Why Mobile Hero Images Break
The fundamental problem is aspect ratio. Desktop screens are landscape (16:9 or wider). Phone screens are portrait (roughly 9:19). An image composed for a wide format gets squeezed, cropped, or shrunk on a tall, narrow screen.
Three things typically go wrong:
- The screenshot becomes too small to see. A product screenshot that looks detailed at 1400px wide becomes an unreadable smudge at 375px.
- Text gets clipped or compressed. A headline overlaid on the hero that works in a wide layout either overflows or becomes tiny on mobile.
- Cropping hides the important parts. CSS object-fit and background-size properties crop from edges. If your key content isn't dead center, it gets cut.
Fixing these requires intentional design decisions, not just responsive CSS.
Strategy 1: Art Direction with the Picture Element
Art direction means serving entirely different images to different screen sizes. Not just resizing the same image — actually using different compositions.
The HTML picture element makes this straightforward:
- Create a wide (16:9) hero image for desktop
- Create a square or portrait (4:5) version for mobile with a tighter crop focused on the most important content
- Use the picture element's source tags with media queries to serve the right image
For your desktop version, you can show the full product screenshot in a browser frame with ample whitespace and supporting text. For mobile, crop to just the most impactful portion of the UI — the feature, the result, the moment that matters.
This approach takes more effort upfront since you're creating two images instead of one. But it's the only reliable way to make hero images look intentional on both form factors.
Strategy 2: Responsive Cropping with CSS
If creating separate images per breakpoint isn't feasible, you can use CSS to handle the adaptation:
- Use object-fit: cover with object-position to control which part of the image stays visible as the container changes shape
- Set different aspect ratios at breakpoints using the aspect-ratio CSS property
- Use percentage-based widths so the image scales fluidly
This approach is lower effort but gives you less control. It's best for hero images where the main subject is naturally centered.
Strategy 3: Separate Mobile and Desktop Hero Layouts
The most robust approach: design entirely different hero sections for mobile and desktop. Not just different images, but different layouts.
Desktop hero: Product screenshot in a laptop frame, large headline to the left, supporting text below the headline. Classic two-column layout. Mobile hero: Headline at the top, product screenshot in a phone frame below, supporting text beneath. Single column, stacked vertically.Use a hero image generator to create the product visuals, then implement the layout switch with CSS media queries or a responsive component library. This gives you full control over both experiences.
Image Loading Optimization
A beautiful hero image that takes 4 seconds to load is worse than no hero image at all. Mobile users are typically on slower connections, so performance matters even more here.
Format Selection
- WebP reduces file sizes by 25-35% compared to JPEG with no visible quality loss. Browser support is now universal.
- AVIF offers even better compression (up to 50% smaller than JPEG) but encoding is slower and browser support, while growing, isn't quite universal.
- JPEG remains the safe fallback. Use it inside a picture element as the default source.
Use the picture element to serve AVIF first, then WebP, then JPEG as fallback. Browsers pick the first format they support.
The srcset Attribute
Instead of serving a 3840px wide retina image to a phone, use srcset to deliver appropriately sized versions:
- 640px wide for small phones
- 1024px wide for tablets
- 1920px wide for standard desktops
- 3840px wide for retina desktops
The browser picks the best match for the device's viewport and pixel density. This alone can cut mobile load times in half.
Loading Strategy
- Hero images should NOT be lazy loaded. They're above the fold and should load immediately. Set loading="eager" or simply omit the loading attribute.
- Use fetchpriority="high" to tell the browser this is a critical resource.
- Preload the mobile image with a link preload tag in the head for the fastest possible rendering.
Compression
Target these file sizes for hero images:
- Mobile (640px wide): Under 80KB
- Tablet (1024px wide): Under 150KB
- Desktop (1920px wide): Under 300KB
- Retina (3840px wide): Under 500KB
Tools like Squoosh let you visually compare quality levels to find the sweet spot.
Touch-Friendly Hero Design
Mobile heroes interact differently than desktop ones. Consider these factors:
Button Sizing
If your hero includes a CTA button, it needs to be at least 44x44 pixels (Apple's minimum tap target). Better yet, make it 48x48 pixels with ample spacing from other interactive elements. Fat fingers need room.
Scroll Behavior
Mobile users scroll with their thumb. If your hero section is too tall, the CTA might be below the fold and require scrolling. Keep mobile hero sections concise — headline, image, one button, done.
Hover States Don't Exist
Any interaction that depends on hover (image overlays, tooltip previews, expand-on-hover) won't work on touch devices. Design for tap, not hover.
Common Mobile Hero Mistakes
Text Overlaid on Images
Text placed directly on a hero image almost always fails on mobile. The background image shifts, the text doesn't reflow, and suddenly your headline is unreadable against a busy section of the photo. Use solid or semi-transparent overlays, or keep text separate from the image.
Ignoring Landscape Mobile
When someone rotates their phone, your hero needs to still work. Test in landscape orientation, especially if your hero uses viewport height units (vh). A 100vh hero in landscape mode on a phone is ridiculously short.
Fixed-Height Heroes
Setting a hero to a fixed pixel height (e.g., 600px) breaks across devices. A 600px hero looks proportional on a 1080px tall screen but dominates on a 667px iPhone SE. Use relative units or min-height/max-height combinations.
Not Testing on Real Devices
Browser DevTools device simulation is a starting point, but it misses real-world issues — actual font rendering, touch behavior, network conditions. Test on a real phone before shipping.
Oversized Images Without srcset
Serving a 2MB retina desktop image to a phone on a cellular connection is one of the most common performance mistakes. It wastes bandwidth, delays rendering, and frustrates users. Always provide multiple sizes.
A Practical Mobile Hero Checklist
Before shipping any hero section, run through this:
- Does the hero image look good at 375px wide?
- Is the headline readable without zooming on mobile?
- Is the CTA button at least 44x44px and easy to tap?
- Does the image load in under 1.5 seconds on a 3G connection?
- Is the hero section not excessively tall on small screens?
- Have you tested in both portrait and landscape orientation?
- Are you serving appropriately sized images with srcset?
- Is the image format optimized (WebP or AVIF with JPEG fallback)?
- Does the layout work if the user has increased their font size?
Related Reading
- The Complete Guide to Landing Page Hero Images - Hero image strategy and design principles
- How to Create SaaS Hero Images That Convert - SaaS-specific hero image tactics
- How to Display Screenshots on Your SaaS Landing Page - Integrating product screenshots into landing pages
- What Is the Best Screenshot Size? Complete Guide for Every Platform - Optimal dimensions for every use case