Privacy Policy
ByteLedger is built for people who work in the field โ farmers, equine professionals, veterinarians, contractors. We collect only what we need to make the app work, we store your expense data securely, and we do not sell it to anyone.
01 Who We Are
ByteLedger is an expense tracking application for agricultural and field-based businesses. It is developed and operated by ThisByte LLC. If you have questions about this policy, contact us at support@byteledger.io.
02 Two Tiers, Two Data Profiles
ByteLedger has two tiers with meaningfully different data handling:
All data is stored on your device only. No expense data, receipt images, or personal information is sent to our servers. Solo tier works entirely offline. Uninstalling the app removes all data.
Data is stored in Firebase (Google Cloud) to enable team features, the web dashboard, and cloud sync. The sections below describe what Business tier collects and why.
If you are a Solo tier user, sections 3 through 6 below do not apply to you unless you upgrade to Business tier.
03 What We Collect (Business Tier)
Account information. When you create a Business tier account, we collect your name and email address via Google Sign-In (OAuth). We do not store your Google password.
Expense data. Expense records you create โ including vendor name, amount, date, category, tags, and notes โ are stored in Firebase Firestore under your organization.
Receipt images. Photos you take or upload as receipt attachments are stored in Firebase Storage. Images are associated with your expense records and are not processed for any purpose other than displaying them within your account.
OCR processing. When you photograph a receipt, on-device OCR (Google ML Kit) extracts vendor, date, and amount from the image. This processing happens on your device. No image is sent to a cloud service for OCR.
Categorization data. When you accept or change a suggested expense category, we log whether the suggestion was accepted or overridden. This signal is used to improve categorization accuracy for your organization.
Crash and performance data. We use Firebase Crashlytics and Firebase Performance Monitoring to detect and fix crashes and performance issues. This data is anonymized and does not include your expense records.
Audit log. Actions such as expense exports and team membership changes are logged to an audit trail within your organization's data in Firestore. This log is accessible to the organization Owner.
04 What We Do Not Collect
- We do not collect bank account numbers, credit card numbers, or payment credentials
- We do not collect Social Security numbers, tax ID numbers, or government identifiers
- We do not track your location
- We do not serve advertising and do not share data with advertising networks
- We do not sell your data to any third party, ever
- Solo tier users: we collect nothing. All data remains on your device.
05 How We Use Your Data
We use the data we collect exclusively to operate ByteLedger:
- Expense records and receipts โ to display your expense history, generate reports, and produce export files
- Account information โ to authenticate you and associate your data with your organization
- Categorization signals โ to improve category suggestions within your organization over time
- Crash and performance data โ to identify and fix technical issues
We do not use your expense data for marketing, profiling, or any purpose outside of operating the app for you.
06 Data Storage & Security
Business tier data is stored in Google Firebase (Firestore and Firebase Storage), hosted in Google Cloud infrastructure. Firebase is SOC 2 compliant. All data in transit is encrypted via HTTPS. All data at rest is encrypted by Firebase.
Access to your organization's data is controlled by Firestore Security Rules. Members can only access data within their organization. Data cannot be accessed from outside the app without a valid authenticated session.
The Accountant Share Link feature generates a read-only, time-limited URL for your accountant. The link expires after the period you choose (1, 7, or 30 days) and can be revoked by you at any time. Share links provide read-only access to a filtered view of your expense data โ no write access is granted.
07 Data Retention
Solo tier. Data lives on your device for as long as you use the app. Uninstalling the app removes all data permanently.
Business tier. Your expense data and account information are retained for as long as your account is active. If you close your account, your data is deleted from our Firebase project within 30 days.
Crash data. Anonymized crash and performance data is retained by Firebase Crashlytics per Google's standard retention policy (90 days).
Solo-to-Business migration. When you upgrade from Solo to Business tier, your local expense records are copied to Firestore. Your original local data is retained in read-only mode on your device for 90 days, then cleared. During this period, your local data is never deleted โ it is only removed after the 90-day window.
08 Third-Party Services
ByteLedger uses the following third-party services. Each has its own privacy policy.
- Google Firebase (Firestore, Storage, Auth, Crashlytics, Performance Monitoring) โ cloud infrastructure for Business tier
- Google ML Kit โ on-device OCR for receipt scanning. No data leaves your device during OCR processing.
- Google Sign-In โ authentication for Business tier accounts
We do not integrate with any advertising, analytics, or data broker services.
09 Your Rights
You have the right to access, correct, or delete your data at any time.
- Access and export. Your expense data is exportable at any time from within the app in CSV, QuickBooks, TurboTax, or TaxAct format.
- Correction. You can edit or delete any expense record directly in the app.
- Account deletion. To delete your account and all associated data, contact us at support@byteledger.io. We will complete the deletion within 30 days.
- Solo tier. Because Solo tier data never leaves your device, you can delete all data by uninstalling the app.
10 Children
ByteLedger is not directed at children under 13. We do not knowingly collect personal information from anyone under 13. If you believe a child has provided us with personal information, contact us and we will delete it promptly.
11 Changes to This Policy
If we make material changes to this privacy policy, we will notify Business tier users via the app before the changes take effect. The effective date at the top of this page will be updated. Continued use of ByteLedger after a policy change constitutes acceptance of the updated policy.
12 Contact
Questions, requests, or concerns about your privacy: