Cookie Policy
Last Updated: October 2026
The short version
TapToChat.io sets essential cookies: ones that keep you signed in and secure the sign-in and connect-a-service steps, one that remembers your language, and one that remembers your cookie choices. With your permission, we also measure how our public pages are used, with Google Analytics 4 and Datadog (which set the cookies listed below) and Metricool (which sets none). And, separately, with your permission we use the advertising tags of Google Ads, TikTok, Meta (Facebook and Instagram) and LinkedIn to measure which of our ads bring people to TapToChat. Analytics and marketing are two separate choices; each stays off until you switch it on in the cookie settings, and you can switch either off again at any time. This page lists exactly what each tool does.
Essential cookies
These are needed for the site to work and need no consent. They are set by us, on our own domain, and are never used to track you across other sites.
| Name | Set by | Purpose | Lasts |
|---|---|---|---|
| sb-…-auth-token (may be split into -auth-token.0, .1, …) | TapToChat (Supabase Auth) | Keeps you signed in to the dashboard. Set when you sign in; cleared when you sign out. | Up to 400 days, or until you sign out |
| sb-…-auth-token-code-verifier, sb-…-auth-token-flow-…-code-verifier | TapToChat (Supabase Auth) | Set when you sign up or ask to reset your password, as part of the secure sign-in-link flow of our sign-in provider. A random value; it holds no personal details. | Up to 400 days |
| ttc_oauth_state_… (one per service, plus one per connection attempt) | TapToChat | Set when you connect another service (for example Gmail, Outlook, Slack or Microsoft Teams) from the dashboard, so that we only accept the reply to a connection you started yourself. A random value, deleted once the connection completes. | 10 minutes |
| NEXT_LOCALE | TapToChat | Remembers your language. Set when you pick a language with the language switcher, and also when you open a page in a language other than the one your browser asks for, so the next page stays in that language. | 1 year when you use the language switcher; otherwise until you close your browser |
| ttc_cookie_consent | TapToChat | Records the choices you made in the cookie settings, so we do not ask again on every visit. | 180 days |
Browser storage
Some preferences are kept in your browser's local storage (or, for one item, session storage) rather than in a cookie. Your browser does not send us what this table stores. The one exception is your browser-notifications choice: when you save it in Settings → Notifications, the choice is also sent to us and kept with your account, as its row says. Local storage that analytics uses, and what it is sent with, is listed with analytics below.
| Name | Set by | Purpose | Lasts |
|---|---|---|---|
| theme (localStorage) | TapToChat | Remembers your light or dark theme preference. Not a cookie; never sent to our servers. | Until you clear site data |
| agentStatus (localStorage) | TapToChat | Dashboard only: remembers the availability you last chose (online, away or offline). | Until you clear site data |
| notificationsEnabled (localStorage) | TapToChat | Dashboard only: remembers whether you turned on browser notifications for new messages. When you save Settings → Notifications, the same choice is also stored with your account on our servers, and this copy is updated to match. | Until you clear site data |
| onboarding_completed (localStorage) | TapToChat | Dashboard only: remembers that you finished or skipped the welcome guide, so it is not shown again. | Until you clear site data |
| ttc:stale-deployment-reload (sessionStorage) | TapToChat | The time we last reloaded the page because a newer version of the site was released, so that it is not reloaded again straight away. | Until you close the tab |
Website visit analytics
When you accept analytics, our public pages (not the dashboard, and never the chat widget on other websites) load Metricool's tracker. For each page you view it sends Metricool the page address, your screen size and the page that referred you, and Metricool works out an approximate location from the connection. It sets no cookies and stores nothing in your browser. If you withdraw consent, nothing more is sent from that point on.
Analytics cookies
Google Analytics 4 and Datadog load only after you accept analytics, and you can withdraw that at any time from the cookie settings; nothing more is sent from then on. Mixpanel is supported but not switched on; it is listed so that, if it ever is, this page is already right. This is what each sets:
| Name | Set by | Purpose | Lasts |
|---|---|---|---|
| _ga, _ga_… | Google Analytics 4 | Distinguishes visitors and sessions so we can see which pages are used and how. | Up to 2 years |
| mp_…_mixpanel (localStorage) | Mixpanel | Product analytics: which features are used, in what order. | Until you clear site data |
| _dd_s | Datadog | Ties the pages of one visit together so we can measure load times, errors and slow interactions. For one visit in five it also records a replay of the screen with all text masked. | 15 minutes after your last activity, at most 4 hours |
Campaign attribution
How you found us, kept by TapToChat itself so that a signup or a guide request can be credited to the campaign that brought you. Nothing here is set without your consent; each row says which choice covers it.
| Name | Set by | Purpose | Lasts |
|---|---|---|---|
| ttc_attribution (localStorage) | TapToChat | Remembers how you first found us (the campaign tags on the link you arrived by, the page you landed on and the site that referred you), so that if you sign up or request a guide on a later visit we can tell which campaign worked. Kept if you accept analytics or marketing; the ad click identifiers on that link (gclid, gbraid, wbraid, ttclid, fbclid, li_fat_id) are kept only if you accept marketing. Sent to us only with those forms. Deleted when you withdraw consent. | 90 days |
| ttc_signup_conversion | TapToChat | Set once, when you confirm the email address of a new account, and only if you have accepted analytics or marketing. It lets the confirmation page count the signup once: in our analytics if you accepted analytics, and as a sign-up conversion for the advertising tags below if you accepted marketing. It holds a random code, not your details, and is never sent to anyone else. | 10 minutes |
Advertising (marketing) cookies
We advertise TapToChat on Google, TikTok, Facebook, Instagram and LinkedIn. To learn which ads work, we use each platform's tag: Google Ads (through Google's gtag), the TikTok Pixel, the Meta Pixel (one pixel covers Facebook and Instagram) and the LinkedIn Insight Tag. None of them loads until you accept marketing in the cookie settings, and saying yes to analytics does not switch them on. They run only on our sign-up, email-confirmation and guide pages, so a sign-up or guide request can be counted. They never run in the dashboard, on pages whose address carries a sign-in or confirmation link's token, or in the chat widget on other websites.
When they run, each tag tells its platform that you visited our sign-up, email-confirmation or guide pages and, when it happens, that you signed up or requested a guide, along with the technical details any web request carries (your IP address and browser). The platform can match that to the ad you saw or clicked, report the result to us in aggregate, and, for Google, Meta, TikTok and LinkedIn alike, use it to show you our ads elsewhere. The tags never send your name or email address. Each platform handles this data under its own privacy policy, and Google, Meta, TikTok and LinkedIn may transfer it outside your country.
These are the cookies the tags set on our own domain:
| Name | Set by | Purpose | Lasts |
|---|---|---|---|
| _gcl_au, _gcl_aw, and other _gcl_… cookies | Google Ads | Lets Google Ads tell that a visit came from one of our ads (it stores the ad-click identifier when there is one) and count a signup or enquiry as a conversion of that ad. | 90 days |
| _ttp, _tt_enable_cookie, ttclid, ttcsid, ttcsid_… | TikTok Pixel | Identifies your browser to TikTok, and stores the ad-click identifier when you arrive from a TikTok ad, so TikTok can attribute a signup or enquiry to that ad and measure our TikTok campaigns. | _ttp and _tt_enable_cookie up to 13 months; ttclid 1 day; ttcsid cookies about 30 minutes after your last activity |
| _fbp, _fbc | Meta Pixel (Facebook and Instagram) | Identifies your browser to Meta, and stores the ad-click identifier when you arrive from a Facebook or Instagram ad, so Meta can attribute a signup or enquiry to that ad. | 90 days |
| li_fat_id, li_giant | LinkedIn Insight Tag | Store a LinkedIn identifier when you arrive from a LinkedIn ad, so LinkedIn can attribute a signup or enquiry to that ad and report campaign results to us. | li_fat_id 30 days; li_giant 7 days |
The platforms may also read or set cookies on their own domains, which we cannot see or remove, for example IDE on doubleclick.net (Google, up to 13 months), fr on facebook.com (Meta, 90 days), bcookie, lidc and UserMatchHistory on linkedin.com (LinkedIn, from 1 day to 1 year), and TikTok's cookies on tiktok.com. If you withdraw consent, the tags stop sending from that moment, the cookies listed above are deleted, and the tags do not load on later visits.
Payments
Checkout and billing happen on pages hosted by Stripe, which sets its own cookies there under Stripe's privacy policy. We do not load Stripe scripts on our own pages.
The chat widget on our customers' sites
If you talk to a business through a TapToChat widget on their website (or to us, through the same widget on our own public pages), the widget keeps these values in the local storage of its chat window, which is served by TapToChat, so the conversation can continue if you reload:
| Name | Set by | Purpose | Lasts |
|---|---|---|---|
| ttc_visitor_id (localStorage) | TapToChat widget | A random identifier for your chat session with that business. Not shared between different businesses. | Until you clear that site’s data |
| ttc_visitor_profile:… (localStorage, one per widget) | TapToChat widget | Only on widgets that ask for your details in the chat: whichever of your name and email address that widget asked for and you gave (or that you chose to skip a question), so you are not asked again and your details go with your next conversation with that business. Kept separately for each business’s widget. | Until you clear that site’s data |
The widget sets no cookies and loads no analytics or advertising scripts. How that business tells you about its own cookies is up to them.
Your choices
- Use the cookie settings, linked in the footer of every page, to see and change your choices at any time.
- If your browser sends a Global Privacy Control signal, we treat it as a refusal of all optional cookies without asking. For marketing that refusal is final: the advertising tags stay off on that browser even if marketing is switched on. Analytics stays off unless you turn it on yourself in the cookie settings.
- You can also delete or block cookies in your browser. Blocking the essential ones will sign you out of the dashboard.
More
How we handle the personal data behind these cookies is described in our Privacy Policy. Questions go to hello+support@taptochat.io.