Spark Takeoff — Privacy Policy
Last updated: July 9, 2026
This Privacy Policy describes how Spark Takeoff ("we," "us," or "the App") handles your information when you use our electrical estimating application. This policy complies with the requirements of the Google Play Store, Apple App Store, California Consumer Privacy Act (CCPA), and General Data Protection Regulation (GDPR).
1. Information We Collect
We do not collect, store, or transmit your personal data to our servers. Spark Takeoff is a fully offline-first application. All data you enter — job information, estimates, photos, voice notes, calculations, and settings — is stored locally on your device using your browser's IndexedDB storage and localStorage. This data never leaves your device unless you explicitly choose to export or sync it.
- Job data: Job names, addresses, notes, calculations, material lists, phase breakdowns, and prefab assemblies — all stored locally on your device.
- Photos: Job site photos and plan images you upload — stored locally in IndexedDB on your device.
- Voice notes: Voice-to-text transcriptions are processed by your device's built-in speech recognition (Apple Speech, Google Speech). The audio and transcription are handled by your operating system, not by us. We do not receive or store your voice recordings.
- Settings: Your hourly rate, location preferences, and labor matrix settings — stored locally on your device.
2. Third-Party Services (User-Optional)
Spark Takeoff includes optional features that may transmit data to third-party services. These features are disabled by default and only activate if you explicitly configure them. We do not enable these services without your direct action.
- OpenAI API (AI Layout Generator): If you choose to use the AI schematic generation feature, you must enter your own OpenAI API key. Your job data and site photos are sent directly from your device to OpenAI's servers to generate schematics. We do not see, store, or transmit your API key or your data — the connection is between your device and OpenAI directly. See OpenAI's Privacy Policy for how they handle data.
- Cloud Sync (Firebase / Supabase): If you choose to enable cloud sync, you must enter your own Firebase or Supabase project credentials. Your estimate data syncs between your devices through your own cloud project. We do not have access to your cloud project or your synced data. See Firebase Privacy or Supabase Privacy.
- Twilio SMS Alerts (Backend only): If you deploy the optional backend service and enable SMS alerts, alert messages are sent via Twilio to a phone number you configure. Phone numbers and alert data are handled by Twilio, not by us. See Twilio's Privacy Policy.
3. Data Storage and Security
All app data is stored on your device using browser-based storage (IndexedDB and localStorage). This means:
- Your data is not stored on our servers — because we do not operate servers for this app.
- Your data is not accessible to us — we cannot view, retrieve, or delete your data.
- Your data remains even when you close the app or restart your device.
- To delete all your data: clear your browser's site data, or use the app's "Reset" function. This permanently erases all job data, photos, and settings from your device.
4. Data We Do NOT Collect
- We do not collect your name, email, phone number, or location.
- We do not use analytics, tracking pixels, or advertising SDKs.
- We do not use cookies for tracking.
- We do not sell, rent, or share your data with any third party.
- We do not access your contacts, camera roll, or files outside the app.
5. Camera and Microphone Access
The app requests access to your device's camera (for taking job site photos) and microphone (for voice-to-text job notes) only when you actively use those features. These permissions are requested by your browser or operating system, not by us. We do not store, transmit, or have access to your camera feed or microphone input — photos are saved to your device's local storage, and voice processing is handled by your device's built-in speech recognition service.
6. Children's Privacy
Spark Takeoff is a professional tool designed for licensed electrical contractors and tradespeople. It is not directed at children under 13 (or the applicable age in your jurisdiction). We do not knowingly collect any data from children. If you believe a child has provided information through this app, please contact us so we can investigate.
7. Your Rights Under CCPA and GDPR
Because we do not collect or store your personal data on our servers, your data rights are exercised directly on your device:
- Right to access: All your data is visible within the app on your device.
- Right to deletion: Clear your browser site data or use the app's Reset function to permanently delete all data.
- Right to portability: Use the app's Export function to download all your job data as a JSON file.
- Right to opt out: No tracking or data sale occurs — there is nothing to opt out of.
8. Changes to This Privacy Policy
We may update this Privacy Policy from time to time. Any changes will be posted on this page with an updated revision date. If we make material changes, we will notify users through the app or via the contact information provided at app installation.
9. Open Source Notice
Spark Takeoff uses the qrcode-generator JavaScript library (MIT License, Copyright (c) 2009 Kazuhiko Arase) for QR code generation in work-order PDFs.