Viewport Meta Generator
Build a viewport meta tag with width, scale limits, user-scalable and viewport-fit presets.
Generated tag
Blocking zoom hurts accessibility — WCAG 1.4.4 requires text to scale to 200%. Use the zoom-locked preset only when you have a concrete reason.
How to use it
- Set width —
device-widthfor responsive layouts, or a pixel value when the layout is fixed. - Set initial-scale; 1 is the usual choice, higher values zoom in on first paint.
- Tick minimum-scale or maximum-scale to include those limits, and set the values next to them.
- Pick user-scalable and viewport-fit, or leave them on auto to keep them out of the tag entirely.
- Press a Preset to fill the whole form, then Copy the generated tag.
The four presets cover mobile first, zoom locked, tablet friendly and notch safe. Each one just writes values into the form and runs the same generator, so you can tweak any preset afterwards.
Common use cases
- Starting a responsive page — the mobile first preset produces the tag most layouts need and nothing more.
- Handling notched devices —
viewport-fit=coverplus safe-area padding in CSS keeps content clear of the notch. - Diagnosing zoom complaints — if users cannot pinch to zoom, look for
user-scalable=noormaximum-scale=1in the tag. - Comparing configurations — flip between presets to see exactly which tokens change in the content string.
Why it stays private
The tag is assembled from the values in the form. Nothing is uploaded, and no page of yours is fetched or analysed.
FAQ
Q: Is blocking zoom ever a good idea?
A: Rarely. WCAG 1.4.4 expects text to scale to 200%, and pinching is how many people read small text. Keep user-scalable out of the tag unless a specific widget, such as a map, genuinely needs it.
Q: Do I still need the tag if my CSS is responsive? A: Yes. Without it mobile browsers assume a desktop width around 980 px and scale the page down, so your media queries never match the real device width.
Q: What does viewport-fit=cover do?
A: It lets the page draw under rounded corners and the notch area. You then need env(safe-area-inset-*) padding in CSS so interactive content stays reachable.
Your data stays on this device
Viewport Meta Generator runs 100% locally. Everything you paste or drop is processed by your own browser and never transmitted. Nothing is stored on our servers — close the tab and it is gone.
Nothing you type is sent to a server, logged, or used for analytics. The page works even with your network disconnected after first load.