Back to Home

How We Detect Your Device - Technical Methodology

We believe in transparency. Here's exactly how we detect each piece of information and how accurate it is.

Accurate
Estimated / Approximate

IP Address

Fetch from ip-api.com

Your public IP is fetched from a geolocation API. This is your real IP address as seen by websites.

Browser & Version

navigator.userAgent

Parsed from the User-Agent string. Accurate for identifying browser name and version.

Operating System

navigator.platform + userAgent

Detected from platform info and User-Agent. Generally accurate for major OS detection.

WebRTC Leak Status

RTCPeerConnection

We create a WebRTC connection to detect if your real IP is exposed, even through VPNs.

Device Memory

navigator.deviceMemory

Returns bucket values (2, 4, 8, 16 GB) for privacy. NOT your exact RAM. 12GB RAM shows as 8GB.

Storage Quota

navigator.storage.estimate()

Shows the maximum storage the browser can theoretically use. NOT your actual disk space or SSD capacity.

Connection Type

navigator.connection.effectiveType

A heuristic guess (2g/3g/4g). WiFi and Ethernet both show as '4g' if fast. Not your actual network type.

GPU Information

WebGLRenderingContext.getParameter()

GPU info from WebGL. May show ANGLE translation layer (e.g., 'ANGLE Metal Renderer') instead of exact GPU model.

CPU Cores

navigator.hardwareConcurrency

Returns logical cores (threads). Cannot distinguish performance vs efficiency cores on Apple Silicon.

Why These Limitations?

Browsers intentionally hide exact hardware details for privacy and security. This prevents websites from uniquely identifying you based on hardware. We show what the browser allows us to see - nothing more, nothing less.

Last updated: 2026-02-08