Last updated: May 2, 2026
Contents
1. Privacy at a Glance
GoatMaster is a farm management app that helps you track your goat herd. We take your privacy seriously and follow Apple App Store, Google Play Store, and GDPR guidelines. Here's the short version:
- What we collect: a username and password, plus the goat data you create.
- What we do with it: we store it so you can use the app across devices.
- What we don't do: we don't sell your data, we don't show ads, and we don't track you across other apps or websites.
- Where it lives: on secure servers (Vercel, Neon PostgreSQL, Cloudinary).
- You're in control: you can export, edit, or permanently delete everything at any time from the Settings tab.
2. Who This Policy Applies To
This Privacy Policy describes how GoatMaster ("we", "us", "our") collects, uses, and protects information about you ("you", "your") when you use our application, available as a web application and (in the future) as a mobile app on the Apple App Store and Google Play Store. By creating an account or using the Service, you agree to this Policy.
3. Data We Collect
3.1 Account Information
- Username — chosen by you during signup. Used to log in and uniquely identify your account.
- Password — never stored as plain text. Hashed with bcrypt (12 rounds) before being saved.
3.2 Goat & Farm Data (User-Generated Content)
Information you create within the app to manage your herd, including:
- Goat names, breeds, sexes, dates of birth, ear tag numbers, QR codes, notes
- Photos of goats (uploaded by you or captured via the in-app camera)
- Health records: treatment dates, treatments given, due dates for follow-up care, notes
- Breeding records: dam, sire, breeding date, expected and actual kidding dates
- Visual fingerprints (numerical embedding vectors) extracted on-device from goat photos to enable AI-powered re-identification
- Scan history: which goat was matched, when, and at what confidence
3.3 Technical & Usage Data
Collected automatically when you use the Service, used to keep the app running and to improve performance:
- IP address (used only for rate-limiting and abuse prevention; not stored long-term)
- Browser type and version, operating system, device type
- Pages visited, time of access, and basic interaction events (via Vercel Analytics — fully anonymised)
- Performance metrics like load time and API response time (via Vercel Speed Insights — fully anonymised)
We do not collect: your real name, email address, phone number, location data, advertising IDs, contacts, calendar, microphone audio, or any data from other apps on your device — unless you explicitly enter such data into a goat profile yourself.
3.4 Permissions Requested
The app may ask for the following device permissions, and only when needed for the relevant feature:
- Camera — to take photos of goats for profiles, scanning, and breed identification. You can deny this and instead upload photos from your gallery.
- Photo Library — to select existing photos to attach to a goat profile.
We do not request: location, contacts, microphone, calendar, Bluetooth, motion, health, notifications (yet), or any other permission. You can revoke any granted permission from your device settings at any time.
4. How We Use Your Data
- Provide the Service — let you log in, view your herd, save records, and recognise goats.
- Authenticate you — verify your password and keep your session active.
- Operate AI features — match the visual fingerprints of scanned goats against the ones you've enrolled.
- Send timely reminders — surface upcoming health treatments due within 7 days (in-app only; no email or push notifications are sent currently).
- Improve the Service — analyse anonymised usage data to find bugs, optimise performance, and prioritise new features.
- Comply with the law — respond to lawful legal requests if required.
We do not use your data for: targeted advertising, profile-based marketing, sale to third parties, training of third-party AI models, or any purpose unrelated to running the app.
5. Data Sharing & Third Parties
We share data only with the service providers that physically operate parts of the app. Each is bound by a data processing agreement and processes data only to provide their service.
| Service | Purpose | Data Shared |
|---|---|---|
| Vercel | App hosting, analytics, performance monitoring | App requests, anonymised usage |
| Neon | Managed PostgreSQL database | All app data (encrypted at rest) |
| Cloudinary | Image hosting & delivery | Photos uploaded by you |
We do not share your data with advertisers, data brokers, or social media platforms.
6. Camera, Photos & On-Device AI
GoatMaster uses your device camera (with your permission) to scan goats for identification and breed detection. Here's exactly what happens to a photo when you scan a goat:
- The camera frame is captured locally on your device.
- When you submit a scan, the captured image is sent to the configured recognition service for processing.
- The service compares an image fingerprint with stored fingerprints for animals in your organization. Recognition can be incorrect and requires your review.
- Scan results and usage may be stored with your organization’s records. Camera access ends when you close the scanner.
- If you save a photo, it's uploaded to Cloudinary (encrypted in transit via HTTPS) and the URL is stored in your goat record.
Optical Character Recognition (OCR) for ear tag numbers also runs entirely on-device using Tesseract.js — no images are sent for OCR processing.
7. Data Storage & Security
We protect your data with industry-standard practices:
- Encryption in transit: all communication uses HTTPS/TLS 1.3.
- Encryption at rest: the database is encrypted at the disk level by Neon.
- Password hashing: bcrypt with cost factor 12 — passwords are never stored or transmitted in clear text.
- Authentication tokens: JSON Web Tokens stored as
httpOnlycookies — invisible to JavaScript and resistant to XSS. - Multi-tenancy: every database query is scoped to your user ID. Other users cannot access your data.
- Rate limiting: repeated failed login attempts from one IP are throttled.
- Server location: data is stored in regional data centres operated by our service providers, generally in the EU or USA depending on the region nearest to you.
While we use commercially reasonable measures, no internet-based service can guarantee absolute security. If we ever experience a breach affecting your data, we will notify you within 72 hours where practicable.
8. Retention & Deletion
- While your account is active, we retain all your data so the app remains usable.
- You can delete your account at any time from Settings → Account → Delete Account. This permanently and immediately removes your goats, photos, health logs, breeding logs, embeddings, and scan history.
- Inactive accounts are not auto-deleted, but you can email us to remove them.
- Backups are kept for up to 30 days for disaster recovery; deleted data is permanently removed from backups within 30 days.
9. Your Rights
You have the right to:
- Access — view all your data within the app (Profiles tab, Reports tab).
- Export — download CSV or PDF reports of your herd, health, and breeding data from the Reports tab.
- Rectify — edit any goat profile, log entry, or your own profile at any time.
- Erase — permanently delete your account and all data via Settings.
- Restrict processing — stop using the app at any time. Email us if you'd like us to suspend rather than delete your account.
- Object — opt out of analytics by using a privacy-focused browser or extension. We honour browser DNT signals.
- Lodge a complaint — if you believe we've violated your privacy rights, you can complain to your local data protection authority (e.g. the ICO in the UK, the CNIL in France, or the Data Protection Commission in Ghana).
10. Children's Privacy
GoatMaster is not intended for children under 13 years of age (or 16 in the European Economic Area, where local law sets a higher threshold). We do not knowingly collect data from children under these ages.
If you believe a child has created an account, please contact us at the address below and we will delete the account promptly.
11. International Data Transfers
Our service providers may store and process data in countries different from yours. Where transfers happen, they are protected by Standard Contractual Clauses (SCCs) approved by the European Commission, or equivalent safeguards. By using the Service, you consent to your data being processed in these jurisdictions.
12. Changes to This Policy
We may update this Privacy Policy from time to time. We will notify you of material changes by:
- Updating the "Last updated" date at the top of this page
- Showing an in-app notice on your next sign-in
- Where required by law, requesting your renewed consent
Continued use of the Service after changes take effect means you accept the updated Policy.
13. Contact
For privacy questions, data requests, or to exercise any of the rights listed above:
- Email: samuel.hughes.23@outlook.com
- Phone: +233 55 441 6937
- Country: Ghana
We respond to data requests within 30 days where required by law (e.g. GDPR, CCPA).