Skip to main content
Guide SuperchargeNavigation

Chrome 148 RELEASED: What Changed for Tab Users (2026)

Chrome 148 dropped May 5: Prompt API ships stable, lazy video loading lands, vertical tabs still flag-only. What actually changed for tab-heavy users.

7 min read Verified Chrome 148

Chrome 148 shipped May 5, 2026 — and for tab power users, very little changed. Version 148.0.7778.96/97 lands on Windows, Mac, and Linux. The release centers on the Prompt API (on-device Gemini Nano access for developers), lazy loading parity for video and audio, and a security-relevant URL parsing change. Vertical tabs stay flag-only, the Projects Panel stays Canary-only, and no new tab API landed in this cycle.

Key takeaways

  • Prompt API ships to stable: developers get direct access to Gemini Nano, Chrome’s on-device model — local inference, no API key.
  • Vertical tabs: still flag-only. No change from Chrome 146 or 147. Same setup steps apply.
  • Lazy loading for <video> and <audio>: pages can now defer media loading until near the viewport, the same way images work.
  • IDNA ContextJ rule enforcement: Chrome now blocks ZWNJ/ZWJ characters in URLs — a low-visibility but meaningful homograph attack fix.
  • Security patch list: the Chrome team noted it will be published “shortly” — it was not fully available at the time of writing (May 6, 2026).

Chrome 148’s Headline Feature: Prompt API

The Prompt API is the first stable-channel exposure of Gemini Nano (Chrome’s on-device language model) to web developers. It’s a developer-facing API, not a user-facing UI change. You won’t see a Gemini button appear in your toolbar after updating.

What it does: pages that request the API can run text, image, and audio through a local model without sending data to a server. The model runs in Chrome’s renderer process. No API key, no cloud round-trip, no account required.

Use cases developers are targeting: image captioning, offline transcription, content classification, and JSON/structured output from unstructured text. The API supports response constraints: return valid JSON matching a schema, or a string matching a regex.

Prompt API aspectDetail
ModelGemini Nano (on-device, Chrome-hosted)
InputsText, image, audio
Inference locationLocal — no network call
Account requiredNo
AvailabilityChrome 148 stable (May 2026)
Origin trialPrompt API sampling parameters (temperature, topK) still in trial

The practical privacy question: a page can call this API, meaning third-party sites could run local inference on content you’ve entered or images you’ve selected. Chrome’s existing permissions model applies. The API is gated the same way camera/mic access is gated. Pages cannot silently access it.

For users, the immediate impact is near-zero. For developers building extensions or web apps, this is significant: it’s the first stable path to local LLM inference inside the browser without bundling a model yourself.

Vertical Tabs: No Change in Chrome 148

Third release running, same answer. Vertical tabs in Chrome 148 require the flag. If you enabled them in Chrome 146 or 147, your settings carry over unchanged.

The setup steps if you haven’t enabled them:

  1. Navigate to chrome://flags/#vertical-tabs
  2. Set the flag to Enabled
  3. Relaunch Chrome
  4. Go to Settings > Appearance > Tab strip position and select Left

Chrome’s native implementation moves the tab strip to a collapsible left sidebar. It handles the layout problem: tab titles stay readable at 40+ tabs. It doesn’t handle the context problem: no named workspaces, no session persistence across restart, no keyboard search across open tabs and history, no tab previews.

The Chrome 146 vertical tabs comparison covers the gap in detail. Nothing in that analysis changed in 147 or 148.

Lazy Loading for Video and Audio

This is a small but practical web performance change. Chrome 148 adds the loading attribute to <video> and <audio> elements, letting page authors defer loading media until it’s within viewport proximity.

Images and iframes have had this since Chrome 77 (2019). Video and audio are catching up.

For users, pages that implement this load faster. Media-heavy pages where videos below the fold were loading on page open regardless of scrolling benefit most. No browser settings change. No extension interaction. Pages that add loading="lazy" to their media elements just work differently.

IDNA ContextJ Rules: A URL Security Fix

This one is low-visibility but worth knowing. Chrome 148 enforces IDNA2008’s ContextJ rules, blocking zero-width joiner (ZWJ) and zero-width non-joiner (ZWNJ) characters in most URL positions.

Why that matters: ZWJ and ZWNJ are Unicode characters with no visual representation. They can be embedded in internationalized domain names to create visually identical URLs that resolve to different domains. That’s the homograph attack vector. A URL containing paypa‍l.com could render as paypal.com in browsers that don’t strip or reject the invisible character.

Chrome 148 rejects these characters in URL parsing rather than silently ignoring them. Legitimate internationalized domains that use ZWJ or ZWNJ in RFC-compliant positions are not affected. The rules only block positions where those characters serve no valid purpose.

This is not a setting you configure. It’s a parser-level change that makes phishing via homograph URLs harder.

CSS Name-Only Container Queries

For developers: Chrome 148 lets you query a container by name alone, without specifying a container-type.

Previously, container queries required both a name and a type (container: sidebar / inline-size). Now you can set a container name and query against it without locking in a size type. Component libraries can scope styles to named ancestors without imposing layout constraints on their consumers.

No browser UI impact. Extension compatibility unaffected.

Manifest Localization for Web Apps

Installed Progressive Web Apps can now localize their manifest (app name, description, icons, and shortcuts) based on the user’s language and region. A Japanese user installing a PWA sees the Japanese app name and icon without the developer shipping a separate manifest per locale.

This is a web app platform capability, not a Chrome extension API change. MV3 extensions use _locales/ for localization, which is unchanged.

What Still Hasn’t Changed

These are the tab and extension features people are still waiting on:

FeatureStatus as of May 2026
Vertical tabs — default (no flag)Not in 148. Still flag-only.
Projects Panel (Gemini + tab groups)Canary only. No stable ETA announced.
Tab scrolling restorationExpected H1 2026 — not in 148; tracking for a later 2026 release.
HTTPS-First for all Chrome usersOn track for Chrome 154 (Oct 2026); already active for Enhanced Safe Browsing users since 147.
Extensions API for tab strip positionNot available — no extension API to detect or modify vertical tab state.

The Projects Panel, which connects Gemini chat threads to tab groups, has been Canary-only since Chrome 146. Chrome 148 doesn’t change that.

Security Patch Details: Not Yet Published

The Chrome team’s May 5, 2026 release announcement explicitly states: “Security changes will be updated shortly.”

This is unusual but not unprecedented. It typically means the security team is waiting for a majority of users to receive the update before disclosing vulnerability details. Google holds CVE publication until most users are patched, shrinking the window between disclosure and exploitation.

The IDNA ContextJ enforcement described above is one confirmed security-relevant change. The full list will appear on the Chrome Security Page within days of rollout completion.

Update Chrome regardless: Menu > Help > About Google Chrome and let it download. If the update is already applied, the page will show 148.0.7778.96 or later.

What Chrome 148 Means for Tab-Heavy Users

This is a developer-platform release more than a tab-management release. The Prompt API is the headline, and it matters to people building things on top of Chrome, not to people using Chrome for work.

For tab power users, nothing shifted. You have the same native tools as Chrome 147:

  • Vertical tabs if you’ve enabled the flag (same as before)
  • Tab groups (same as before)
  • Ctrl+Shift+A for basic tab search (same limited overlay)
  • No named workspaces, no session snapshots, no keyboard command bar, no tab previews

If you’re managing 20+ tabs across multiple projects and Chrome’s built-in tools aren’t keeping up, Chrome 148 doesn’t add anything to that story. Named workspaces with session persistence, 50 auto-snapshots taken every 5 minutes, Alt+K to search open tabs from any page, and Alt+Click to peek at tab content without switching: these remain extension territory.

SuperchargeNavigation covers all four via Chrome’s side panel API. Free core, no account, zero telemetry, local by default with optional browser-native sync.

For Chrome 148 specifically: update when prompted, know the security patch list is pending publication, and don’t expect any change to your tab workflow. If the Prompt API is relevant to something you’re building, the developer notes are at developer.chrome.com/release-notes/148.

For the HTTPS-First warning that’s been active since Chrome 147, the fix guide covers five scenarios in under five minutes. The vertical tabs analysis (current through Chrome 148) is at Chrome 146 Vertical Tabs vs Extensions.

Frequently Asked Questions

When did Chrome 148 stable release?
As of May 2026, Chrome 148 stable rolled out on May 5, 2026. Version numbers: 148.0.7778.96 on Linux, 148.0.7778.96/97 on Windows and Mac. The rollout reaches all users over the following days.
What is the Prompt API in Chrome 148?
As of May 2026, the Prompt API in Chrome 148 gives web developers direct access to Gemini Nano, Chrome's on-device language model. It runs locally — no cloud call required — and supports text, image, and audio inputs. It's a developer API, not a user-facing feature you'll notice in the browser UI.
Do Chrome 148 vertical tabs work without a flag?
No. As of May 2026, vertical tabs in Chrome 148 still require enabling chrome://flags/#vertical-tabs and relaunching. There's no change from Chrome 146 or 147 — vertical tabs remain a flag-only feature with no confirmed graduation date.
What is new in Chrome 148 for security?
As of May 2026, the Chrome 148 stable release post notes that the security patch list will be published shortly after rollout. One confirmed security-adjacent change is enforcement of IDNA ContextJ rules, which blocks zero-width joiners and non-joiners (ZWNJ/ZWJ) in most URL positions — a homograph attack mitigation.
What is lazy loading for video and audio in Chrome 148?
As of May 2026, Chrome 148 adds a loading='lazy' attribute to video and audio elements, deferring their resource load until they're near the viewport. Behavior mirrors what Chrome already does for images and iframes. No action required from users — pages that implement it load faster by default.
Should I update to Chrome 148?
Yes. As of May 2026, Chrome 148 includes developer-facing improvements and at least one confirmed security-relevant URL parsing fix. The security patch list was not fully published at the time of writing — update via Chrome menu > Help > About Google Chrome when prompted.

Don't miss the next release

Be first to know when we ship something new.

Related Articles