Skip to main content

c15t vs Osano: cookie banner speed and features compared

Results for

On emulated mobile, c15t showed its banner sooner, in a median 240 ms against 2.15 s for Osano. Their delay to the main content was about the same. The 95% intervals overlap. Osano failed 2 of 4 checks: the accept check failed and the reject check failed. c15t failed none. Per vendor docs, only c15t offers self-hosting. Per vendor docs, only Osano offers a Google-certified CMP.

c15tinth

c15t Tested: 3.0.0-alpha.10
All c15t results

OsanoOsano

Osano Tested: Hosted
All Osano results

Which is faster, c15t or Osano?

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

c15t and Osano on the mobile (emulated) profile, Next.js 16
Questionc15tOsanoDifference
Banner appearsTime from navigation until the banner is visible on screen. Lower is better.
240 msFast
2.15 sFast

c15t’s banner appeared 1.91 s sooner.

Page slowed byExtra time before the main content paints (LCP), compared with the same page without a consent manager.
+408 ms95% interval 396 ms to 420 msSmall
+424 ms95% interval 420 ms to 428 msSmall

About the same. The 95% intervals overlap.

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

c15t responded 96 ms sooner. Both are under 200 ms, which feels instant.

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
2 of 4 checks passed2 failed: the accept check failed, the reject check failedLeaked

Osano failed 2 of 4 checks: the accept check failed and the reject check failed. c15t failed none.

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

Osano added 27 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 mobile profile. Both CMPs ran on Next.js 16.

Page vitalsChange against the same page without a consent manager.
Metricc15tOsano
TTFB+15 mspage 21 msNo measurable delaypage 5 ms
FCP+28 mspage 268 msNo measurable delaypage 248 ms
LCP+408 mspage 3.86 s+424 mspage 3.87 s
CLSNo measurable shiftpage 0.00No measurable shiftpage 0.00
Load timesMilliseconds from navigation.
Metricc15tOsano
CMP script requested
CMP script loaded
Consent state known1.98 s
Banner visible240 ms2.15 s
After AcceptMilliseconds from the click.
Metricc15tOsano
Screen responds32 ms128 ms
Banner gone
Consent applied
Analytics active

Which features differ between c15t and Osano?

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 Osano, from vendor docs
Featurec15tOsano
Only c15t · 2
Self-hostableDeveloperPer vendor docs (vendor documentation, opens in a new tab)Hosted script (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 Osano · 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
Headless UIDeveloperPer vendor docs (vendor documentation, opens in a new tab)Unknown
Same on both · 12
Features with the same status for c15t and Osano
Featurec15tOsano
IAB TCFStandardsPer vendor docs (vendor documentation, opens in a new tab)TCF v2 (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)Paid plans (vendor documentation, opens in a new tab)
Consent recordsComplianceWith a backend (vendor documentation, opens in a new tab)Paid plans (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)
Open sourceDeveloperApache-2.0 (vendor documentation, opens in a new tab)Older library only (vendor documentation, opens in a new tab)
TypeScript typesDeveloperPer vendor docs (vendor documentation, opens in a new tab)React Native SDK only (vendor documentation, opens in a new tab)
Free tierPricingOpen source; hosted free plan (vendor documentation, opens in a new tab)About 5,000 pageviews a month (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 Osano?

We built these lists from the measured and documented differences above. Neither list is a recommendation.

Choose c15t if

  • You want self-hosting
  • You want a first-party SDK for React, Next.js, Vue, Nuxt, Svelte, SvelteKit, Astro and TanStack Start
  • A fast banner matters to you: c15t’s banner appeared 1.91 s sooner
  • You want the one that failed fewer tracker-blocking checks in this run

Choose Osano if

  • You need a Google-certified CMP
  • Page weight matters to you: Osano added 27 KB less to the first load

What was tested?

Deployment
Both ran as hosted services. c15t ran against the hosted inth backend, not a local mock. Osano 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 Osano

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

On the emulated mobile profile, c15t’s banner appeared in a median 240 ms and Osano’s in 2.15 s. Their delay to the main content was about the same. The 95% intervals overlap.