Skip to main content
c15tinth

c15t cookie banner: speed and features

In our tests with its Script tag integration, c15t showed its cookie banner in a median 1.55 s on an emulated mid-tier phone. It delayed the main content by 432 ms (95% interval 424 ms to 448 ms). Accept responded in 32 ms and Reject in 24 ms. It held trackers back in all 4 consent checks.

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

Version tested
3.0.0-alpha.10
Vendor
inth
Website
c15t.com (opens in a new tab)

Results for

Framework

How fast is c15t’s cookie banner?

On Script tag. We measured other CMPs on Next.js only, so this comparison uses c15t’s other integrations.

How fast does the banner appear?

1.55 s
Fast

Median of 15 visits.

6th fastest of 6 c15t integrations. Field median 250 ms. c15t: 1.55 s.
All 6 integrations, best first
  1. Next.js240 ms
  2. Nuxt240 ms
  3. TanStack Start250 ms
  4. Astro251 ms
  5. React1.46 s
  6. Script tag1.55 s

Does it slow the page down?

+432 ms95% interval 424 ms to 448 ms
Small

Compared with the same page without a consent manager.

4th of 6 c15t integrations, from least to most delay. Field median 424 ms. c15t: 432 ms.
All 6 integrations, best first
  1. Astro328 ms
  2. Next.js408 ms
  3. TanStack Start416 ms
  4. Script tag432 ms
  5. React476 ms
  6. Nuxt512 ms

How fast does a click respond?

32 msOne visit measured
Fast

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

Joint fastest of 6 c15t integrations. Field median 32 ms. c15t: 32 ms.
All 6 integrations, best first
  1. Next.js32 ms
  2. Nuxt32 ms
  3. Astro32 ms
  4. Script tag32 ms
  5. React40 ms
  6. TanStack Start48 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 c15t integrations passed every check. Field median 100%. c15t: 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 c15t support?

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

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

Which frameworks does c15t support?

First-party SDKs
React, Next.js, Vue, Nuxt, Svelte, SvelteKit, Astro and TanStack Start
Script tag
Supported
Measured in this run
Script tag, React, Next.js, Nuxt, Astro and TanStack Start
SDKs not measured yet
Vue, Svelte and SvelteKit

Support per inth’s documentation.

c15t’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.

c15t results by framework on the mobile profile: banner time, page delay, click response and tracker blocking
FrameworkBanner appearsPage slowed byClick responds inTrackers blocked
Script tagShown above
1.55 sFast
+432 ms95% interval 424 ms to 448 msSmall
32 msOne visit measuredFast
4 of 4 passed
React
1.46 sFast
+476 ms95% interval 468 ms to 488 msSmall
40 msOne visit measuredFast
4 of 4 passed
Next.jsShared with every CMP
240 msFast
+408 ms95% interval 396 ms to 420 msSmall
32 msOne visit measuredFast
4 of 4 passed
Nuxt
240 msFast
+512 ms95% interval 504 ms to 524 msNoticeable
32 msOne visit measuredFast
4 of 4 passed
Astro
251 msFast
+328 ms95% interval 324 ms to 332 msSmall
32 msOne visit measuredFast
4 of 4 passed
TanStack Start
250 msFast
+416 ms95% interval 408 ms to 436 msSmall
48 msOne visit measuredFast
4 of 4 passed

When does c15t 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 c15t start loading?

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

c15t load timeline, Mobile (emulated), Script tag: milliseconds from navigation
EventTime from navigation
First byte (TTFB)2 ms
First paint (FCP)228 ms
Consent state known1.52 s
Banner visible1.55 s
Largest paint (LCP)3.31 s
CMP requested
CMP loaded

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.

c15t page vitals, Mobile (emulated), Script tag, with the difference from a page without a consent manager
MeasureWith c15tDifference
TTFBTime to first byte2 msNo measurable difference95% interval −1 ms to 1 ms
FCPFirst Contentful Paint228 msNo measurable difference95% interval −20 ms to 8 ms
LCPLargest Contentful Paint3.31 s+432 ms95% interval 424 ms to 448 ms
CLSCumulative Layout Shift0.00No measurable difference95% interval: 0.00
Primary content paintThe page’s main content, not the banner3.31 s+432 ms95% interval 424 ms to 448 ms

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 32 ms.

c15t after Accept, Mobile (emulated), Script tag: milliseconds from the click
EventTime from the click
Screen responds32 ms
Banner gone
Consent applied
Analytics active

How much does it download?

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

c15t network use during the first load, Mobile (emulated), Script tag
MeasureWith c15tDifference
Initial transferBytes before the page settles583 KB+84 KB95% interval: 84 KB
Deferred transferBytes loaded laterNot compared
RequestsAll requests9+3No interval reported
Third-party requestsRequests to other hosts1+1No interval reported

Does it block the main thread?

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

c15t long-task time during load, Mobile (emulated), Script tag
MeasureWith c15tDifference
Long-task timeBlocking time during load3 ms+3 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 c15t

Answers use both test profiles.

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