A lot of site owners think “mobile-friendly” is about the theme they bought or the page builder they use. And mostly, that is true. But underneath every responsive website sits one small line of code that makes the whole thing work on a phone: the viewport meta tag.
When it is missing or wrong, your carefully designed mobile layout can shrink to a tiny desktop page on a phone screen. When it is set too strictly, people with poor eyesight can’t zoom in to read your prices. Both problems are easy to miss, because they rarely show up on the developer’s own laptop.
Let me explain what this tag does, the one version most sites should use, the mistakes I still see on live sites and how it connects to mobile SEO and accessibility. I will also show you how to test it now that Google’s old Mobile-Friendly Test is gone.
What the viewport tag tells a phone’s browser
The viewport is the visible area of a web page on a screen. On a desktop, that is your browser window. On a phone, it is more complicated.
When smartphones first arrived, most websites were built for desktops. So mobile browsers pretended to have a wide screen, rendered the page at desktop width and then shrank it to fit. According to web.dev’s responsive design basics, that pretend width is “usually about 980px, though this varies across devices.” That is why old websites look tiny on a phone and you have to pinch to zoom.
The viewport meta tag switches that behavior off. It tells the browser: “This page knows how to fit a small screen. Use the real width of the device.” Google lists it among the meta tags it supports and describes it like this:
“This tag tells the browser how to render a page on a mobile device.”
— Google Search Central, Meta tags and attributes that Google supports
The same page notes that the presence of this tag also signals to Google that the page is mobile friendly. For the full list of tags Google reads and ignores, see my guide to meta tags Google supports.
One important point: the tag doesn’t make a site responsive by itself. It only gives your responsive CSS a true screen width to work with. If your CSS uses fixed widths, the tag can’t save you. Ahrefs makes the same point in its guide to SEO meta tags: adding the tag fixes a missing-tag warning, but layout problems from non-responsive CSS still need a developer.
The one line most websites should use
For almost every website, the correct tag is this:
<meta name="viewport" content="width=device-width, initial-scale=1">
It goes inside the <head> of every page. You will also often see initial-scale=1.0, which is the same thing.
Here is what each part does, in plain words:
width=device-widthsets the page width to the screen’s width, so your layout reflows to fit the phone.initial-scale=1sets the starting zoom level to 100%. web.dev explains that it keeps a 1:1 relationship between CSS pixels and the device’s pixels, so the page uses the full width when the phone is turned sideways.
While you are in the <head> and the opening <html> tag, it is worth checking the other small declarations that sit next to it, such as the character set and the page language. I explain the language one in my guide to the HTML lang attribute.
That is it. You don’t need anything else for a normal website. Most modern themes and CMSs add it automatically, which is why Ahrefs notes that viewport issues are uncommon on modern sites.
Every viewport property, and whether you need it
MDN’s viewport reference lists all the properties the tag accepts. Here is what they do and my advice on each.
| Property | Values | What it does | Should you use it? |
|---|---|---|---|
width | device-width or 1–10000 | Sets the layout width | Yes, always device-width |
initial-scale | 0.0–10.0 | Starting zoom level | Yes, set to 1 |
height | device-height or 1–10000 | Sets the layout height | Rarely needed |
minimum-scale | 0.0–10.0 | Smallest zoom allowed | No, leave it out |
maximum-scale | 0.0–10.0 | Largest zoom allowed | No; never set below 2, ideally leave out |
user-scalable | yes / no | Allows or blocks pinch zoom | Never set to no |
interactive-widget | resizes-visual, resizes-content, overlays-content | How the on-screen keyboard affects the layout | Only for apps with fixed bottom bars or chat inputs |
viewport-fit | auto, contain, cover | How the page handles notches and rounded corners | Only with safe-area CSS |
Viewport mistakes I still find on live sites
Here are the problems I look for in a technical audit, from most to least harmful.
- No viewport tag at all. The phone renders a shrunken desktop page. This is common on old custom sites, landing pages built outside the main CMS and HTML email-style pages.
- A fixed width, like
width=1024. This forces a desktop-sized layout on every phone, which is almost as bad as having no tag. - Zoom disabled with
user-scalable=noormaximum-scale=1. The layout looks fine, but people who need to zoom can’t. More on this below. - An initial scale below 1. Chrome’s Lighthouse documentation explains that a low initial scale can bring back double-tap-to-zoom, and with it a delay on taps.
- Two viewport tags. A theme adds one, a plugin adds another. Browsers then follow one of them, and it may not be the right one.
- Tag added by JavaScript. If a script injects the tag late, the first paint can happen at the wrong width. Put it straight in the HTML.
- Typos and wrong separators, such as semicolons instead of commas between values. MDN describes the content value as a comma-separated list.
The tap delay deserves a quote, because it affects how fast a page feels:
“This adds a 300 millisecond delay to any tap interactions while the browser waits to check if a second ‘double’ tap happens.”
— Chrome for Developers, Does not have a <meta name="viewport"> tag with width or initial-scale
That kind of delay makes buttons and menus feel sluggish, which is exactly what Interaction to Next Paint (INP), one of the Core Web Vitals, is meant to capture.
How the viewport tag affects mobile SEO now
Google indexes and ranks the mobile version of your pages. Its mobile-first indexing guide explains that Google uses the smartphone crawler’s view of your content, and that it recommends responsive web design as the easiest pattern to build and maintain. Our lesson on mobile-first indexing covers the basics if this is new to you.
So where does the viewport tag fit? Three ways:
- It is a mobile-friendly signal. Google’s supported meta tags page says its presence indicates a mobile-friendly page.
- It shapes what Googlebot Smartphone sees. Without it, the rendered page is a scaled-down desktop layout, with tiny text and cramped tap targets.
- It shapes what users experience. If people land on a page they have to pinch and scroll sideways, they leave. That hurts conversions even when rankings hold.
I want to be clear about what changed. In December 2023, Google removed the Search Console Mobile Usability report, the Mobile-Friendly Test tool and its API. As reported by Search Engine Land, Google pointed people to Lighthouse instead and added:
“This doesn’t mean that mobile usability isn’t important for success with Google Search.”
— Google, as quoted by Search Engine Land, Google officially drops Mobile Usability report, Mobile-Friendly Test tool and Mobile-Friendly Test API
So the old “Viewport not set” warning you may remember from Search Console doesn’t exist anymore. The problem still does. You just have to look for it yourself. For the bigger picture, see our full guide to mobile SEO.
Zoom, accessibility and user-scalable
This is the part many designers get wrong, often on purpose. They disable zoom because a double-tap made a form jump around, or because a slider misbehaved when pinched. It fixes a design annoyance and creates a real barrier.
MDN states the risk directly:
“Disabling zooming capabilities by setting user-scalable to a value of no prevents people experiencing low vision conditions from being able to read and understand page content.”
— MDN Web Docs, <meta name="viewport">
The accessibility standard WCAG has a Level AA rule called 1.4.4 Resize Text: text must be resizable up to 200 percent without losing content or functionality. The W3C’s test rule “Meta viewport allows for zoom” checks exactly this tag. It fails a page when user-scalable=no is set, or when maximum-scale is below 2.
MDN goes further and suggests allowing at least 5x zoom as best practice. It also notes that iOS 10 and later ignore these zoom limits by default, so on many iPhones the setting doesn’t even work. You get the accessibility failure in audits without the design benefit.
| Tag content | Zoom allowed? | Accessibility audit |
|---|---|---|
width=device-width, initial-scale=1 | Yes | Pass |
width=device-width, initial-scale=1, maximum-scale=5 | Yes, up to 5x | Pass |
width=device-width, initial-scale=1, maximum-scale=1.5 | Limited | Fail (below 2) |
width=device-width, initial-scale=1, maximum-scale=1 | No | Fail |
width=device-width, initial-scale=1, user-scalable=no | No | Fail |
If a form field zooms in on iPhone when tapped, the cleaner fix is usually to set the field’s font size to at least 16px in CSS, rather than blocking zoom for everyone. That is a common, practical workaround. For the wider link between accessible design and search, see our guide to accessibility and SEO.
Layout problems the tag can’t fix
Once the viewport is right, a different set of problems can appear. They all come from content that doesn’t respect the screen width. web.dev’s advice is simple: people expect to scroll vertically, not sideways.
- Images wider than the screen. Add
max-width: 100%in CSS. For serving the right size of image, see our guide to responsive images with srcset. - Fixed-width tables and embeds. Wrap wide tables in a scrollable container and make iframes fluid. Embedded maps and videos are frequent culprits; I cover them in iframes and embedded content.
- Layout shifts on load. Images and embeds without width and height attributes push content down as they load. web.dev recommends including those attributes to reserve space. Our guide to Cumulative Layout Shift explains the fixes.
- Navigation that breaks at small widths. Menus that overflow or hide links are a common mobile issue; see mobile navigation and hamburger menus.
- Long words and URLs. A long unbroken URL in a paragraph can push the page wider than the screen. CSS like
overflow-wrap: anywherehelps.
Notches, keyboards and the newer viewport values
Two newer properties are worth knowing if you build web apps. viewport-fit=cover lets your page fill the whole screen on phones with notches and rounded corners. MDN recommends pairing it with the CSS safe-area inset variables, so buttons don’t hide behind the notch. interactive-widget controls what happens when the on-screen keyboard opens. A chat app with a fixed message box at the bottom might want resizes-content, so the box moves above the keyboard. For a normal business website, you can ignore both.
Testing your viewport setup on real phones and in Lighthouse
With the Mobile-Friendly Test retired, here is the routine I suggest. It takes about 20 minutes for a small site.
- Check the source. Open a page, view the source and search for
name="viewport". Confirm there is exactly one, in the<head>, withwidth=device-width, initial-scale=1. - Crawl the whole site. A crawler like Screaming Frog can extract the viewport tag from every page, so you catch landing pages or old templates that missed it.
- Run Lighthouse. In Chrome DevTools, run a mobile Lighthouse report. Lighthouse’s documentation notes that as of Lighthouse 13, the viewport check sits inside an insight called “Optimize viewport for mobile.” The accessibility section flags disabled zoom. Our guide to PageSpeed Insights shows how to read the same data online.
- Use DevTools device mode. Toggle the device toolbar and try narrow widths like 360px and 390px. Look for sideways scrolling.
- Check Google’s view. In Search Console’s URL Inspection tool, test the live URL and view the screenshot Googlebot Smartphone rendered.
- Test on real phones. Pinch to zoom, rotate the phone and tap form fields. Try at least one iPhone and one Android phone, because they handle zoom and keyboards differently.
- Turn on large text. Increase the phone’s text size in accessibility settings and reload. Check that nothing overlaps or gets cut off.
Each method catches different problems, so I use more than one:
| Test method | What it catches | What it misses |
|---|---|---|
| View source | Missing, duplicate or mistyped tags on one page | Other templates and old pages |
| Site crawler | Pages across the whole site without the right tag | How the layout actually looks |
| Lighthouse (mobile) | Viewport issues, blocked zoom, layout shifts | Real-device quirks like keyboards and notches |
| URL Inspection screenshot | What Googlebot Smartphone rendered | Zoom and interaction problems |
| Real phones | Zoom, rotation, forms, large text settings | Pages you didn’t think to open |
A quick example audit (hypothetical)
Here is an example of what a crawl might show, not real data. Say a 60-page site is crawled and the viewport tag is extracted. 54 pages have the correct tag from the theme. 4 landing pages built in a separate tool have maximum-scale=1, user-scalable=no. 2 old HTML pages have no tag at all. The fix is two template changes and two manual edits, but without the crawl, those 6 pages would probably have stayed broken for years, because nobody checks old landing pages on a phone.
Questions people ask about the viewport meta tag
Is the viewport meta tag a ranking factor?
Not on its own. Google reads it as a mobile-friendly signal, but what matters for users and rankings is whether the page actually works well on a phone.
Do I need initial-scale=1.0 or initial-scale=1?
They are the same. Use whichever your theme already uses. What matters is that the value is 1, not lower.
My theme already includes a viewport tag. Should I add another?
No. Two tags can conflict. Check your page source and keep only one correct tag.
Is it ever OK to disable zoom?
For a normal website, no. Some full-screen web apps, like games or map tools, handle zoom themselves, but they should still offer their own way to enlarge text.
Where did the “Viewport not set” error in Search Console go?
It was part of the Mobile Usability report, which Google retired in December 2023. Use Lighthouse, a site crawler and real-device tests instead.
Your viewport check for this week
Open your homepage, a blog post and your best landing page on a phone. Pinch to zoom on each one. View the source and look for a single width=device-width, initial-scale=1 tag with no zoom limits. If anything is missing, wrong or doubled, fix the template, not just the page. It is one of the quickest technical wins you will find.
If your mobile pages still feel slow or clumsy after that, our page speed optimization team can dig into layout, scripts and Core Web Vitals. Request a free quote and we will take a look.
Further reading on viewport meta tag
- The HTML Lang Attribute: Does It Matter for SEO?
- Iframes and Embedded Content: What Google Indexes
- Does Bold Text Help SEO? Formatting for Skimmers
Sources for this viewport meta tag guide
- Ahrefs: SEO Meta Tags
- Google Search Central: Meta tags and attributes that Google supports
- Google Search Central: Mobile site and mobile-first indexing best practices
- MDN Web Docs: <meta name="viewport">
- web.dev: Responsive web design basics
- Chrome for Developers: Lighthouse viewport audit
- W3C: Understanding SC 1.4.4 Resize Text
- W3C ACT rule: Meta viewport allows for zoom
- Search Engine Land: Google drops Mobile Usability report and Mobile-Friendly Test (December 2023)




