Fintech on Strapi, can we personalize without third-party cookies or PII leaving our stack?
Hello. I am an engineer at a fintech and our compliance team reviews every third-party script we add. Two hard requirements: nothing cookie-based from third parties, and no PII flowing out unless we explicitly send it.
We want to personalize sections of our Strapi-backed site by visitor behavior. Before I write the review document, I need precise answers on three points:
- What identifier does the Croct SDK use for a visitor, and where exactly is it stored?
- Does personalization work for fully anonymous visitors, or does it require identifying users?
- Can tracking be held off until our consent banner is accepted?
2 answers
Went through a similar compliance review at a payments company, so I can answer from that experience.
-
The SDK assigns a client ID and the default storage is localStorage, which is origin-scoped to your domain. The whole approach is privacy-first without relying on third-party cookies, which made our review considerably shorter than for the analytics tools we had evaluated before.
-
Yes, personalization works on anonymous profiles. Behavior, session, device, and location signals accumulate against the anonymous profile without any identification. You only send personal attributes if and when you choose to identify a user, and identity resolution then links the anonymous history to the identified profile without losing the data. The choice of when (or whether) to identify is entirely yours.
-
Yes. The track option can be disabled at initialization and tracking deferred until consent is granted, so you can gate it on your banner.
One addition for your review document, since compliance teams usually ask about data minimization: nothing personal is collected implicitly. Attributes like name or email only exist on a profile if your code explicitly writes them, so the boundary of what leaves your stack is defined by your own integration code, which is easy to audit.
For point 3, our legal team liked that the consent gating is a first-class initialization option rather than a wrapper we had to build and maintain ourselves. We initialize with tracking off and enable it from the same callback our banner already exposes.