Browser Window Info - Online Viewport & Screen Data
See exact dimensions of your current browser inner/outer window, screen resolution, and pixel ratio. Developer debug.
UD5 Toolkit
window.innerWidth / window.innerHeight) represent the viewport — the actual content area of the browser where your web page renders. Outer dimensions (window.outerWidth / window.outerHeight) include the entire browser window, encompassing toolbars, tab bars, address bar, bookmarks bar, and window borders. On mobile browsers, inner and outer values are often identical since mobile browsers typically run in full-screen mode without additional window chrome.
screen.width / screen.height return the full resolution of the user's monitor in physical pixels. screen.availWidth / screen.availHeight return the screen space actually available to browser windows — this excludes permanent OS UI elements like the taskbar (Windows), Dock (macOS), or system menu bars. On a 1920×1080 monitor with a 40px taskbar, availHeight would be 1040px. On mobile devices, these values are usually identical since apps occupy the full screen.
window.devicePixelRatio) is the ratio between physical pixels on the screen and CSS logical pixels. A DPR of 1 means 1 CSS pixel = 1 physical pixel. A DPR of 2 (common on Retina displays and most modern smartphones) means 1 CSS pixel = 2×2 = 4 physical pixels, enabling sharper text and images. Common values: 1 (standard desktop), 1.25–1.5 (some Windows laptops), 2 (MacBook Retina, iPhone, many Androids), 3 (iPhone 14/15 Pro Max, Samsung Galaxy flagships). Web developers use DPR to serve appropriately sized images via srcset and to adjust canvas rendering for crisp output.
window.innerWidth and document.documentElement.clientWidth is the scrollbar width. innerWidth includes the vertical scrollbar (typically 12–17px on desktop), while clientWidth excludes it. This is important when calculating available layout space. On macOS with overlay scrollbars or mobile devices, the difference is usually 0. This tool displays the scrollbar width in real-time under "Extra Info."
window.visualViewport) provides dimensions of the currently visible area, accounting for on-screen keyboards, pinch-zoom, and other mobile-specific factors. When a virtual keyboard appears on mobile, the visual viewport shrinks while the layout viewport (innerHeight) may remain unchanged. This API also reports offsetTop (how far the visual viewport is offset from the layout viewport) and scale (current pinch-zoom level). It's essential for positioning fixed elements like chat input bars or sticky footers correctly on mobile.
window.innerWidth, and 1vh = 1% of window.innerHeight. However, on mobile Safari, 100vh can be larger than the visible area because it doesn't account for the address bar. New CSS units like svh (small viewport height), lvh (large viewport height), and dvh (dynamic viewport height) address this. The Visual Viewport API provides the most accurate mobile viewport measurement. Use dvh for elements that need to fill the screen exactly on mobile.
resize event fires rapidly during window dragging — potentially 60+ times per second. Best practices: 1) Use requestAnimationFrame to throttle updates to the screen refresh rate. 2) Debounce with a 150–300ms delay if you only need the final value. 3) Use ResizeObserver for observing specific elements rather than the whole window. 4) Match media queries with window.matchMedia() for breakpoint-specific logic. This tool uses requestAnimationFrame for smooth, performant real-time updates.
outerWidth/outerHeight often equal innerWidth/innerHeight because mobile browsers lack separate window chrome. Additionally, when a browser window is maximized vs. fullscreen (F11), outer dimensions change significantly. For reliable layout calculations, always use inner dimensions or the Visual Viewport API.
See exact dimensions of your current browser inner/outer window, screen resolution, and pixel ratio. Developer debug.
Enter mosaic area and choose tessera size to find the approximate number of tiles required. Includes grout joint factor.
See how many tabs you have open and estimate memory usage based on navigator object. Fun productivity check.
Input room dimensions and number of coats to estimate how many gallons/litres of paint you need. Excludes doors/windows optionally. Local calculator.
Enter nozzle type and surface area to get optimal spray distance, sweep speed, and estimated cans needed. Prevent runs and drips.
Enter the amount of leftover paint and see how many square feet it still covers. Plan touch-ups.
Select paint type and brand to get the recommended thinning ratio for airbrush. Achieve smooth, clog-free spraying.
Take a screenshot of the current browser tab using Screen Capture API. Crop, annotate with text and arrows, and download as PNG. Local only.
Adjust root, margin, and threshold. See a live log of intersection events as you scroll. Debug lazy loading.
Visually create the glassmorphism effect: background blur, transparency, and border. Copy the complete CSS. Modern UI design.
Find your car's engine oil capacity and recommended filter part number. Quick reference for DIY oil change.
Enter ground snow load and roof pitch to estimate the effective snow load on a sloped roof. Quick structural check for snowy regions.
Enter quilt perimeter, binding width, and seam allowance to get the exact fabric yardage for either straight‑grain or bias binding.
Enter your first pin distance and arrow speed to estimate gaps for 30, 40, 50, 60 yard pins. Start practice.
Enter your car's make and model to find the minimum and maximum rotor thickness specs. Static lookup table. Local reference.
Select any HTML element on a page and capture its screenshot. Download as PNG. Perfect for bug reports. JavaScript API demo.
Calculate how much fabric you need for a quilt based on block size, number, and sashing. Supports metric and imperial. No upload, local.
List cached responses for your domain. View headers, content, and delete individual entries. Understand your PWA's cache.
Pixelate or censor parts of an image by dragging. Adjust block size for mosaic effect. Useful for hiding faces or sensitive data. Client-side processing.
Calculate how much thinner to add to achieve the right viscosity for spray guns. Common ratios.
Count bubbles per minute to estimate fermentation activity and approximate sugar consumption. Simple conversion.
Explore the Mandelbrot set with click-to-zoom and vibrant colors. A mesmerizing math journey inside your browser.
Enter income, pay frequency, and expected deductions to estimate your tax refund or balance due. Simplified model.
Add fish species and sizes to estimate the bioload and check if your tank is overstocked. Inch‑per‑gallon model.
Select cheese type (cheddar, brie) to see recommended curd cut size and visual cube comparison.
Set start and end times for a video and trim it without re-encoding. Download the clip. Pure browser.
Place rectangular pattern pieces on a virtual fabric width to optimize cutting layout and reduce waste. Simple manual drag & drop. Local only.
Create a custom element with named slots and see content projection in action. Learn Web Components basics.
Choose sawing material and thickness to get the correct blade type, TPI, and shank. Prevents burning and rough cuts.
Pixelate selected areas of an image to hide faces or sensitive data. Adjust block size. Download the censored result.