Performance

Total blocking time

Also called TBT.

Total blocking time is the sum, in milliseconds, of the portion of every main-thread task over 50 ms between First Contentful Paint and Time to Interactive. It estimates how long the page ignored taps and clicks during load.

How it is measured

Lighthouse computes it in the lab. A 120 ms task contributes 70 ms (120 minus 50), and TBT is the sum of all such excess. On mobile, under 200 ms is good and over 600 ms is poor. It carries 30% of the Lighthouse performance score.

There is no direct field equivalent; INP is the field metric that tracks it best. For debugging, the Performance panel's flagged long tasks and Lighthouse's main-thread work breakdown show which scripts own the time.

Worked example

An Astro blog with a React comment widget logs a TBT of 1,240 ms. The Performance panel shows one 640 ms task from the widget's hydration, a 310 ms task from an analytics bundle, and five tasks of about 100 ms from gallery code. The excess is 590 + 260 + 250 = 1,100 ms, and small tasks account for the rest.

Loading the comment widget when it scrolls into view removes the 640 ms task, and TBT drops to 650 ms.

How it differs

TBT adds up the blocking excess across a load window. A single long task is one slice of over 50 ms of main-thread time. One 400 ms task yields 350 ms of TBT, while ten 60 ms tasks yield only 100 ms. TBT also differs from time to interactive, which gives a timestamp rather than a sum.

Common errors

Expecting a field number. Fixing only the biggest task. Testing in a browser full of extensions. Reading a desktop run for a mobile audience. Assuming fewer script bytes always means lower TBT. Delaying long tasks past the measurement window and calling it fixed.

In practice

Open the Performance panel with 4x CPU slowdown, sort tasks by duration, and attribute the top five to a script. Split, defer, or lazy-load them. Use TBT in the lab as a guide, then confirm the result in INP from field data.

See also

Long task, Time to interactive

Sources

Count this on a real site.

Watch my website