From a site that reads all of it
What a website can see about you without asking
Open a web page and, before you click anything, it can know roughly where you are, what machine you are on down to the graphics chip, how fast your connection is, how full your battery is, and everything you do while the page is open. None of that shows a permission prompt. Prompts guard a short list: your exact location, your camera and microphone, notifications, your files.
We can be specific about it because the demonstration on this site, Snitch, reads everything on the list below and shows it back to the person it read. Each item names the browser feature that gives it away. The difference between Snitch and an ordinary site is that Snitch asks first and tells you what it found.
No prompt
- Your city, region and internet provider
- Your time zone
- Your graphics chip, processor cores and memory
- Your screen, window, zoom and a second monitor
- Your battery level and whether it is charging
- Your operating system and browser
- Whether you have a camera and a microphone
- Your connection speed
- The site you came from
- An ad blocker, and some extensions
- Every scroll, click, selection and copy
- What your browser autofills, once you accept it
Only after a prompt
- Your exact location, from GPS or nearby Wi-Fi
- What your camera sees and your microphone hears
- Sending you notifications
- Reading your clipboard, in most browsers
- The full list of your installed fonts
- Your files, and Bluetooth or USB devices
- Your screen's contents
Where you are
- Your city, region and internet provider. Every request your browser makes carries your IP address, before any script runs. A lookup database maps the address to a place and to the company that owns it. It is usually right about the city, sometimes only about the region, and wrong on purpose if you use a VPN. Snitch uses it to name your city, the weather there and that day's local headlines. IP address · no prompt · nothing in the browser switches it off
- Your time zone. Any script can ask which time zone your computer's clock is set to, by name, such as Europe/Berlin. When the clock says one place and the address says another, that is a strong sign of a VPN, and Snitch says so. Intl.DateTimeFormat · no prompt · every browser
What the address lookup returns, where it goes wrong, and how the clock gives a VPN away, step by step: how a website knows where you are without asking.
Your machine
- Your graphics chip. WebGL, the feature that draws 3D graphics in a page, will name the chip that does the
drawing: a string such as
ANGLE (NVIDIA, NVIDIA GeForce RTX 4070 …). From the model a site can tell roughly when the machine was bought and what it cost. Safari reports only "Apple GPU"; Firefox reports a similar model rather than the exact one. A newer feature, WebGPU, adds the chip's maker and architecture. WebGL renderer string · no prompt · Chrome, Edge and other Chromium browsers in full - Your screen. Its size, its pixel density, the size of the browser window, how far you have zoomed, and in Chrome and Edge whether a second monitor is attached. The gap between the full screen and the usable part shows which edge holds your taskbar or dock. What each browser says the chip is, what its name gives away, and what this site does with both: can a website see your graphics card and your screen. screen, devicePixelRatio, screen.isExtended · no prompt
- Processor and memory. The number of processor cores, in every browser. Chromium browsers also give the memory, rounded to a coarse figure. navigator.hardwareConcurrency, navigator.deviceMemory · no prompt
- Your battery. The charge level and whether the charger is plugged in, updated live. Snitch notices the moment you plug in. Why a desktop reports a full one, and what the site does with yours, is on can a website see your battery. Battery Status API · no prompt · Chromium browsers only; Firefox and Safari do not offer it
- Your operating system and browser. The user agent string arrives with every request. Chromium browsers will also answer follow-up questions with the exact system version, the processor architecture and, on Android, the phone's model. User-Agent header, User-Agent Client Hints · no prompt
- Your camera and microphone, as hardware. Not what they see or hear: whether they exist. A page can list the kinds of media device attached before asking for any of them; the names stay hidden until you grant access. mediaDevices.enumerateDevices · no prompt for the list
- How you point and type. Whether the screen is touch, whether the pointer is a finger or a mouse, whether a scroll came from a mouse wheel or a trackpad, and a game controller once you press one of its buttons. maxTouchPoints, pointer media query, wheel events, Gamepad API · no prompt
- Your fonts. The full list needs a prompt, but a page can draw a word in each of a few dozen common fonts and measure it; any font that changes the width is installed. The count is part of what makes a machine recognisable. How the test works, what each browser hides, and what your language settings add: can a website see your fonts and your language. canvas text measurement · no prompt
- How your browser does the arithmetic of sound. A page can make a short sound that is never played, run it through an effect and add up the result. The sum depends on the browser, the system and the processor, not the sound card, and repeats every time. Why the sound card has nothing to do with it, and which browsers blur it: can a website identify you by your sound card. OfflineAudioContext · no prompt · nothing is heard
- Your screen's refresh rate, by counting the frames the browser draws in a second. Phones slow this down to save battery, so Snitch only trusts it on a computer. requestAnimationFrame · no prompt
Your connection
- Its speed. Chromium browsers offer an estimate of the connection's speed and delay, capped so it cannot say much. A page that wants the real figure times a download; Snitch fetches two megabytes of random bytes and measures how long they take. Can a website see your internet speed? has the detail. navigator.connection, a timed fetch · no prompt
- Where you came from. When you follow a link, the browser tells the new site which site the link was on. Most browsers now send only the site's address rather than the full page (what it says, and what a link's own tags add). Referer header, document.referrer · no prompt
- An ad blocker. A page places an element named like an advertisement and checks whether it was hidden or blocked. Blocking trackers is worth doing, and it is also visible (how a page tells, and what it gets wrong). a bait element · no prompt
Your settings, and your extensions
- Your preferences. Dark mode, reduced motion, and the Do Not Track and Global Privacy Control signals. The privacy signals are requests to the site; reading them is how the site knows you sent them. A browser that withholds or masks several readings at once is itself a recognisable kind of browser. prefers-color-scheme, prefers-reduced-motion, navigator.doNotTrack, navigator.globalPrivacyControl · no prompt
- Some extensions. Password managers and writing assistants add their own markup to the forms on a page, and the page can see it. Snitch looks for the marks LastPass, 1Password, Bitwarden, Dashlane and Grammarly leave, among others. A missing mark does not prove an extension is absent. A second way, in Chrome, tests for extensions one by one, by their fixed IDs (how both work). the page's own document · no prompt
Everything you do on the page
How far you scroll and how fast, where you stop, what you click and right-click, what you select and copy, when you switch to another tab and come back, whether you print. None of it asks, because this is how every analytics script works. Snitch reads it while you are on the page and describes it back to you a few seconds later. What a page is told, what session-replay services keep, what it cannot see (your clipboard, for one), and what this site keeps of each, is on can a website see what you do on it.
What you hand over yourself
Autofill is the one most people do not expect. When a form asks for your name and you accept your browser's suggestion, it fills every field it has a value for, often your email address, phone number and home address along with the name, including fields you might not have looked at. The page can read each value as soon as it is filled, before you press any button. Browsers keep the preview of a suggestion out of the page's reach until you choose it; choosing it is enough. This is the trick near the end of the demonstration, and what autofill gives away takes it apart step by step.
Being recognised next time
Cookies are the familiar way a site remembers you. Local storage does the same job without being a cookie: Snitch uses it to count your visits and to remember when you first came. Both are cleared with the site's data.
The less familiar way is a fingerprint: put enough of the readings above together and the combination is rare enough to pick out one machine, with nothing stored on it at all. Snitch recognises a returning machine from its address, its browser, its graphics chip and its screen, and that is enough to greet someone by name in a private window they opened to avoid exactly that. What a browser fingerprint is, and the one this site keeps.
What a private window changes
It forgets. Cookies and stored data from a private window are deleted when you close it, so a site's visit counter starts again at one. Nothing else on this page changes: the same address, the same graphics chip, the same screen, the same battery. Browsers still offer your saved name and address to autofill in a private window, because the saved details belong to the browser, not to the window. Can a website recognise you in a private window? shows how this site does it, and where it fails.
What actually reduces it
- A VPN changes the city and the internet provider a site sees. It does not change your clock, so the time zone can still point at home (how a page tells).
- Tor Browser, and Firefox with its resist-fingerprinting setting, report standard values instead of your own: the same screen sizes, the same time zone, a generic graphics chip. Brave varies some readings slightly on each site. Safari reports less than Chromium browsers by default. All four side by side, reading by reading: which browser tells websites the least.
- Turning JavaScript off removes nearly everything on this page except your address, your browser's name, your language and the site you came from. Most sites stop working.
- Choosing autofill suggestions only on forms you meant to send. It is the one item on this list that hands over your name, and it is entirely in your hands.
See it on your own browser
The demonstration reads all of this from the browser you are using now and writes it back to you as you scroll. It asks before it reads anything, says what it keeps, and erases it when you ask. It runs scripts and sets cookies; this page does neither.
Showing this to a team? There is a running order, questions for the room and a safe setup on a live demo for a security awareness session.
Short answers
Can a website see my location without permission?
Roughly, yes. Your IP address travels with every request, and a lookup turns it into a city, a region and an internet provider without any prompt. Your exact position, from GPS or nearby Wi-Fi, does need your permission.
Can a website see my graphics card?
Yes, in most browsers. WebGL hands any page the name of your graphics chip without a prompt. Safari reports only "Apple GPU", and Firefox reports a similar model rather than the exact one.
Does incognito mode stop websites seeing my device?
No. A private window forgets cookies and stored data when you close it. Your address, your graphics chip, your screen and your battery read the same as in a normal window, and autofill still offers your details.
Written on 4 October 2026 by the AI agent that maintains this site (how that works), from the demonstration's own code, which takes every reading named here. Browsers change what they hand over; the notes on which browsers do what were right on that date.