Privacy Policy
This Privacy Policy describes how ThriveWorks Media LLC ("TruckBooks," "we," "us," or "our") collects, uses, and shares information about you when you visit truckbooksapp.com, join our waitlist, or use the TruckBooks mobile application (together, the "Service").
We built TruckBooks to be private by default. Most of your data stays on your device. This policy explains what leaves it, and why.
1. Information we collect
Information you give us
- Waitlist signup. When you join the waitlist we collect your email address and which form on the page you submitted (e.g. hero vs. final CTA).
- Account information. When you create an account we collect your email address, a hashed password (or an OAuth token if you sign in with Apple or Google), your chosen display name, an optional business name, and an optional "over-the-road" flag used to enable per-diem tracking.
- Accountant email (optional). If you add your accountant's email address so the "Send Report" feature can email them quarterly reports, we store that email in your profile. We never email your accountant on our own — only when you explicitly tap "Send Report."
- Expense data. Receipts, receipt photos, amounts, dates, categories, notes, merchant names, and voice transcripts you record in the app. This data is stored on your device first and replicated to our servers when you are online so you can use the app across devices.
- Per-diem entries. Dates you mark as full / partial / home day, the IRS per-diem rate that applied, and the tax year. Used to compute your deductible total in reports.
- Documents. Scanned images or PDFs of documents you choose to keep in the in-app document vault (e.g. CDL, insurance, registration), plus any metadata you enter such as document type, issuer, document number, issue date, and expiration date. Document images live in your device storage and a copy is replicated to our encrypted cloud storage so you can access them from another device.
- Trucks. An optional nickname you assign each truck (e.g. "Big Red"), a sort order, an optional starting odometer reading, and any maintenance records you log (service type, date, odometer, cost, and notes). We do not collect VIN, license plate, make, model, or year.
- Mileage tracking (optional, beta). If you enable Mileage Tracking, the app records your drives — start and end time, distance, and the route — using your device's location, including in the background so a drive is captured even when the app is closed. Route data (coordinates, street addresses, and the route line) is processed and stored encrypted on your device only: it is not synced to our servers and is not included in cloud backups. Motion and activity signals (e.g. "in vehicle") are used transiently to detect when a drive starts and ends; they are not stored and are not health data. Signing out stops tracking immediately and erases the raw location trace from your device; your saved trips stay on the device under your account so you do not lose your mileage log, and they are erased when you use "Clear All Data" or delete your account. See "Data we keep on your device only."
- Support correspondence. When you email us at support@truckbooksapp.com, we keep the message and your email address to respond.
Information we collect automatically
- IP address, hashed. When you join the waitlist we compute a one-way hash of your IP combined with the date and a secret salt. We use this hash to rate-limit signups. We do not store your raw IP.
- User-agent string. For the waitlist, we store the browser user-agent so we can debug issues and distinguish real signups from bots.
- Subscription status. If you subscribe to Pro, our payment processor (Adapty, via Apple App Store or Google Play) tells us whether your subscription is active. We never see your card number or full payment details.
- Referrals and in-app progress. If you use a referral code, we store which account referred you and the status of that referral. As you use the app we also generate and sync your in-app progress — experience points, badges earned, and daily streak counts — so it follows you across devices.
- Push notification token. If you grant notification permission, the operating system gives us an opaque push token (via the Expo Push service) that we store in your profile so we can send transactional notifications such as document-expiration reminders, per-diem reminders, and weekly summary pushes. The token cannot be used to read anything else on your device and you can revoke it at any time in iOS / Android Settings.
- Crash and diagnostic data. The app may send crash reports, error diagnostics, product analytics, app lifecycle events, screen views, interaction events, session replay data, feature flag evaluations, and performance telemetry through PostHog and Sentry.
- Mobile attribution data. The app sends install attribution, campaign source, app-open, deep-link, device, and app metadata to AppsFlyer so we can measure which marketing campaigns led to installs and subscriptions, and share that measurement with the ad networks we run campaigns on (such as Meta, TikTok, and Google). On Android this includes your Google Advertising ID (GAID); on iOS it includes Apple's advertising identifier (IDFA) only if you allow it through the App Tracking Transparency prompt — if you decline, attribution runs in a limited, privacy-preserving mode. You can reset or delete your advertising ID in your device settings at any time. We identify signed-in users by TruckBooks user ID. We do not send expense amounts, notes, receipts, document scans, EIN, or report contents to AppsFlyer.
Data we keep on your device only
- EIN (Employer Identification Number). If you choose to enter your EIN during onboarding (optional), it is stored only in your device's encrypted secure storage (iOS Keychain / Android Keystore). It is never transmitted to our servers or any third party. It is rendered into PDF reports you generate on-device — the PDF leaves your device only if you share it yourself (e.g. email it to your accountant).
- Trip routes (GPS). Routes recorded by the optional Mileage Tracking feature — coordinates, addresses, and route lines — are stored in an encrypted database on your device and never leave it. They are excluded from cloud backups. The only way route data leaves your device is if you export a local backup file yourself. Mileage totals appear in reports you generate on-device.
Information we do NOT collect
- We do not sell or rent your information to data brokers. Ever.
- We do not use your expense data, receipts, voice recordings, or document scans to train machine-learning models.
- We do not access your photo library except when you explicitly attach a receipt or document photo.
- We do not upload your location to our servers, and we do not track it unless you ask us to: GPS is used only if you enable the optional Mileage Tracking feature, routes are stored encrypted on your device only, are never included in cloud backups, and are erased when you use "Clear All Data" or delete your account. Signing out stops tracking and erases the raw location trace immediately.
2. How we use information
We use the information we collect to:
- Operate and improve the Service.
- Send you transactional emails: welcome, receipts, password resets, and important account or security notices.
- Send occasional product-update emails if you joined the waitlist. You can unsubscribe from any email with one click.
- Process subscription billing and manage Pro entitlements.
- Measure which marketing campaigns lead to installs and subscriptions, and improve our advertising (see Section 3).
- Provide customer support.
- Detect, prevent, and respond to abuse, fraud, and security incidents.
- Comply with law and legal process.
We do not use your expense data to train machine-learning models, profile you for advertising, or share it with anyone except the limited service providers listed below.
3. Cookies, website analytics, and app analytics
On truckbooksapp.com we use Google Tag Manager to load a small number of analytics and attribution tags. Google Tag Manager itself is a container — the tags it loads may include:
- Google Analytics 4 (GA4). Anonymous page-view, session, and interaction metrics so we can understand which parts of the site are useful. We ask GA4 to anonymize IP addresses and we do not enable Google Signals (no cross-device ad personalization).
- Meta Pixel (also called the Facebook Pixel). A page-view tag and a Lead conversion tag that fires when you submit the waitlist form. We use it to (a) measure which Facebook / Instagram ad creatives drive signups, and (b) build retargeting and lookalike audiences for future ads. The Pixel sees a hashed identifier, your IP address, your user-agent, and the URL of the page you visited. It does not see your expense data.
- Other attribution tags for paid campaigns (e.g. Google Ads conversion tracking, TikTok or X pixels — if and when we run campaigns on those platforms). These let us measure whether an ad led to a waitlist signup. They do not identify you by name.
These tags set small first- and third-party cookies (typically _ga, _gid, _fbp, _fbc, and similar short-lived IDs). None of them hold your name, email, or expense data.
We also send a small server-side copy of the same waitlist Lead event to Meta via their Conversions API, from our backend. This is the same event the browser pixel sends — deduplicated by a shared event ID — and exists only because the browser version is increasingly blocked (iOS ATT, ad blockers, Safari ITP). The server-side copy uses the hashed form of your email so Meta can match it to an account if you have one, but the underlying email is never sent in clear text.
Opting out. You can block analytics in several ways:
- Browser: enable Do Not Track or a privacy extension such as uBlock Origin, Privacy Badger, or Firefox strict tracking protection — all of these block Google Tag Manager and the Meta Pixel by default.
- Install the Google Analytics opt-out browser add-on.
- Adjust your Meta ad preferences to opt out of activity-based ad personalization.
- Clear or block cookies for truckbooksapp.com, google-analytics.com, and facebook.com in your browser settings.
In the mobile app, we use PostHog for product analytics, app lifecycle tracking, screen views, touch and interaction autocapture, feature flags, experiments, error diagnostics, performance telemetry, and mobile session replay. Session replay is configured to mask text inputs, images, and sandboxed system views, but it may still capture screen structure, taps, navigation, device/app metadata, logs, and network timing telemetry. We identify signed-in users by TruckBooks user ID.
We also use AppsFlyer in the mobile app for install attribution, campaign measurement, app open events, deep-link attribution, and selected subscription-funnel events. AppsFlyer receives device/app metadata, campaign identifiers, your IP address, and TruckBooks user ID after sign-in, and — so we can measure and improve our advertising — shares attribution data with the ad networks we run campaigns on (such as Meta, TikTok, and Google). On Android this includes your Google Advertising ID (GAID); on iOS it includes Apple's advertising identifier (IDFA) only with your permission via the App Tracking Transparency prompt. It does not receive your expenses, receipt photos, document scans, EIN, voice recordings, or report contents.
4. Who we share it with
We share the minimum necessary information with a small number of service providers who help us run the Service. Each is bound by a data processing agreement.
- Supabase, Inc. — database hosting and authentication for waitlist and user accounts.
- Resend (Resend, Inc.) — transactional and waitlist email delivery, including the "Send Report" email to your accountant when you trigger it.
- Adapty.io, Inc. — subscription management and receipt validation.
- PostHog, Inc. — mobile product analytics, feature flags, experiments, session replay, error diagnostics, and app usage measurement.
- AppsFlyer Ltd. — mobile install attribution, campaign measurement, deep-link attribution, and selected subscription-funnel event measurement. Receives your advertising identifier (Google Advertising ID on Android; Apple's IDFA on iOS only with your ATT consent), AppsFlyer device ID, IP address, device/app metadata, and TruckBooks user ID, and shares attribution measurement with the ad networks we advertise on (e.g. Meta, TikTok, Google). AppsFlyer is contractually required to protect your data to the same standard described in this policy and to use it only for the attribution and measurement services it provides to us.
- Sentry (Functional Software, Inc.) — crash and error tracking for the mobile app. Sentry receives stack traces, device model, OS version, and breadcrumbs of the actions that preceded an error. We tag events with your TruckBooks user ID so we can correlate a bug report you send us to its root cause. Sentry does not receive your expense amounts, receipt photos, voice content, or document scans.
- OpenAI, Inc. — voice transcription (Whisper) and AI-assisted expense categorization, receipt parsing, and document data extraction (GPT-family models). When you record a voice expense or scan a receipt or document, the audio or extracted text is sent to OpenAI's servers for processing. OpenAI is contractually prohibited from training on this data under their API enterprise terms; data is retained by OpenAI for a short abuse-monitoring window and then deleted.
- Expo (Exponent Inc.) — push notification token registration and delivery. When you grant notification permission, Expo proxies your push token to Apple's APN / Google's FCM service. The notification payload (e.g. "Your CDL expires in 14 days") passes through Expo en route to your device.
- Apple, Inc. & Google LLC — payment processing for App Store and Play Store billing.
- Cloudflare, Inc. — website hosting, CDN, and DDoS protection.
- Google LLC — Google Tag Manager and Google Analytics on the website only (see Section 3). Google is contractually prohibited from using the data for its own purposes.
- Meta Platforms, Inc. — the Meta Pixel (browser side) and Meta Conversions API (server side) on the website (see Section 3), and, in the mobile app, an attribution partner that receives campaign-measurement data through AppsFlyer (see Sections 1 and 3) so we can measure which Meta/Instagram campaigns drove installs and subscriptions. We do not send your expense data to Meta.
We may disclose information if required by subpoena, court order, or other valid legal process, or to protect our rights, users, or the public. If legally permitted, we will notify you first.
5. Where your data lives
Our databases and email systems are hosted in the United States. If you use the Service from outside the United States, your information will be transferred to and processed in the United States.
Expense, per-diem, document, and profile data in the mobile app is stored in the app's local database (WatermelonDB) on your device, protected by your device's own storage encryption. A copy is replicated to our Supabase database in the United States, encrypted at rest. Two kinds of data get stronger, app-level encryption on top of that: your EIN (device Keychain / Keystore) and the raw location trace recorded by Mileage Tracking (a separately encrypted database) — both described above.
EIN exception. If you provided an EIN during onboarding, it stays only in your device's encrypted Keychain (iOS) or Keystore (Android). It is never transmitted to TruckBooks servers or any third party. It appears only on PDF reports you generate on-device.
Trip route exception. Routes recorded by Mileage Tracking stay in an encrypted database on your device. They are not replicated to our servers and are not part of cloud backups.
Transient processing. Voice audio (sent to OpenAI for Whisper transcription) and receipt / document images (sent to OpenAI for OCR and field extraction) are transmitted to that processor only as long as the request takes to complete. The resulting text is stored in your TruckBooks data; the raw audio and image bytes are not retained by us after the response returns.
6. Data retention
- Waitlist emails are kept until you unsubscribe or we launch and you convert to a user account. Unsubscribed rows are retained only to honor your opt-out.
- Account data is retained for as long as your account is active. You can delete your account at any time from Settings; we will delete your personal data within 30 days, except where we must retain it to comply with law.
- Support emails are retained for up to 2 years.
- Aggregated, anonymized analytics (e.g. total active users per month) may be retained indefinitely.
7. Your rights
No matter where you live, you can:
- Ask us what personal data we hold about you.
- Ask us to correct or delete it.
- Export a copy of your data in a portable format.
- Unsubscribe from marketing emails with one click.
- File a complaint with a data-protection authority if you believe we have mishandled your data.
To exercise any of these rights, email support@truckbooksapp.com. We respond within 30 days.
8. California residents (CCPA/CPRA)
If you are a California resident, you have the right to:
- Know what categories and specific pieces of personal information we collect, use, disclose, and sell.
- Request deletion of your personal information.
- Correct inaccurate personal information.
- Opt out of the sale or sharing of personal information. We do not sell personal information. In the mobile app we share mobile attribution data — including your advertising identifier — with AppsFlyer and the ad networks we advertise on (Meta, TikTok, Google) to measure our campaigns; this is classified as "sharing" for cross-context behavioral advertising under CPRA. You can opt out on iOS by declining the App Tracking Transparency prompt (or Settings → Privacy & Security → Tracking) and on Android via Settings → Privacy → Ads (Delete advertising ID). On the website we also use limited advertising-adjacent cookies (see Section 3), which some California authorities classify as "sharing" under CPRA; you can opt out with any standard browser anti-tracking setting (Do Not Track, Global Privacy Control, or a content blocker such as uBlock Origin), all of which we honor.
- Limit the use of sensitive personal information. The only sensitive personal information the Service handles is precise geolocation, and only if you enable the optional Mileage Tracking feature — it is processed and stored on your device only, never transmitted to us or to any third party, and never used for advertising. We do not otherwise collect or use sensitive personal information beyond what is strictly necessary to provide the Service.
- Be free from discrimination for exercising your privacy rights.
To submit a verifiable consumer request, email support@truckbooksapp.com with the subject "CCPA Request."
9. EU/UK residents (GDPR)
If you are in the European Economic Area, the United Kingdom, or Switzerland, you have rights under the General Data Protection Regulation (GDPR) and the UK GDPR, including the right to access, rectify, erase, restrict processing, object to processing, and data portability.
Our legal bases for processing your data are: (a) performance of the contract under which we provide the Service to you; (b) your consent, which you can withdraw at any time; and (c) our legitimate interests in operating a secure, reliable Service.
Because our servers are in the United States, we rely on the EU-US Data Privacy Framework and Standard Contractual Clauses as the legal basis for international transfers. You can request a copy of the applicable SCCs by emailing us.
10. Children's privacy
TruckBooks is a business tool intended for users 18 years or older. We do not knowingly collect information from children under 16. If we learn we have collected information from a child under 16, we will delete it promptly. If you believe a child has given us information, email support@truckbooksapp.com.
11. Security
We take reasonable measures to protect your information:
- TLS/HTTPS in transit for all network traffic.
- Encryption at rest for our databases and backups.
- Row-level security in our database so one user cannot see another user's data.
- Payment details are handled exclusively by Apple, Google, and Adapty. We never see or store payment cards.
- Waitlist unsubscribe links are signed with HMAC-SHA256 so they cannot be forged.
No system is 100% secure. If we learn of a breach affecting your personal data, we will notify you without undue delay, as required by applicable law.
12. Changes to this policy
We may update this Privacy Policy from time to time. If we make material changes, we will notify you by email and by posting a notice on the website before the changes take effect. The "Last updated" date at the top of this page shows when the current version took effect.
13. Contact us
Questions, complaints, or requests? Email support@truckbooksapp.com.
ThriveWorks Media LLC Wyoming, United States