Skip to main content

c15t vs OneTrust: cookie banner speed and features compared

Results for

On desktop, c15t showed its banner in a median 65 ms, against 672 ms for OneTrust. c15t added 32 ms before the main content appeared (95% interval 16–48 ms); OneTrust added no measurable delay. OneTrust transferred 211 KB more than a page without a consent manager, c15t 114 KB.

c15tinth

c15t Tested: 3.0.0-alpha.10
All c15t results

OneTrustOneTrust

OneTrust Tested: Hosted
All OneTrust results

Which is faster, c15t or OneTrust?

Shorter bars are better. The exception is tracker blocking, where the bar shows the share of checks passed.

c15t and OneTrust on the desktop profile, Next.js 16
Questionc15tOneTrustDifference
Banner appearsTime from navigation until the banner is visible on screen. Lower is better.
60 msFast
629 msModerate

c15t’s banner appeared 570 ms sooner.

Page slowed byExtra time before the main content paints (LCP), compared with the same page without a consent manager.
+16 ms95% interval 8 ms to 40 msSmall
No measurable delay95% interval −20 ms to 20 msNone

About the same. They are less than 16 ms apart.

Click responds inTime from pressing Accept until the screen updates. Under 200 ms feels instant.
16 msOne visit measuredFast
24 msOne visit measuredFast

About the same. They are less than 16 ms apart.

Blocks trackersChecks that no tracker runs, the page sets no cookie and no data leaves the page before the visitor chooses.
4 of 4 checks passedBlocked
4 of 4 checks passedBlocked

Both held trackers back in every check.

Adds to pageExtra data transferred during the first load, compared with the same page without a consent manager.
+112 KB95% interval: 112 KBModerate
+211 KB95% interval: 211 KBModerate

c15t added 99 KB less to the first load.

“About the same” means that the two results fall within each other’s spread. We measure both against the same page without a consent manager. We do not publish a direct head-to-head interval yet.

Page vitals and load times

Lab detail for engineers. All values are medians on the desktop profile. Both CMPs ran on Next.js 16.

Page vitalsChange against the same page without a consent manager.
Metricc15tOneTrust
TTFB+17 mspage 22 msNo measurable delaypage 6 ms
FCP+28 mspage 92 msNo measurable delaypage 60 ms
LCP+16 mspage 148 msNo measurable delaypage 124 ms
CLSNo measurable shiftpage 0.00No measurable shiftpage 0.00
Load timesMilliseconds from navigation.
Metricc15tOneTrust
CMP script requested
CMP script loaded
Consent state known166 ms
Banner visible60 ms629 ms
After AcceptMilliseconds from the click.
Metricc15tOneTrust
Screen responds16 ms24 ms
Banner gone
Consent applied
Analytics active

Which features differ between c15t and OneTrust?

Statuses come from each vendor’s documentation. Each status links to its source.

  • Verified by test
  • Per vendor docs
  • Partial
  • Not supported
  • Unknown
Features that differ between c15t and OneTrust, from vendor docs
Featurec15tOneTrust
Only c15t · 3
Open sourceDeveloperApache-2.0 (vendor documentation, opens in a new tab)Proprietary (vendor documentation, opens in a new tab)
Free tierPricingOpen source; hosted free plan (vendor documentation, opens in a new tab)Quote-based pricing (vendor documentation, opens in a new tab)
First-party SDKsFrameworksReact, Next.js, Vue, Nuxt, Svelte, SvelteKit, Astro, TanStack Start (vendor documentation, opens in a new tab)Script tag only (vendor documentation, opens in a new tab)
Only OneTrust · 1
Google-certified CMPStandardsNot on Google’s list (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Not confirmed for one side · 1
TypeScript typesDeveloperPer vendor docs (vendor documentation, opens in a new tab)Unknown
Same on both · 11
Features with the same status for c15t and OneTrust
Featurec15tOneTrust
IAB TCFStandardsPer vendor docs (vendor documentation, opens in a new tab)TCF v2.2 and v2.3 (vendor documentation, opens in a new tab)
IAB GPPStandardsGPP 1.1 (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Google Consent Mode v2StandardsPer vendor docs (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Global Privacy ControlStandardsPer vendor docs (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Geo-targeted bannersCompliancePer vendor docs (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Script blockingCompliancePer vendor docs (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Consent recordsComplianceWith a backend (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Cookie scanningComplianceVia Inth Website Audit (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Self-hostableDeveloperPer vendor docs (vendor documentation, opens in a new tab)Script only; hosted backend (vendor documentation, opens in a new tab)
Headless UIDeveloperPer vendor docs (vendor documentation, opens in a new tab)Mobile and CTV only (vendor documentation, opens in a new tab)
Script tagFrameworksPer vendor docs (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)

Should you choose c15t or OneTrust?

The CookieBench maintainers wrote these lists from the results and features above.

Choose c15t if

  • Banner speed matters on content pages

Choose OneTrust if

  • Your privacy team already runs other OneTrust modules

What was tested?

Deployment
Both ran as hosted services. c15t ran against the hosted inth backend, not a local mock. OneTrust ran from its vendor-hosted service. Network distance to each vendor is part of the result.

How we test: methodology cookiebench-v3.2.4

Questions about c15t and OneTrust

Answers come from the benchmark run and from each vendor’s documentation.

On the desktop profile, c15t’s banner appeared in a median 60 ms and OneTrust’s in 629 ms. Their delay to the main content was about the same. They are less than 16 ms apart.