Skip to main content
OneTrustOneTrust

OneTrust cookie banner: speed and features

In our tests with its Nuxt integration, OneTrust showed its cookie banner in a median 3.85 s on an emulated mid-tier phone. It delayed the main content by 716 ms (95% interval 688 ms to 744 ms). Accept responded in 24 ms and Reject in 16 ms. It held trackers back in all 4 consent checks.

On desktop, the banner took 640 ms. Per vendor docs, OneTrust supports IAB TCF, IAB GPP, Google Consent Mode v2, Google CMP certification and Global Privacy Control.

Version tested
Hosted
Vendor
OneTrust
Website
onetrust.com (opens in a new tab)

Results for

Framework

How fast is OneTrust’s cookie banner?

On Nuxt. We measured other CMPs on Next.js only, so this comparison uses OneTrust’s other integrations.

How fast does the banner appear?

3.85 s
Moderate

Median of 15 visits.

5th fastest of 6 OneTrust integrations. Field median 3.74 s. OneTrust: 3.85 s.
All 6 integrations, best first
  1. React3.66 s
  2. Script tag3.68 s
  3. Astro3.70 s
  4. TanStack Start3.79 s
  5. Nuxt3.85 s
  6. Next.js3.92 s

Does it slow the page down?

+716 ms95% interval 688 ms to 744 ms
Noticeable

Compared with the same page without a consent manager.

4th of 6 OneTrust integrations, from least to most delay. Field median 596 ms. OneTrust: 716 ms.
All 6 integrations, best first
  1. React300 ms
  2. TanStack Start472 ms
  3. Next.js476 ms
  4. Nuxt716 ms
  5. Script tag812 ms
  6. Astro860 ms

How fast does a click respond?

24 msOne visit measured
Fast

Reject responded in 16 ms. Under 200 ms feels instant.

Joint 5th fastest of 6 OneTrust integrations. Field median 16 ms. OneTrust: 24 ms.
All 6 integrations, best first
  1. Next.js16 ms
  2. Astro16 ms
  3. React16 ms
  4. Script tag16 ms
  5. Nuxt24 ms
  6. TanStack Start24 ms

Does it block trackers until consent?

4 of 4consent checks passed
Blocked

No tracker ran and the page set no cookie before the visitor chose.

All 6 OneTrust integrations passed every check. Field median 100%. OneTrust: 100%.
All 6 integrations, best first
  1. Next.js100%
  2. Nuxt100%
  3. Astro100%
  4. TanStack Start100%
  5. React100%
  6. Script tag100%

Which standards and features does OneTrust support?

Each status comes from OneTrust’s documentation. CookieBench does not test these features unless a line says so.

  • Verified by test
  • Per vendor docs
  • Partial
  • Not supported
  • Unknown

Which frameworks does OneTrust support?

First-party SDKs
None
Script tag
Supported
Measured in this run
Script tag, React, Next.js, Nuxt, Astro and TanStack Start

Support per OneTrust’s documentation (opens in a new tab).

OneTrust’s results by framework, mobile (emulated)

Each row is a separate app. We measured each one against the same app without a consent manager. The rows compare integrations, not frameworks.

OneTrust results by framework on the mobile profile: banner time, page delay, click response and tracker blocking
FrameworkBanner appearsPage slowed byClick responds inTrackers blocked
Script tag
3.68 sModerate
+812 ms95% interval 760 ms to 836 msNoticeable
16 msOne visit measuredFast
4 of 4 passed
React
3.66 sModerate
+300 ms95% interval 264 ms to 348 msSmall
16 msOne visit measuredFast
4 of 4 passed
Next.jsShared with every CMP
3.92 sModerate
+476 ms95% interval 444 ms to 508 msSmall
16 msOne visit measuredFast
4 of 4 passed
NuxtShown above
3.85 sModerate
+716 ms95% interval 688 ms to 744 msNoticeable
24 msOne visit measuredFast
4 of 4 passed
Astro
3.70 sModerate
+860 ms95% interval 812 ms to 904 msNoticeable
16 msOne visit measuredFast
4 of 4 passed
TanStack Start
3.79 sModerate
+472 ms95% interval 452 ms to 492 msSmall
24 msOne visit measuredFast
4 of 4 passed

When does OneTrust load, and what does it cost the page?

Lab detail for engineers. All Core Web Vitals are here. The summary leaves some of them out.

When does OneTrust start loading?

The banner was visible at 3.85 s. The published results do not show when OneTrust started to load.

OneTrust load timeline, Mobile (emulated), Nuxt: milliseconds from navigation
EventTime from navigation
First byte (TTFB)6 ms
First paint (FCP)244 ms
Banner visible3.85 s
Largest paint (LCP)3.86 s
CMP requested
CMP loaded
Consent state known

How do page vitals compare with no consent manager?

Each row shows the value on the page with the consent manager. It also shows how far the value moved from the same page without one.

OneTrust page vitals, Mobile (emulated), Nuxt, with the difference from a page without a consent manager
MeasureWith OneTrustDifference
TTFBTime to first byte6 msNo measurable difference95% interval −1 ms to 3 ms
FCPFirst Contentful Paint244 msNo measurable difference95% interval 0 ms to 20 ms
LCPLargest Contentful Paint3.86 s+716 ms95% interval 688 ms to 744 ms
CLSCumulative Layout Shift0.00No measurable difference95% interval: 0.00
Primary content paintThe page’s main content, not the banner4.25 s+1.09 s95% interval 1.08 s to 1.11 s

What was the largest element on screen?

LCP times the largest element on screen. If that is the banner, LCP measures the banner instead of the page.

There is no LCP attribution for this profile and framework.

What happens after a visitor clicks Accept?

The screen responded to Accept in 24 ms.

OneTrust after Accept, Mobile (emulated), Nuxt: milliseconds from the click
EventTime from the click
Screen responds24 ms
Banner gone
Consent applied
Analytics active

How much does it download?

Initial transfer happens before the page settles. Deferred transfer comes after.

OneTrust network use during the first load, Mobile (emulated), Nuxt
MeasureWith OneTrustDifference
Initial transferBytes before the page settles764 KB+211 KB95% interval: 211 KB
Deferred transferBytes loaded laterNot compared
RequestsAll requests21+12No interval reported
Third-party requestsRequests to other hosts12+12No interval reported

Does it block the main thread?

Long tasks are stretches over 50 ms when the page cannot respond to taps or keys.

OneTrust long-task time during load, Mobile (emulated), Nuxt
MeasureWith OneTrustDifference
Long-task timeBlocking time during load117 ms+117 msNo interval reported

What do returning visitors see?

A visitor who accepted on an earlier visit comes back. We check that the banner stays hidden.

Banner stayed hidden
Consent state known at

What was tested?

Analysis
matrix-2026-10-11
Issues
None recorded in this run

Questions about OneTrust

Answers use both test profiles.

On desktop, it appeared in a median 629 ms, against 471 ms for the median of the 10 CMPs measured. On an emulated mid-tier phone, it appeared in a median 3.92 s, against 2.71 s for the median of the 10 CMPs measured.