Skip to main content

How fast is your cookie banner on Astro?

Only c15t, Cookie Control, Didomi, Enzuzo, iubenda, Ketch, OneTrust, Osano, Usercentrics and CookieYes ran on Astro. 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 Astro, 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.85 sBaseline–
c15t251 msNeeds improvement: 3.18 s+328 ms vs no CMP+0 msvs no CMPGood: 32 ms
CookieYes1.07 sNeeds improvement: 3.04 s+180 ms vs no CMP+0 msvs no CMPGood: 16 msIAB GPP: Unknown
Osano1.79 sNeeds improvement: 3.28 s+428 ms vs no CMP+145 msvs no CMPGood: 120 ms
Cookie Control1.94 sNeeds improvement: 3.35 s+496 ms vs no CMP+164 msvs no CMPGood: 24 msIAB GPP: Unknown
iubenda2.31 sNeeds improvement: 3.47 s+616 ms vs no CMP+54 msvs no CMPGood: 24 ms
Enzuzo2.31 sNeeds improvement: 3.62 s+772 ms vs no CMP+205 msvs no CMPGood: 64 msIAB GPP: Unknown
OneTrust3.70 sNeeds improvement: 3.72 s+860 ms vs no CMP+115 msvs no CMPGood: 16 ms
Didomi3.74 sPoor: 4.13 s+1.28 s vs no CMP+290 msvs no CMPGood: Under 16 ms
Usercentrics3.75 sNeeds improvement: 3.78 s+928 ms vs no CMP+87 msvs no CMPGood: Under 16 ms
Ketch7.67 sPoor: 4.80 s+1.95 s vs no CMP+989 msvs no CMPGood: 40 ms
GoodNeeds improvementPoor
  • c15t
    Banner appears
    251 ms
    LCP
    Needs improvement: 3.18 s+328 ms vs no CMP
    TBT
    +0 msvs no CMP
    INP
    Good: 32 ms
  • CookieYes
    Banner appears
    1.07 s
    LCP
    Needs improvement: 3.04 s+180 ms vs no CMP
    TBT
    +0 msvs no CMP
    INP
    Good: 16 ms
    • IAB GPP: Unknown
  • Osano
    Banner appears
    1.79 s
    LCP
    Needs improvement: 3.28 s+428 ms vs no CMP
    TBT
    +145 msvs no CMP
    INP
    Good: 120 ms
  • Cookie Control
    Banner appears
    1.94 s
    LCP
    Needs improvement: 3.35 s+496 ms vs no CMP
    TBT
    +164 msvs no CMP
    INP
    Good: 24 ms
    • IAB GPP: Unknown
  • iubenda
    Banner appears
    2.31 s
    LCP
    Needs improvement: 3.47 s+616 ms vs no CMP
    TBT
    +54 msvs no CMP
    INP
    Good: 24 ms
  • Enzuzo
    Banner appears
    2.31 s
    LCP
    Needs improvement: 3.62 s+772 ms vs no CMP
    TBT
    +205 msvs no CMP
    INP
    Good: 64 ms
    • IAB GPP: Unknown
  • OneTrust
    Banner appears
    3.70 s
    LCP
    Needs improvement: 3.72 s+860 ms vs no CMP
    TBT
    +115 msvs no CMP
    INP
    Good: 16 ms
  • Didomi
    Banner appears
    3.74 s
    LCP
    Poor: 4.13 s+1.28 s vs no CMP
    TBT
    +290 msvs no CMP
    INP
    Good: Under 16 ms
  • Usercentrics
    Banner appears
    3.75 s
    LCP
    Needs improvement: 3.78 s+928 ms vs no CMP
    TBT
    +87 msvs no CMP
    INP
    Good: Under 16 ms
  • Ketch
    Banner appears
    7.67 s
    LCP
    Poor: 4.80 s+1.95 s vs no CMP
    TBT
    +989 msvs no CMP
    INP
    Good: 40 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.