# c15t vs Ketch: cookie banner speed and features

On desktop, c15t showed its banner sooner, in a median 60 ms against 1.68 s for Ketch. Ketch delayed the main content 16 ms less. Both held trackers back in every check. Per vendor docs, only c15t offers self-hosting. Per vendor docs, only Ketch offers a Google-certified CMP.

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 | Ketch | Difference |
| --- | --- | --- | --- |
| How fast does the banner appear? | 60 ms | 1.68 s | c15t’s banner appeared 1.62 s sooner. |
| Does it slow the page down? | +16 ms (95% interval 8 ms to 40 ms) | 0 ms | Ketch delayed the main content 16 ms less. |
| How fast does a click respond? | 16 ms | 40 ms | c15t responded 24 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) | +532 KB | c15t added 420 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 7.95 s for Ketch. c15t delayed the main content 1.34 s less. Both held trackers back in every check. Per vendor docs, only c15t offers self-hosting. Per vendor docs, only Ketch offers a Google-certified CMP.

| Question | c15t | Ketch | Difference |
| --- | --- | --- | --- |
| How fast does the banner appear? | 240 ms | 7.95 s | c15t’s banner appeared 7.71 s sooner. |
| Does it slow the page down? | +408 ms (95% interval 396 ms to 420 ms) | +1.74 s | c15t delayed the main content 1.34 s less. |
| How fast does a click respond? | 32 ms | 40 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) | +532 KB | c15t added 420 KB less to the first load. |

## Which features differ?

| Feature | c15t | Ketch |
| --- | --- | --- |
| IAB TCF | Per vendor docs | Per vendor docs (TCF v2.2) |
| 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 (Tag orchestration) |
| 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) | Partial (SDKs and samples only) |
| Self-hostable | Per vendor docs | Not supported (Hosted service) |
| Headless UI | Per vendor docs | Per vendor docs |
| TypeScript types | Per vendor docs | Per vendor docs |
| Free tier | Per vendor docs (Open source; hosted free plan) | Per vendor docs (5,000 users) |
| 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

- 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.62 s sooner
- Page weight matters to you: c15t added 420 KB less to the first load

### Choose Ketch if

- You need a Google-certified CMP
- Page load time matters to you: Ketch delayed the main content 16 ms less

## Questions about this pair

### Is Ketch slower than c15t?

On the desktop profile, c15t’s banner appeared in a median 60 ms and Ketch’s in 1.68 s. Ketch delayed the main content 16 ms less.

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

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

### Do c15t and Ketch 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 OneTrust](https://cookiebench.com/compare/c15t-vs-onetrust.md)
- [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)

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".
