How to reduce Total Blocking Time and diagnose responsiveness issues

Find JavaScript and main-thread work that can make a page slow to respond during loading.

How to reduce Total Blocking Time and diagnose responsiveness issues

Short answer

Total Blocking Time is a lab metric that shows how much long main-thread work blocks the browser during page load. INP is a Core Web Vitals responsiveness metric and is not the same as TBT, but high TBT can help reveal JavaScript and main-thread problems that may affect responsiveness.

Why this matters

Main-thread blocking makes pages feel stuck

Even if content appears, users can experience delay when scripts monopolize the browser. Reducing blocking work can improve perceived responsiveness.

What this issue means

TBT points to work that keeps the browser busy when it should be able to paint and respond. It is especially useful for finding heavy JavaScript during load.

How ViewMend helps

Run a public page check, review the evidence, see whether the issue is prioritized, and use ViewMend AI only when you need an explanation, developer task or AI Fix Plan.

How to verify the fix

Run a new lab check after JavaScript changes and compare TBT, long-task evidence and related third-party findings.

Common causes

TBT is usually JavaScript and main-thread work

  • Large JavaScript bundles.
  • Long tasks during hydration.
  • Expensive third-party scripts.
  • Heavy event handlers.
  • Client-side rendering work before interaction.

What to check first

Find long tasks and unnecessary scripts first

  • Review unused JavaScript findings.
  • Identify third-party scripts with high cost.
  • Check hydration and framework bundle size.
  • Look for long main-thread tasks.
  • Compare mobile results carefully.

How to fix it

Give the browser room to respond

  • Split JavaScript bundles.
  • Defer non-critical scripts.
  • Lazy load features below the fold.
  • Reduce hydration cost.
  • Remove or delay low-value third-party tags.

How to verify the fix

Retest TBT and interaction evidence

Run a new lab check after JavaScript changes and compare TBT, long-task evidence and related third-party findings.

How it works

Diagnose the issue with a fresh report

  1. Enter the public URL you want to test.
  2. Run a mobile and desktop performance check.
  3. Review the metric, screenshot and audit evidence tied to the issue.
  4. Check whether related problems make the issue worse.
  5. Create an AI explanation or developer task only if you need one.
  6. Retest after the fix and compare the new report with the previous one.

Product workflow

Check the page before guessing

ViewMend helps you inspect a real public page, compare mobile and desktop evidence, and decide whether AI output is worth spending credits on.

Developer task example

Example task for TBT

Split JavaScript bundles and reduce long main-thread tasks so the browser can respond faster during page load.

Problem TBT points to work that keeps the browser busy when it should be able to paint and respond. It is especially useful for finding heavy JavaScript during load.
Suggested fix Split JavaScript bundles and reduce long main-thread tasks so the browser can respond faster during page load.
Acceptance criteria The next lab retest shows improvement for the affected metric, no critical mobile or desktop behavior is broken, and the page still renders correctly.
Retest step Run a new lab check after JavaScript changes and compare TBT, long-task evidence and related third-party findings.

Fix priorities

Responsiveness checks to prioritize

What to inspect Why it matters Next action
Long tasks They block the main thread and delay response. Break work into smaller chunks and defer non-critical logic.
Unused JavaScript Code still costs download, parse and compile time. Remove, split or lazy load unused bundles.
Third-party scripts External tags can compete for the main thread. Delay, remove or load after consent or interaction.

FAQ

Common questions

Is TBT the same as INP?

No. TBT is a lab metric about blocking during load. INP is a responsiveness Core Web Vitals metric based on interactions.

What causes high Total Blocking Time?

Heavy JavaScript, hydration, long tasks and expensive third-party code are common causes.

How can JavaScript affect responsiveness?

JavaScript runs on the main thread and can prevent the browser from responding quickly.

Should I remove third-party scripts?

Not blindly. Audit value and cost, then delay or remove scripts that are not critical.

Can ViewMend create a developer task for TBT issues?

Yes, ViewMend AI can create a developer-ready task when you explicitly request it.