Paint Timing API Monitor - Online FP, FCP & LCP
Access the Paint Timing API and display First Paint, First Contentful Paint, and Largest Contentful Paint times. Quick perf check.
UD5 Toolkit
Real-time page asset load analysis via Performance API
| # | Name | Size | Duration | Waterfall | ||||
|---|---|---|---|---|---|---|---|---|
|
No data yet Click "Scan Page" to analyze current page resources or "Demo Data" to see a sample. |
||||||||
The Resource Timing API is a browser performance interface that provides detailed timing information for each resource loaded by a web page. It exposes metrics like DNS lookup time, TCP handshake duration, SSL negotiation, Time to First Byte (TTFB), and content download time for every asset (JS, CSS, images, fonts, XHR, etc.). This data is accessible via performance.getEntriesByType('resource') and is invaluable for diagnosing front-end performance bottlenecks.
Timing fields can be zero for several reasons: (1) Cached resources — browsers serve cached assets instantly, skipping DNS/TCP/SSL phases. (2) Cross-origin restrictions — if the resource server doesn't include the Timing-Allow-Origin response header, detailed timing data is obscured for security reasons. (3) Reused connections — HTTP/2 and HTTP/3 multiplex requests over a single connection, so DNS/TCP may already be established. (4) Same-origin resources typically expose full timing data.
Time to First Byte (TTFB) measures the time from the initial request until the first byte of the response arrives. It's calculated as responseStart - requestStart. A high TTFB indicates server-side slowness (database queries, API processing, network latency). Google recommends TTFB under 200ms for optimal performance. TTFB is a critical metric because nothing can render until the first byte arrives.
Use this tool to sort by Duration (descending) or enable the "Slow only (>1s)" filter. Look for resources with high TTFB (server issue), long download times (large files), or multiple sequential DNS/TCP phases (too many unique domains). The waterfall chart visually highlights long bars. Common culprits include unoptimized images, bloated JavaScript bundles, and third-party scripts.
A transferSize of 0 typically indicates the resource was served from the browser cache (304 Not Modified or cached locally). It may also appear as 0 for cross-origin resources without the Timing-Allow-Origin header. In this tool, we label these as "Cached" or "Unknown" to help you distinguish. Cached resources are great for performance!
You can Export CSV to open in Excel/Google Sheets, or Copy JSON to share raw Performance API data. You can also Import previously saved JSON data or data collected from Chrome DevTools using JSON.stringify(performance.getEntriesByType('resource')). This makes it easy to compare page loads or share findings with your team.
These phases represent the network connection lifecycle: DNS Lookup — resolving the domain name to an IP address. TCP Handshake — establishing a reliable connection (SYN, SYN-ACK, ACK). SSL/TLS Negotiation — encrypting the connection (only for HTTPS). Request — sending the HTTP request. TTFB — waiting for the server to process and start responding. Download — receiving the response body. Each phase adds latency; minimizing them improves load speed.
This tool analyzes the current page you're viewing using the browser's built-in Performance API. To analyze a different website, open that website in your browser, then run this tool on that page (or use a bookmarklet). You can also use Chrome DevTools → Performance tab → record a page load → export the data and import it here using the Import button.
Access the Paint Timing API and display First Paint, First Contentful Paint, and Largest Contentful Paint times. Quick perf check.
See the current state of a Service Worker for your page: installing, waiting, active. Unregister or skip waiting. Developer utility.
See your device's battery level, charging status, and discharge time using the Battery Status API. Fun utility.
Paste a raw server log snippet and see a structured table with IP, method, URL, and status. Quick audit.
Estimate how long a battery will last given capacity (mAh/Wh) and load current. Also computes backup time for power banks. Quick and local.
Connect to a BLE device and read its Battery Service characteristic. See the charge level in a gauge.
See the current Service Worker registration, its state, and scope. Send 'skipWaiting' and update. PWA debug.
Apply will‑change to any element and see its effect on compositing. Learn best practices for smooth animations.
Load images or use colors and apply all 15 CSS blend modes. Visual tester for creative effects.
Register a custom CSS property with syntax, initial value, and inherits. Animate colors and numbers that couldn’t before.
Estimate arrival time with driving duration, breaks, and time zone changes. Plan your road trip precisely.
Log shedding events, note duration, and track humidity to optimize next cycle. Healthy scales.
Manipulate CSS values as typed objects using attributeStyleMap. Convert between CSSUnitValue, CSSMathSum, etc. Futuristic CSS‑in‑JS.
Create promises that resolve or reject after a delay. See state changes and chain .then/.catch. Debug async code.
Paste your CSS and get a sorted list of all custom properties defined under :root with their values. Quick audit.
Set up multiple @layers and use revert‑layer to fall back. See the computed style and cascade resolution live.
Build a renovate.json file to automate dependency updates. Choose schedule, automerge, and package rules. Local.
Schedule tasks with user‑visible, user‑blocking, or background priority. See execution order and delays. Modern web perf.
Test the new style() function inside @container to query custom property values. Revolutionary component‑based responsive design.
Paste your CSS and see rules sorted by specificity. Find overrides and potential collisions. Understand your cascade.
Swap between physical and logical properties (margin‑inline vs margin‑left). Live preview with writing‑mode. Internationalize your CSS.
A completely black page to save battery on OLED devices. Click to go fullscreen. Simple utility.
Calculate flour, water, starter amounts to achieve a target loaf hydration. Adjusts for starter hydration. Instant local calculation.
Upload any picture and instantly get a 5‑color palette. Useful for UI design themes. Canvas‑based extraction.
Paste your stylesheet and get a clean list of all custom properties defined under :root. Copy the whole block. Local analysis.
Apply user‑select: none, text, all and see how it affects selection. Copy the CSS snippet for your UI elements.
Get a random, unique superpower with a detailed description and limit. Perfect for character creation or daydreaming.
Build a Vite configuration file by selecting plugins (Vue, React, etc.), aliases, and build options. Copy the final code.
Enter network name and password to generate a stylish printable card for visitors. Local, no data leak.
Enter a URL and instantly generate a PDF version using the browser's print-to-pdf engine. Private, no upload.