Skip to main content

How fast is your cookie banner on Script tag?

Only c15t, Cookie Control, Didomi, Enzuzo, iubenda, Ketch, OneTrust, Osano, Usercentrics and CookieYes ran on Script tag. See every CMP on Next.js

Framework
Sort by
Every metric

Sorted by “How fast does the banner appear?”, lowest first.

Cookie consent managers on Script tag, mobile profile, sorted by “How fast does the banner appear?”, lowest first.
Page performance · lab, mobileGoodNeeds improvementPoorStandards
Consent managerTCFGPPCMv2GPC
No consent managerThe same test page, for referenceNo bannerNeeds improvement: 2.88 sBaseline–
CookieYes1.08 sNeeds improvement: 3.06 s+184 ms vs no CMP+0 msvs no CMPGood: 24 msIAB GPP: Unknown
c15t1.55 sNeeds improvement: 3.31 s+432 ms vs no CMP+3 msvs no CMPGood: 32 ms
Osano1.76 sNeeds improvement: 3.30 s+432 ms vs no CMP+147 msvs no CMPGood: 120 ms
Cookie Control1.94 sNeeds improvement: 3.37 s+492 ms vs no CMP+163 msvs no CMPGood: 24 msIAB GPP: Unknown
iubenda2.24 sNeeds improvement: 3.49 s+612 ms vs no CMP+51 msvs no CMPGood: 32 ms
Enzuzo2.32 sNeeds improvement: 3.65 s+772 ms vs no CMP+200 msvs no CMPGood: 48 msIAB GPP: Unknown
OneTrust3.68 sNeeds improvement: 3.69 s+812 ms vs no CMP+114 msvs no CMPGood: 16 ms
Usercentrics3.71 sNeeds improvement: 3.74 s+856 ms vs no CMP+83 msvs no CMPGood: Under 16 ms
Didomi3.74 sPoor: 4.16 s+1.28 s vs no CMP+290 msvs no CMPGood: 16 ms
Ketch7.52 sPoor: 4.77 s+1.90 s vs no CMP+976 msvs no CMPGood: 32 ms
GoodNeeds improvementPoor
  • CookieYes
    Banner appears
    1.08 s
    LCP
    Needs improvement: 3.06 s+184 ms vs no CMP
    TBT
    +0 msvs no CMP
    INP
    Good: 24 ms
    • IAB GPP: Unknown
  • c15t
    Banner appears
    1.55 s
    LCP
    Needs improvement: 3.31 s+432 ms vs no CMP
    TBT
    +3 msvs no CMP
    INP
    Good: 32 ms
  • Osano
    Banner appears
    1.76 s
    LCP
    Needs improvement: 3.30 s+432 ms vs no CMP
    TBT
    +147 msvs no CMP
    INP
    Good: 120 ms
  • Cookie Control
    Banner appears
    1.94 s
    LCP
    Needs improvement: 3.37 s+492 ms vs no CMP
    TBT
    +163 msvs no CMP
    INP
    Good: 24 ms
    • IAB GPP: Unknown
  • iubenda
    Banner appears
    2.24 s
    LCP
    Needs improvement: 3.49 s+612 ms vs no CMP
    TBT
    +51 msvs no CMP
    INP
    Good: 32 ms
  • Enzuzo
    Banner appears
    2.32 s
    LCP
    Needs improvement: 3.65 s+772 ms vs no CMP
    TBT
    +200 msvs no CMP
    INP
    Good: 48 ms
    • IAB GPP: Unknown
  • OneTrust
    Banner appears
    3.68 s
    LCP
    Needs improvement: 3.69 s+812 ms vs no CMP
    TBT
    +114 msvs no CMP
    INP
    Good: 16 ms
  • Usercentrics
    Banner appears
    3.71 s
    LCP
    Needs improvement: 3.74 s+856 ms vs no CMP
    TBT
    +83 msvs no CMP
    INP
    Good: Under 16 ms
  • Didomi
    Banner appears
    3.74 s
    LCP
    Poor: 4.16 s+1.28 s vs no CMP
    TBT
    +290 msvs no CMP
    INP
    Good: 16 ms
  • Ketch
    Banner appears
    7.52 s
    LCP
    Poor: 4.77 s+1.90 s vs no CMP
    TBT
    +976 msvs no CMP
    INP
    Good: 32 ms

Every CMP listed passed the consent checks we could run: nothing tracked before a choice, and Reject held after a reload. Feature support comes from vendor documentation. Standards: TCF = IAB TCF · GPP = IAB GPP · CMv2 = Google Consent Mode v2 · GPC = Global Privacy Control.

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

What did the latest run find?

On emulated mobile, c15t showed its banner fastest, in a median 240 ms. Ketch was slowest, at 7.95 s. Every CMP delayed the main content, from 176 ms (CookieYes) to 1.74 s (Ketch). On desktop, the differences are smaller. Banners appeared in 60 ms to 1.68 s. Seven of ten CMPs caused no visible page delay.

What do these numbers mean?

How fast does the banner appear?
From the moment the page starts to load until the banner is on screen. A visitor cannot accept or reject until then.
LCP: Largest contentful paint
When the biggest element on screen painted. We also show how much later it painted than on the same page without a consent manager. Google rates LCP good up to 2.5 s and poor above 4 s. A change under 16 ms is shorter than one screen refresh.
TBT: Total blocking time
How much longer the browser was too busy to respond while the page loaded. We compare it with the same page without a consent manager. Lighthouse weighs it heavily. It is also the lab measure most tied to a slow INP. Google publishes no rating band for it.
INP: Interaction to next paint, measured on the Accept click
How long the screen takes to respond after a visitor clicks Accept. Google rates INP good up to 200 ms and poor above 500 ms. We time one click in the lab. Field INP covers a whole visit.

How to read the table

No measurable delay
We load each page twice in pairs, once with the consent manager and once without. When the 95% interval of the difference includes zero, the delay is too small to tell apart from normal variation. In that case, we print “No measurable delay” instead of a number.
95% interval
The range the true difference most likely falls in, from a bootstrap over the paired visits. A narrow range means the result is stable. A wide range means visits varied.
Ties
When two results are within each other’s spread, the order between them is noise. The table brackets them and lists them by name, not by rank.

Read the methodology for the test pages, profiles, thresholds and known limits.

Questions about these results

Is a consent manager missing? Tell us which one to test next.

It depends on what you measure. On an emulated mid-tier phone, c15t showed its banner first (median 240 ms). Osano (2.15 s) and CookieYes (2.42 s) came next. The CMP that delayed the page least was CookieYes (176 ms). On desktop, c15t showed its banner first, in 60 ms.