There is no universal website-header pixel size. The correct file is determined by the container your theme or builder renders, its aspect ratio, and how that container crops at each breakpoint. Start by measuring or identifying that container, then export a wide source image large enough for the largest display—often 1,500–2,500 pixels wide for a Squarespace banner or a 16:9 image such as 1,920 × 1,080 for a common WordPress.com layout. Treat those figures as starting points, not guarantees.
Start with the space your site actually renders
“Header image” can mean several different components:
- Fixed header strip: a shallow band behind navigation.
- Hero section: a tall first-screen area with a heading, button, or other content layered over an image.
- Background cover: a CSS background that fills a box by cropping one source image.
- Inline image: an
<img>element whose intrinsic ratio normally remains visible.
These choices produce different dimensions even on the same monitor. A 2,000-pixel-wide file in a 3:1 strip will lose far more vertical content than the same file in a 16:9 hero. Find the component’s desktop, tablet, and mobile widths and heights in the theme or builder settings, browser inspector, or platform documentation. The rendered container ratio—not the upload’s nominal dimensions—controls the crop.
Measure the container
- Open the page at the largest supported desktop width.
- Use browser developer tools to select the header or hero element and record its rendered width and height.
- Repeat at a narrow mobile width and at the tablet breakpoint.
- Divide width by height for each state. If the ratios differ, plan for responsive crops or separate art direction rather than one “perfect” rectangle.
WordPress.com states that every site and theme is different and has no single recommended size; its Quick Specs for the active theme take precedence. A theme that specifies a 2:1 or 3:1 banner should override a generic 16:9 example.
Platform guidance and useful starting dimensions
| Platform guidance | Published figure | How to use it |
|---|---|---|
| Squarespace version 7.0 banner | 1,500–2,500 pixels wide | Use a wide landscape source; Squarespace calls 2,500 pixels an ideal width. |
| Squarespace upload limit | 20 MB | Stay below the limit, but do not treat it as a performance target. |
| Squarespace faster-loading upload guidance | 500 KB or less | Compress the exported image where visual quality remains acceptable. |
| Squarespace responsive derivatives | 100, 300, 500, 750, 1,000, 1,500 and 2,500 pixels | The platform can generate these widths for responsive delivery. |
| WordPress.com common 16:9 examples | 1,920 × 1,080 or 1,280 × 720 | Use only when the active theme’s ratio and crop agree. |
These are platform recommendations documented in 2026, not web standards. Wix likewise expects a resolution compatible with the header and lets you resize the header, so inspect the actual Wix layout before exporting.
Pick an aspect ratio and protect the focal point
Use a wide source for a banner
Choose a landscape image wider than it is tall. Abstract textures, gradients, architecture, and scenes with distributed detail tolerate cropping better than a single face or product at the edge. Keep the subject near the center or the platform’s configured focal point, with breathing room on both sides.
#1 Best Overall
- HTML CSS Design and Build Web Sites
- Comes with secure packaging
- It can be a gift option
Design for the narrowest crop
A desktop crop may show the full width while mobile removes the left and right edges. Leave “safe” space around people, logos, and products, and preview the image at the narrowest breakpoint. If the subject cannot survive that crop, create a mobile-specific image or use an inline picture element with art-directed sources.
Do not bake critical text into the bitmap
Keep headlines, navigation labels, prices, and calls to action as live HTML layered over the image. Live text can wrap, resize, be translated, be selected, and remain available to assistive technology. Text embedded in a bitmap can disappear when the container crops or becomes unreadable when the image is darkened.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minuteChoose a practical source size
Export enough pixels for the largest rendered width and the display density you support, without blindly uploading a huge original. For a Squarespace banner, 1,500–2,500 pixels wide is a defensible starting range; 2,500 pixels gives the platform room for large displays. For a WordPress.com 16:9 layout, 1,920 × 1,080 is a common starting canvas, while 1,280 × 720 may be sufficient for a smaller placement. If your measured container is 1,200 pixels wide and the platform supplies responsive variants, a 2,500-pixel source may add weight without improving the rendered result.
A larger source cannot correct a wrong ratio: it only supplies more pixels for the browser to crop. If the image is blurry, first check whether the browser received a too-small candidate or an upscaled file; if it is cropped, correct the container ratio or focal point rather than increasing dimensions.
Export and deliver the image efficiently
Choose a suitable format
- WebP or AVIF: usually efficient for photographic or illustrated headers when your delivery pipeline supports them.
- JPEG: broadly compatible for photographs; adjust quality until edges and gradients remain clean.
- PNG: useful for transparency or sharp, limited-color graphics, but often unnecessarily heavy for photos.
Remove unnecessary metadata, compare the exported file at its actual display size, and keep the file comfortably below your platform’s limit. Squarespace’s faster-loading guidance is 500 KB or less, although a complex hero may require a different quality trade-off.
Provide responsive candidates
For a normal inline image, give the browser width candidates and the intended display size:
<img
src="hero-1200.jpg"
srcset="hero-600.jpg 600w, hero-1200.jpg 1200w, hero-2000.jpg 2000w"
sizes="100vw"
width="2000"
height="1125"
alt="Descriptive alternative text"
loading="eager"
fetchpriority="high"
>
Replace the candidates, sizes, and dimensions with your real rendered layout. If the image occupies half the viewport on desktop, for example, the sizes value should describe that rather than always claiming 100vw. Include known width and height attributes so the browser reserves the correct aspect-ratio space and avoids layout shifts.
Rank #3
Set loading priority deliberately
Do not lazy-load a hero that is visible in the initial viewport; it is part of the initial view and should begin loading promptly. Use loading="lazy" for headers or banners below the fold. fetchpriority="high" is appropriate only for a genuinely critical hero; applying it to many images can delay other resources.
Accessibility and overlay checks
- Write useful
alttext when the image conveys information. If it is purely decorative behind a heading, use an empty alternative and make the live heading understandable on its own. - Check contrast between overlay text and every part of the crop. Add a scrim or background color when necessary.
- Ensure keyboard focus indicators and navigation remain visible over the image.
- Do not communicate an offer, warning, or instruction only inside the image.
A repeatable implementation workflow
- Identify the component: strip, hero, background, or inline image.
- Record container ratios: desktop, tablet, and mobile.
- Read platform specifications: consult the active WordPress theme Quick Specs, Squarespace banner guidance, or Wix header controls.
- Compose safely: place the focal subject inside the narrowest safe area and leave room for live overlays.
- Export variants: create width candidates and an appropriate format; keep the source within platform limits.
- Implement dimensions: add
srcset, an accuratesizesvalue, andwidth/height. - Set loading: eager-load an above-the-fold hero, lazy-load lower banners, and reserve high fetch priority for one critical image.
- Preview: test real desktop, tablet, and mobile widths, including rotated phones and long translated headings.
- Inspect delivery: verify the selected candidate, file size, format, and layout shift in browser performance tools.
Why a header looks blurry, cropped, or slow
Blurry image
The browser may have selected a low-width srcset candidate, the source may be upscaled by CSS, or compression may be excessive. Confirm the intrinsic dimensions and the candidate shown in the network panel before exporting a larger file.
Unexpected crop
background-size: cover intentionally crops one axis. Check the container ratio, object-position or background position, and any mobile-specific height rule. Increasing source pixels will not change that geometry.
Text or faces disappear on mobile
The focal point is outside the narrow crop. Move the subject toward the safe area, reduce the mobile hero height, or serve an art-directed mobile image. Keep critical wording in HTML.
Rank #4
- Brand: Wiley
- Set of 2 Volumes
- A handy two-book set that uniquely combines related technologies Highly visual format and accessible language makes these books highly effective learning tools Perfect for beginning web designers and front-end developers
Layout jumps while loading
Supply accurate width and height (or an equivalent reserved aspect ratio) and avoid injecting an unknown-height banner after the page has rendered.
Header slows the first view
The file may be larger than the rendered slot, the hero may be delivered in an inefficient format, or too many images may have high priority. Compress, provide responsive candidates, and reserve eager/high-priority loading for the one image users see first.
Upload rejected
Check the platform’s byte limit, file type, and dimension restrictions. Squarespace documents a 20 MB upload limit; its 500 KB recommendation is a performance goal, not a permission threshold.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →When to use separate desktop and mobile artwork
Use one responsive source when the subject remains legible after cropping and the overlay layout is stable. Use separate sources when desktop is panoramic but mobile needs a portrait composition, when a face or product must remain fully visible, or when text placement changes materially. Art direction improves composition, but it adds assets to maintain and test; do not create variants merely to compensate for an incorrectly sized container.
Best Value
Or skip the browser setup
If you need to capture a rendered header for documentation, QA, or a content workflow rather than manually opening each breakpoint, ScreenshotNeo accepts one GET request and returns a PNG, JPEG, WebP, or PDF. It can accept consent banners before capture and remove more than 60 known consent platforms, newsletter popups, and chat widgets; each cleanup step can be disabled. Bot checks, CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and the response identifies the page verdict and billing status in X-Page-Verdict and X-Billed headers. Its MCP server exposes take_screenshot, get_page_info, and capture_pdf to Claude, Cursor, and other MCP clients.
Use the ScreenshotNeo documentation for options such as viewport and device presets, full-page lazy-image loading, CSS-selector element capture, dark mode, retina scale, PDF paper and page ranges, custom CSS or JavaScript, clicks, selector/delay/network-idle waits, request and resource blocking, headers, cookies, user agents, authorization, timezone, geolocation, transparent backgrounds, resizing, TTL caching, signed links, asynchronous webhooks, bulk capture of up to 100 URLs per call, usage data, and the OpenAPI specification.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
The same request in Python:
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
And Node.js:
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
Every plan includes the features above. The Free plan provides 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots. Create a free ScreenshotNeo account to try it.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →FAQ
Is 1920 × 1080 the required header size?
No. It is a common 16:9 WordPress.com starting example. Your active container ratio and theme specification decide the appropriate dimensions.
Should a header always be 2,500 pixels wide?
No. Squarespace identifies 2,500 pixels as an ideal banner width, but a smaller rendered slot or another platform may need less. Deliver only the pixels your layout and display density require.
Can CSS stop an image from being cropped?
Only by changing the container or fitting rule. A cover-style background necessarily sacrifices part of one axis; use a different ratio, position, or art-directed source when the crop is unacceptable.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Free tools Windows power users keep installed
One-click scans. No signup required.




