You have Claude in Chrome installed, the toolbar icon shows the side panel as connected — but Claude replies “I don’t see any page content,” summarizes a different tab, or just describes the side panel itself. Nine times out of ten the fastest fix is: right-click the Claude toolbar icon, set site access to “On all sites” (or add the current domain), refresh the page, and re-ask. If that doesn’t do it, the page is probably a Canvas/PDF/SPA with no readable text, or Claude grabbed the wrong tab.
As of June 2026, “Claude in Chrome” is Anthropic’s official agentic extension, available in beta on paid plans only (Pro, Max, Team, Enterprise). It reads page text via Chrome’s scripting permission and can act on the page via the debugger permission. To read the current tab it injects a content script that reads the page’s text; if Chrome blocks that injection — or the page has no real text in the DOM — Claude receives an empty string and tells you it can’t see anything.
Which bucket are you in?
Run through this table first; it maps the symptom to the cause and the section that fixes it.
| Symptom | Most likely cause | Fix |
|---|---|---|
| Icon connected, “I can’t see the page,” same on every site | Site access stuck on “When you click” | Fix 1 |
| Works on news sites, fails on Google Docs / Figma / Notion / PDF | Canvas / dynamic-render page, no DOM text | Fix 2 |
| Claude summarizes the wrong page or its own UI | Wrong active tab grabbed | Fix 3 |
| Only the outer shell is read, not the embedded content | Cross-origin iframe | Fix 4 |
| Fails only in a private window | Extensions disabled in Incognito | Fix 5 |
| Fails only on your work laptop | Enterprise / MDM policy | Fix 6 |
| ”Browser extension is not connected” in Claude Code / Desktop | Cowork vs Claude Code conflict | The Cowork conflict |
Common causes
Ordered by hit rate, highest first.
1. The extension lacks “read this site” permission for the current domain
Chrome’s default extension site-access model is “When you click the extension.” Until you explicitly grant the site, the content script never injects, so Claude has no DOM access — even though the side panel shows it’s connected and signed in.
How to spot it: Right-click the Claude toolbar icon and look at the “This can read and change site data” row. If it reads “When you click the extension” and the current domain isn’t listed under “On specific sites,” this is it.
2. The page is an SPA / Canvas / PDF with no readable DOM text
Google Docs, Figma, Miro, Notion, and Chrome’s built-in PDF viewer render their main content in Canvas, WebGL, or dynamically injected iframes. A plain text read returns mostly empty output or just navigation chrome. Anthropic’s own docs note that “sites with heavy JavaScript may require a moment to fully load” — but Canvas-rendered text never becomes readable text no matter how long you wait.
How to spot it: On the page, open DevTools (F12) → Console and run document.body.innerText.length. If the number is under 200 but the page is full of visible text, this is your cause.
3. Multiple Claude tabs — the wrong active tab gets grabbed
Claude in Chrome reads the tab the side panel is attached to. If you have several Claude tabs open, or a popup grabbed focus, it can end up reading Claude’s own UI instead of your content.
How to spot it: Ask Claude to begin its reply with “The current page title is…” and compare it against your real tab title.
4. Content lives in a cross-origin iframe
YouTube comments, Medium embeds, and X (Twitter) embeds keep their main content in a cross-origin iframe. Chrome’s same-origin policy blocks the extension’s content script from reading across origins, so Claude only gets the outer shell.
How to spot it: F12 → Elements, and check whether the main content sits inside <iframe src="a-different-domain">.
5. Incognito / Guest mode has extensions disabled
By default, Chrome disables extensions in Incognito. The icon may still appear, but the content script never injects.
How to spot it: Open chrome://extensions/ → Claude → Details → check whether “Allow in Incognito” is on.
6. Corporate / MDM policy blocks host access
Managed Chrome can set ExtensionSettings, ExtensionInstallBlocklist, or runtime host allowlists that silently strip the extension’s ability to read certain domains — or block the extension entirely.
How to spot it: Visit chrome://policy/ and look for ExtensionSettings, ExtensionInstallBlocklist, or runtime_blocked_hosts entries that touch claude.ai or anthropic.com.
Shortest path to fix
Fix 1: Grant site access
Right-click the Claude toolbar icon → “This can read and change site data” → choose “On all sites” (easiest) or “On specific sites” and add the current domain. Refresh the target page, then re-ask in the side panel.
To manage this from the extensions page instead:
chrome://extensions/ → Claude → "Site access" → "On all sites"
(or "On specific sites" → add domain)
You can also review and revoke per-site grants from inside the extension: click the Claude icon → three dots (⋯) → Settings → Permissions, where approved sites are listed.
Fix 2: Check the page is actually readable
Open F12 → Console and run:
console.log('text length:', document.body.innerText.length);
console.log('first 200 chars:', document.body.innerText.slice(0, 200));
If the output is far smaller than the visible page (just nav text), the content is Canvas, WebGL, or a cross-origin iframe — the connector can’t read it no matter what you do. Use a side channel instead:
- PDF → download it, then attach it to the chat with the file/paperclip button
- Google Docs → Select-All, Copy, paste into the chat (or
File → Download → Plain text) - Notion →
••• → Export → Markdown, then upload the file - Figma / Miro → copy the text frames out, or screenshot and attach the image
Fix 3: Close extra Claude tabs
Keep one Claude tab (or use the side panel) and put the target page in a separate normal tab. Switch to the target tab so it’s the focused tab, then open the Claude side panel there and ask. If you routinely keep many Claude tabs open, do research in a separate Chrome Profile to keep them apart.
Fix 4: Pop cross-origin iframes out
If the content lives in an iframe:
- Right-click inside the iframe → “This Frame” → “Open Frame in New Tab”
- Grant the extension site access in the new tab (Fix 1), then let Claude read it directly
Fix 5: Enable in Incognito
chrome://extensions/ → Claude → Details → toggle “Allow in Incognito.” While you’re there, turn on “Allow access to file URLs” so Claude can read local file:// HTML and PDFs.
Fix 6: Test on a non-managed browser
If the extension fails only on your work laptop, it’s almost certainly MDM policy. Install Claude in Chrome on a personal Chrome, or a Chromium browser like Brave or Arc, and reproduce. Once you’ve confirmed the page reads fine off-policy, file a ticket asking IT to allowlist claude.ai and anthropic.com in the ExtensionSettings Chrome policy.
The Cowork conflict (Claude Code / Desktop)
A separate failure mode looks identical from the page but has a different root cause. If you drive the browser through Claude Code or Claude Desktop and hit “Browser extension is not connected” even though the side panel works on its own, the cause is usually a conflict between Claude Desktop’s Cowork feature and Claude Code’s Chrome integration: starting one silently disconnects the other from the extension. This regression was widely reported around the April 15, 2026 Desktop update.
To recover:
- Fully quit the side you aren’t using — if you’re working in Claude Code, quit Claude Desktop (and its Cowork session) entirely, not just the window.
- In Chrome, click the Claude icon → toggle the extension off and on, or reload it from
chrome://extensions/. - Reconnect from the active client (re-run the connect step in Claude Code, or reopen the Desktop session) so only one client owns the extension.
- Make sure both Chrome and the extension are on the latest version — several connection bugs were fixed in later extension releases.
How to confirm it’s fixed
Open the side panel on your target page and ask: “Quote the first sentence of the visible page text and give the exact page title.” If Claude returns text and a title that match what you see, the connector is reading the live DOM. If it paraphrases vaguely or returns a different title, you’re still in one of the buckets above — most often Fix 1 (site access) or Fix 2 (Canvas page).
Prevention
- Pre-grant site access to research domains you use often (GitHub, Stack Overflow, your wiki) on first visit
- Use one Claude tab per task; multi-task with separate Chrome Profiles
- For PDF / Google Docs / Notion / Figma, prefer the upload or export path over the connector
- Toggle “Allow in Incognito” for Claude if you research in private windows
- Don’t run Claude Desktop Cowork and Claude Code browser control at the same time
- On corporate machines, ask IT to allowlist
claude.aiandanthropic.cominExtensionSettings
FAQ
Why does Claude say it can’t see the page even though the extension is connected? “Connected” only means the side panel is signed in and talking to Claude. It does not mean Chrome let the content script read this domain. The most common cause is site access stuck on “When you click the extension” — grant the site (Fix 1) and refresh.
Do I need a paid plan for Claude in Chrome? Yes. As of June 2026, Claude in Chrome is in beta on paid plans only — Pro, Max, Team, and Enterprise. There is no free-tier access to the browser extension.
Why does it work on news sites but not Google Docs, Figma, or a PDF? Those render text in Canvas, WebGL, or dynamic iframes, so there’s no real text in the DOM to read. Use the upload/export path (Fix 2) instead of the page connector.
It worked yesterday and broke after I opened Claude Desktop Cowork — why? Cowork and Claude Code’s Chrome integration fight over the same extension; opening one can silently disconnect the other. Quit the client you aren’t using and reconnect (see The Cowork conflict).
Is “Act without asking” safe to leave on? Anthropic labels it a high-risk mode. Claude still requires explicit approval for purchases, deletions, account creation, and entering sensitive data, but for general browsing, “Ask before acting” is the safer default. Switch modes from the dropdown on the chat input.
Related
- Claude connector permission denied
- Claude beginner guide
- Claude prompt best practices
- Claude Projects
External references: Claude in Chrome troubleshooting and the permissions guide from Anthropic’s help center.
Tags: #Claude #Debug #Troubleshooting