Cookie Policy
Ten cookies. All of them do work you asked for.
TRACE NDT sets no advertising cookies, no analytics cookies and no third-party trackers — so there's no consent dialog to wade through. Here is the complete list, what each one does, and how long it lasts.
Effective October 16, 2026
Every cookie TRACE sets
sb-…-auth-token
Until you sign out; at most 400 days
Keeps you signed in as you move between pages. Set when you sign in, cleared when you sign out. Large sessions get split across numbered cookies (…-auth-token.0, …-auth-token.1) — same single purpose. The session inside it stops working at the server after thirty days for staff and ninety for client and technician logins, however long the cookie itself stays in your browser.
sb-…-auth-token-code-verifier
Until the sign-in finishes; at most 400 days if abandoned
A one-time value used only while a sign-in is in flight — for example completing a Google or Microsoft sign-in, a password-reset link or the confirmation link sent when you sign up. It is written when you start one of those, before you are signed in. Newer versions of the sign-in library keep one per sign-in in progress (…-auth-token-flow-…-code-verifier) plus a short list of which are pending (…-auth-token-flows-code-verifier) — same single purpose. Removed as soon as the sign-in finishes; one left behind by a sign-in you abandoned holds nothing usable and is overwritten or expires.
technician_record
One year
For the handful of technicians who hold records with more than one firm, remembers which record you were last looking at so the app opens where you left off. A display preference — it grants no access of its own, and the record it names is checked against what you actually hold every time.
sidebar_collapsed
One year
Remembers whether you collapsed the navigation sidebar, so the app loads the way you left it instead of flashing to the wrong width. A display preference — nothing more.
trace-theme
400 days
Remembers whether you chose Light, Dark or System on your Account page, so the very first thing drawn is already the right colour instead of flashing the other way. It holds one word — light, dark or system — and nothing else. A display preference: it grants no access and says nothing about who you are.
trace_exam_session
8 hours
Only for someone taking a test from a share link without an account. It ties the browser to that one attempt so answers save as the candidate moves between questions — there is no login to do that job. It is scoped to the test-taking pages alone, unreadable by scripts, and identifies the attempt rather than the person.
trace_qbo_oauth
10 minutes
Only while your primary user is connecting your firm's QuickBooks Online company. It holds a one-time value, sealed so it cannot be read or altered, that lets TRACE check the answer coming back from Intuit is for the connection you started — so nobody can slip their own books into your account. It is sent only to TRACE's QuickBooks connection pages, unreadable by scripts, and deleted as soon as you come back.
trace_mailbox_oauth
10 minutes
The same job, only while you are connecting your own Google or Microsoft 365 mailbox: it lets TRACE check that the answer coming back is for the connection you started, so nobody can attach their mailbox to your account. Sent only to TRACE's mailbox connection pages, unreadable by scripts, and deleted as soon as you come back.
trace_calendar_oauth
10 minutes
The same job, only while you are connecting Google Calendar or Outlook so TRACE can keep your calendar there up to date: it lets TRACE check that the answer coming back is for the connection you started, so nobody can attach their calendar to your account. Sent only to TRACE's calendar connection pages, unreadable by scripts, and deleted as soon as you come back.
trace_return_to
15 minutes
Only when someone opens a TRACE traveler's QR code (a work order's printed code) before signing in. It remembers which traveler to show, so after signing in you land on it instead of the dashboard. It holds that page's address and nothing else, is unreadable by scripts, and is deleted the moment you arrive.
The sb-… cookies come from Supabase, the database and authentication service TRACE runs on. They hold your session for this site only — they are first-party, not shared with anyone, and carry no advertising or profiling data.
Why there's no accept-or-reject choice
Cookie banners exist because most sites set cookies that serve someone other than you — ad networks, analytics vendors, data brokers. TRACE sets none of those, so there is no optional category to switch off and nothing meaningful to consent to.
Every cookie in the table above is strictly necessary or a display preference you set yourself. Rejecting the session cookie would simply mean you cannot sign in. That's why the notice at the bottom of the screen has one button — it tells you what's happening rather than asking you to negotiate with a preferences dialog.
Browsing without signing in
The public pages — home, pricing, features, the module pages, this policy — set no cookies at all. Reading about TRACE writes nothing to your browser. Three things on them reach someone else. The home page's contact form carries the same Cloudflare bot check as signup and a firm's public lead form, and that check loads as the page opens, whether or not you use the form; so do the survey, the giveaway entry page and the Advertise page's enquiry form. And the sign-in box in the header of every public page carries it too, loading when you open the box. Both are described under Third parties below. And the free tools, guides and conference calendar can show a labelled sponsor block, whose logo your browser fetches from our own file storage at Supabase, the provider that holds TRACE's database and files; that request carries no cookie and does not say which page asked for it. Even there, TRACE sets nothing of its own — the value lives in Cloudflare's frame, on Cloudflare's domain.
Starting to sign in is not browsing, and it can set a cookie before you are signed in: signing up, asking for a password-reset link, or choosing to sign in with Google or Microsoft writes the one-time sb-…-auth-token-code-verifier value described above, so the link or the answer that comes back can finish the sign-in. It carries no account and nothing about you.
The other exception is not really browsing either: if someone sends you a link to take a test, starting that test sets trace_exam_session. A candidate with no account still needs something holding their place between question one and question forty, and that cookie is it. It is written when you begin the attempt, never before — opening the link and reading the instructions sets nothing.
Local storage
TRACE stores six kinds of value in your browser's local storage, all of them display preferences, none of them ever sent to our servers.
The first is a flag recording that you dismissed the cookie notice, so it doesn't reappear on every page. The second exists only if you fold part of a board: folding a list or a swimlane on a Task board, or a column on the board view of tasks, deals, estimates or projects, writes down which ones you folded — an entry or two per board — so the board opens the way you left it. The third exists only if you fold a section on a record page — a company, a technician, an audit: it notes the kind of page and the section's heading, so that section stays folded on every record of that kind. It records the kind of page, never which record you were on. The fourth exists only if you take a test in TRACE — signed in or from a share link — and change the text size: it remembers the size you picked, and nothing about the test or your answers. The fifth exists only if you fold a getting-started checklist — the one on your dashboard, or the setup checklist a module shows at the top of its page (Safety, People, Projects, Tool Control, Ledger, CRM, Certification Testing, Quality Management and Training each have one): it notes which checklist you left folded, one entry per checklist, and nothing else. The sixth exists only if you switch one of the free NDT calculators between Metric and Imperial: it remembers which you chose, so the next calculator opens the same way. The choice also goes into the page address, so a link you share opens in the same units; the stored value holds that one word and nothing about what you calculated. Opening a calculator without choosing writes nothing. Hiding the dashboard's card altogether is different — that choice is saved on your account, so it follows you. Folding is per-device on purpose — folding your "Closed" list shouldn't fold it for a colleague — which is exactly why it lives in your browser rather than in our database.
One more value lives somewhere else — your browser's storage for a single tab — and it is the only one that does reach us. If you sign up with Google or Microsoft from a link carrying another firm's referral code, or an invitation to a workspace of your own, TRACE keeps that code in the tab while you are away at Google or Microsoft and sends it with the form you fill in when you come back, exactly as an email signup sends it. It holds the code and nothing about you, and it is gone when you close the tab.
Offline field reports are the one place TRACE keeps records in your browser, and only if you ask. A technician who presses "Make this computer available offline" on Field Reports, or a consultant who presses it on Reports, gets two things. A service worker, which keeps a copy of the offline reports page, TRACE's own scripts and styles, and three public font files so that page opens with no signal; it stores nothing about you and answers nothing else. And the browser's IndexedDB storage, which holds a copy of your jobs, report forms, draft reports, draft charge sheets (hours and quantities — never prices), your own hours of the last two months and your firm's name and logo (or, for a consultant, the firm's scheduled and in-progress jobs, its report forms, each job's crew with their certifications — names and certification facts only, no contact details — its technique library's names and wording and your own draft reports) — all deleted when you sign out, when someone else signs in on that computer, and after 14 days — and the reports, photos, charge sheets and hours you write offline, until they reach TRACE. All of it is encrypted under an offline passcode you choose, which TRACE never sees. Those are sent to TRACE when there is a signal — that is their purpose — and leave the computer once they arrive. A DRAFT PDF preview of a report is made in the browser's memory when you ask for it and is not stored by TRACE. To know whose stored reports to offer, the offline page reads the sign-in cookie described above, on your computer; it sends nothing on the strength of it.
Third parties
TRACE loads no advertising scripts, analytics scripts, tracking pixels, social widgets, or fingerprinting tools. There are no third-party cookies on any TRACE page.
Two exceptions sit outside our pages, on the provider's own domain and under the provider's own policy. The signup page, the page where a brand-new Google or Microsoft sign-in sets up its workspace, the password sign-in box and the forgot-password page, the contact form on our home page, the survey, the giveaway entry page, the Advertise page's enquiry form, and a firm's public lead form embed Cloudflare Turnstile — a bot check that runs in a frame served by Cloudflare, which may store a short-lived value there to remember the check passed; Cloudflare designed Turnstile specifically to work without tracking cookies or visitor profiling. And Stripe hosts two pages you can be sent to, both of which set Stripe's cookies under Stripe's cookie policy: its checkout pages, where TRACE subscriptions are paid for and, if a firm turns on online payments, its clients pay invoices and buyers pay for the courses it sells; and its billing page, which your firm's primary contact opens from Account settings to change the card, pull past invoices, or correct the billing details Stripe prints on them. Likewise, choosing to sign in with Google or with Microsoft, and connecting your firm's QuickBooks Online company, your own Google or Microsoft 365 mailbox, or your firm's Stripe account, each takes you to that company's own sign-in and consent pages, which set their own cookies under their own policies.
Controlling cookies
Every browser lets you view, delete, and block cookies for a site, usually under privacy or site-data settings. Clearing TRACE's cookies signs you out and forgets this device's copy of your sidebar and Light-or-Dark preferences and, for technicians with more than one record, which record you had open; blocking them entirely means sign-in won't work, because the browser has nowhere to keep the session. Your Light-or-Dark choice is also saved on your account, so signing in again puts it back — which is how it follows you to a new phone or a borrowed laptop.
Clearing local storage brings the cookie notice back, unfolds any board lists and record-page sections you had collapsed, puts a test's text size back to normal, puts the calculators back in metric, and lets the dashboard's and each module's setup checklist open or fold by themselves again. Nothing else, and nothing you'd lose — no record, document or setting of yours is kept there.
Clearing this site's stored data (not just its cookies) also deletes anything kept for offline field reports — including reports, charge sheets and hours written offline that have not reached TRACE yet, which exist nowhere else. Send them first: the offline reports page says how many are waiting, and so does signing out.
Changes to this policy
If the cookies TRACE sets ever change, this page and the date at the top change with them, and the notice reappears so you're told rather than left to notice on your own.
The rest of the picture
Cookies are a small slice of it. The Privacy Policy covers what TRACE collects, who touches your data, and how long it's kept — and the contact form reaches a person if something here isn't clear.