Phone · Android

Pixel 9 Pro XL viewport size

The Pixel 9 Pro XL has a viewport of 448 × 997 CSS pixels and a device pixel ratio of 3, which makes about 1344 × 2991 physical pixels.

Viewport (portrait)

448 × 997

Landscape

997 × 448

Device pixel ratio

3

Screen resolution

1344 × 2991

Screenshot a website on the Pixel 9 Pro XL

Rendered in a real browser with cookie banners hidden. Takes 5–30 seconds.

CSS for the Pixel 9 Pro XL

Target this screen size in CSS (portrait):

@media (max-width: 448px) {
  /* Pixel 9 Pro XL and smaller */
}
@media (min-resolution: 3dppx) {
  /* high-density screens: serve sharper images */
}

Design for ranges, not single devices: many phones share the same viewport width (for example 448 px). The Pixel 8 Pro use it too.

User agent

The user agent Chrome DevTools uses when it emulates the Pixel 9 Pro XL:

Mozilla/5.0 (Linux; Android 14; Pixel 9 Pro XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<version> Mobile Safari/537.36

Chrome inserts its own version number for <version>.

Test your site on the Pixel 9 Pro XL

In Chrome, open DevTools (F12), turn on device mode (Ctrl+Shift+M or ⌘+Shift+M) and pick the device from the Dimensions menu, or use the screenshot tool above to capture any page at this size.

Data from the device list built into Chrome DevTools (devtools-frontend, BSD license).

Frequently asked questions

What is the viewport size of the Pixel 9 Pro XL?

448 × 997 CSS pixels in portrait and 997 × 448 in landscape.

What is the screen resolution of the Pixel 9 Pro XL?

About 1344 × 2991 physical pixels: the viewport multiplied by the device pixel ratio of 3.

Why is the viewport smaller than the screen resolution?

Phones pack several physical pixels into one CSS pixel (the device pixel ratio) so text stays readable. Websites lay out in CSS pixels; images can use the extra pixels for sharpness.

Other devices

Screenshot API

Take screenshots from your code

screenshotbase renders any website in a real browser and returns the image: full page or viewport, any device size, retina, from 100+ countries, with cookie banners and ads hidden.

Read the docs

300 free screenshots every month. No credit card required.

GET https://api.screenshotbase.com/v1/take?url=https://example.com&viewport_width=448&viewport_height=997&device_scale_factor=3

# Response: the image (PNG, JPG, WebP or GIF)
curl -G "https://api.screenshotbase.com/v1/take" \
  --data-urlencode "url=https://example.com" \
  -d viewport_width=1280 -d viewport_height=800 \
  -d format=png \
  -H "apikey: YOUR-API-KEY" \
  -o screenshot.png

Free screenshot tools

Start using our Screenshot API for free today!

Get 300 requests / month for free