# c15t vs OneTrust: cookie banner speed and features

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.

We measured both in the same run, in a Next.js app. We measured each against the same page without a consent manager. They also share Script tag, React, Nuxt, Astro, TanStack Start integrations.

## Which is faster on desktop?

Desktop profile: 1365 × 768 · No CPU slowdown · 12.5 MB/s, no added latency.

| Question | c15t | OneTrust | Difference |
| --- | --- | --- | --- |
| How fast does the banner appear? | 60 ms | 629 ms | c15t’s banner appeared 570 ms sooner. |
| Does it slow the page down? | +16 ms (95% interval 8 ms to 40 ms) | No measurable change | About the same. They are less than 16 ms apart. |
| How fast does a click respond? | 16 ms | 24 ms | About the same. They are less than 16 ms apart. |
| Does it block trackers until consent? | 4 of 4 checks passed | 4 of 4 checks passed | Both held trackers back in every check. |
| How much does it add to the page? | +112 KB (95% interval: 112 KB) | +211 KB (95% interval: 211 KB) | c15t added 99 KB less to the first load. |

## Which is faster on mobile?

Mobile (emulated) profile: 390 × 844, DPR 3 · Mid-tier phone CPU (4× slowdown) · 200 KB/s, 150 ms latency.

On emulated mobile, c15t showed its banner sooner, in a median 240 ms against 3.92 s for OneTrust. c15t delayed the main content 68 ms less. Both held trackers back in every check. Per vendor docs, only c15t offers open-source code and a free tier. Per vendor docs, only OneTrust offers a Google-certified CMP.

| Question | c15t | OneTrust | Difference |
| --- | --- | --- | --- |
| How fast does the banner appear? | 240 ms | 3.92 s | c15t’s banner appeared 3.67 s sooner. |
| Does it slow the page down? | +408 ms (95% interval 396 ms to 420 ms) | +476 ms (95% interval 444 ms to 508 ms) | c15t delayed the main content 68 ms less. |
| How fast does a click respond? | 32 ms | 16 ms | OneTrust responded 16 ms sooner. Both are under 200 ms, which feels instant. |
| Does it block trackers until consent? | 4 of 4 checks passed | 4 of 4 checks passed | Both held trackers back in every check. |
| How much does it add to the page? | +112 KB (95% interval: 112 KB) | +211 KB (95% interval: 211 KB) | c15t added 99 KB less to the first load. |

## Which features differ?

| Feature | c15t | OneTrust |
| --- | --- | --- |
| IAB TCF | Per vendor docs | Per vendor docs (TCF v2.2 and v2.3) |
| IAB GPP | Per vendor docs (GPP 1.1) | Per vendor docs |
| Google Consent Mode v2 | Per vendor docs | Per vendor docs |
| Google-certified CMP | Not supported (Not on Google’s list) | Per vendor docs |
| Global Privacy Control | Per vendor docs | Per vendor docs |
| Geo-targeted banners | Per vendor docs | Per vendor docs |
| Script blocking | Per vendor docs | Per vendor docs |
| Consent records | Per vendor docs (With a backend) | Per vendor docs |
| Cookie scanning | Per vendor docs (Via Inth Website Audit) | Per vendor docs |
| Open source | Per vendor docs (Apache-2.0) | Not supported (Proprietary) |
| Self-hostable | Per vendor docs | Partial (Script only; hosted backend) |
| Headless UI | Per vendor docs | Partial (Mobile and CTV only) |
| TypeScript types | Per vendor docs | Unknown |
| Free tier | Per vendor docs (Open source; hosted free plan) | Not supported (Quote-based pricing) |
| Script tag | Per vendor docs | Per vendor docs |
| React SDK | Per vendor docs (First-party SDK) | Not supported (Script tag only) |
| Next.js SDK | Per vendor docs (First-party SDK) | Not supported (Script tag only) |
| Vue SDK | Per vendor docs (First-party SDK) | Not supported (Script tag only) |
| Nuxt SDK | Per vendor docs (First-party SDK) | Not supported (Script tag only) |
| Svelte SDK | Per vendor docs (First-party SDK) | Not supported (Script tag only) |
| SvelteKit SDK | Per vendor docs (First-party SDK) | Not supported (Script tag only) |
| Astro SDK | Per vendor docs (First-party SDK) | Not supported (Script tag only) |
| TanStack Start SDK | Per vendor docs (First-party SDK) | Not supported (Script tag only) |

## Which should you choose?

### Choose c15t if

- Banner speed matters on content pages

### Choose OneTrust if

- Your privacy team already runs other OneTrust modules

## Questions about this pair

### Is OneTrust slower than c15t?

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.

### Does c15t support Google-certified CMP like OneTrust?

No, per vendor docs. OneTrust documents Google-certified CMP support. c15t does not.

### Do c15t and OneTrust block trackers before consent?

Both held trackers back in every check. Each check loads the page. Then it looks for trackers that ran, cookies that the page set or data that left the page before the visitor chose.

## Related comparisons

- [c15t vs CookieYes](https://cookiebench.com/compare/c15t-vs-cookieyes.md)
- [c15t vs Usercentrics](https://cookiebench.com/compare/c15t-vs-usercentrics.md)
- [c15t vs Didomi](https://cookiebench.com/compare/c15t-vs-didomi.md)
- [c15t vs Osano](https://cookiebench.com/compare/c15t-vs-osano.md)
- [c15t vs iubenda](https://cookiebench.com/compare/c15t-vs-iubenda.md)
- [c15t vs Ketch](https://cookiebench.com/compare/c15t-vs-ketch.md)

Methodology [cookiebench-v3.2.4](https://cookiebench.com/methodology). inth, the team behind c15t, maintains CookieBench. c15t is one of the consent managers we measure ([disclosure](https://cookiebench.com/methodology)). Feature support comes from vendor documentation unless a row says "Verified by test".
