Skip to main content

Osano vs OneTrust: cookie banner speed and features compared

Results for

On desktop, Osano and OneTrust showed their banners in about the same time. The medians were 644 ms for Osano and 629 ms for OneTrust. Neither added a measurable delay. Both held trackers back in every check. Per vendor docs, only Osano offers open-source code and a free tier. Per vendor docs, only OneTrust offers self-hosting.

OsanoOsano

Osano Tested: Hosted
All Osano results

OneTrustOneTrust

OneTrust Tested: Hosted
All OneTrust results

Which is faster, Osano or OneTrust?

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

Osano and OneTrust on the desktop profile, Next.js 16
QuestionOsanoOneTrustDifference
Banner appearsTime from navigation until the banner is visible on screen. Lower is better.
644 msModerate
629 msModerate

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

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

Neither added a measurable delay.

Click responds inTime from pressing Accept until the screen updates. Under 200 ms feels instant.
32 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.
+87 KB95% interval 85 KB to 87 KBLight
+211 KB95% interval: 211 KBModerate

Osano added 124 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.
MetricOsanoOneTrust
TTFBNo measurable delaypage 6 msNo measurable delaypage 6 ms
FCPNo measurable delaypage 68 msNo measurable delaypage 60 ms
LCPNo measurable delaypage 120 msNo measurable delaypage 124 ms
CLSNo measurable shiftpage 0.00No measurable shiftpage 0.00
Load timesMilliseconds from navigation.
MetricOsanoOneTrust
CMP script requested
CMP script loaded
Consent state known
Banner visible644 ms629 ms
After AcceptMilliseconds from the click.
MetricOsanoOneTrust
Screen responds32 ms24 ms
Banner gone
Consent applied
Analytics active

Which features differ between Osano 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 Osano and OneTrust, from vendor docs
FeatureOsanoOneTrust
Only Osano · 2
Open sourceDeveloperOlder library only (vendor documentation, opens in a new tab)Proprietary (vendor documentation, opens in a new tab)
Free tierPricingAbout 5,000 pageviews a month (vendor documentation, opens in a new tab)Quote-based pricing (vendor documentation, opens in a new tab)
Only OneTrust · 1
Self-hostableDeveloperHosted script (vendor documentation, opens in a new tab)Script only; hosted backend (vendor documentation, opens in a new tab)
Not confirmed for one side · 2
Headless UIDeveloperUnknownMobile and CTV only (vendor documentation, opens in a new tab)
TypeScript typesDeveloperReact Native SDK only (vendor documentation, opens in a new tab)Unknown
Same on both · 11
Features with the same status for Osano and OneTrust
FeatureOsanoOneTrust
IAB TCFStandardsTCF v2 (vendor documentation, opens in a new tab)TCF v2.2 and v2.3 (vendor documentation, opens in a new tab)
IAB GPPStandardsPer vendor docs (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)
Google-certified CMPStandardsPer 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 blockingCompliancePaid plans (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Consent recordsCompliancePaid plans (vendor documentation, opens in a new tab)Per vendor docs (vendor documentation, opens in a new tab)
Cookie scanningCompliancePer vendor docs (vendor documentation, opens in a new tab)Per vendor docs (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)
First-party SDKsReact, Next.js, Vue, Nuxt, Svelte, SvelteKit, Astro, TanStack StartScript tag only (vendor documentation, opens in a new tab)Script tag only (vendor documentation, opens in a new tab)

Should you choose Osano or OneTrust?

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

Choose Osano if

  • You want open-source code and a free tier
  • Page weight matters to you: Osano added 124 KB less to the first load

Choose OneTrust if

  • You want self-hosting

What was tested?

Deployment
Both ran from their vendor-hosted services. Network distance to each vendor is part of the result.

How we test: methodology cookiebench-v3.2.4

Questions about Osano and OneTrust

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

Not in a way this run can separate. Their banner times were about the same. They are less than 16 ms apart. Neither added a measurable delay.