TRACIO is designed with privacy as a core architectural principle. The system identifies devices without collecting any personally identifiable information (PII). TRACIO is a managed cloud service: it processes data on your behalf in your chosen region (EU or US), and you remain the data controller.
TRACIO collects only technical browser signals. None of the 300+ signals contain personally identifiable information:
| What We Collect | What We Do NOT Collect |
|---|---|
| Canvas rendering hash | Names, emails, addresses |
| WebGL GPU parameters | Phone numbers |
| Audio processing characteristics | Social security numbers |
| Font availability | Credit card numbers |
| Screen resolution | Passwords |
| Browser version | Form input values |
| Timezone | Browsing history |
| Language preferences | Keystrokes |
The visitor identifier (visitorId) is a one-way hash derived from device characteristics. It cannot be reversed to recover the original signal values.
TRACIO operates entirely as a first-party service:
_vid_t cookie is a first-party cookie (SameSite=Lax, Secure on HTTPS)You are the data controller; TRACIO is the data processor acting on your instructions. Data is processed in the region you select (EU or US) and is not replicated across regions. Retention is set by your plan; access is controlled through the dashboard (workspace roles).
Under GDPR, you need a legal basis to process personal data. Device fingerprinting may be considered personal data processing depending on your jurisdiction and use case. Common legal bases include:
| Legal Basis | Use Case | Notes |
|---|---|---|
| Legitimate Interest (Art. 6(1)(f)) | Fraud prevention, bot detection, account security | Most common basis. Requires documented interest assessment. |
| Consent (Art. 6(1)(a)) | General visitor tracking, analytics | Requires explicit opt-in via cookie banner. |
| Contract Performance (Art. 6(1)(b)) | Essential service functionality | When identification is necessary to deliver the service. |
TRACIO sets one first-party cookie (_vid_t) with a 365-day expiry. Under the ePrivacy Directive and GDPR:
tracio.getResult().import { Tracio } from "@tracio/sdk"
// Only initialize TRACIO after consent is grantedif (hasConsent("fingerprinting")) { const tracio = Tracio.init({ publicKey: "5ca175fc..." }) const result = await tracio.getResult()}You can defer identification until the user opts in. Signal collection still works afterward; confidence is lower for returning visitors when no cookie-based shortcut is available:
import { Tracio } from "@tracio/sdk"
const tracio = Tracio.init({ publicKey: "5ca175fc..." })// call getResult() only after consent is grantedYou are the data controller, so you handle data-subject requests. TRACIO gives you the tools to fulfil them:
| Right | Implementation |
|---|---|
| Right of Access (Art. 15) | Look up a visitor's history in the dashboard |
| Right to Erasure (Art. 17) | Delete a visitor's records from the dashboard (or via a support request) |
| Right to Rectification (Art. 16) | Update stored visitor metadata |
| Right to Data Portability (Art. 20) | Export visitor data in machine-readable format (JSON) |
| Right to Restriction (Art. 18) | Suppress further processing for a visitor |
Find a visitor's history in the dashboard (Visitors), or read it programmatically through the Server API with your secret key:
curl https://api.tracio.ai/v1/visitors/X7fh2Hg9LkMn3pQr5tBvQw3xZa9mK2pL4nR8dT6y \ -H "Authorization: Bearer tracio_sk_XXXX...XXXX"To assemble a full export for a data-subject request, follow up with
/v1/visitors/{visitorId}/sessions and page through the results.
TRACIO processes data in your chosen region (EU or US) as your processor. A DPA is available on request; contact us to put one in place before processing at scale.
Retention is fixed by your plan tier: 7 days (Free), 30 days (Pro), 90 days (Business), 365 days (Enterprise). Records older than the plan's window are purged automatically. To extend retention, move to a higher plan.
| Data Type | Recommended Retention | Rationale |
|---|---|---|
| Visitor records | Up to your plan limit | Returning visitors need history for confident matching. |
| Event details | 30–90 days | Sufficient for fraud investigation and dispute resolution. |
_vid_t cookie holds an opaque, non-reversible UID (no PII)_vid_t cookie uses SameSite=Lax and Secure (on HTTPS)tracio_sk_…), which must never be shipped to the browserFor data-residency requirements, choose your region at signup:
| Region | Data Stays In |
|---|---|
| EU | European Union |
| US | United States |
Set the SDK region option ("eu" or "us") so the browser talks to the
matching regional endpoint. Data is processed within your chosen region and is
not replicated across regions.
region option