Privacy Policy
Last updated: 2026-06-16
Camp Roostly ("the App") is an RV trip planner. This policy explains what data we collect, how we use it, and the controls you have. We designed Camp Roostly to collect as little personal information as possible.
What we collect
- Account info: your email address, used to sign you in (magic link or Google sign-in) and to send you transactional messages (sign-in codes, booking-window reminders for trips you've added, account/billing notifications). We do not send marketing email.
- Profile: optional display name, optional home address. The home address is geocoded to compute drive times for your trips.
- Trip data you create: trips, stops, dates, confirmation numbers, costs, notes, photos, favorites, dismissed warnings, scheduled booking-window reminders.
- Rig profile: optional dimensions and capacity for your RV. Used to filter campsites that fit your rig and to compute truck-safe routes.
-
Forwarded itineraries: only when you forward a
confirmation email to our intake address (e.g.
intake@camproostly.app). We extract trip details (campground name, dates, confirmation #) via an AI parsing step and attach them to your account. The original email body and any attachments are deleted after parsing. - Subscription & billing: if you start a Premium trial or subscribe, we store your subscription status (active / trialing / cancelled) and the platform identifier (Google Play purchase token or Stripe customer ID). Payment card details are handled entirely by Google Play or Stripe — we never see or store them.
- Diagnostics: anonymous error reports (Sentry) and product analytics (PostHog) when those features are enabled. No personally identifying information is sent to either service by default; crash reports are stripped of user content before upload.
- Location: only when you tap "Use my location" on the map, or when you use in-app navigation. During turn-by-turn navigation we use your device's live location to follow your route and keep you on a rig-safe path, and we send your current position to our routing provider (HERE) to compute and, if you leave the route, recompute directions. Navigation runs only while the screen is open — we never track your location in the background.
- Contacts: only when you tap "From contacts" on an address field. We read the single contact you select; we do not upload your contact list to our servers.
- Google Calendar (only if you connect it): an optional Premium feature. When you connect your work calendar, we read only your free/busy times via Google's read-only Calendar API — the start/end times of when you're busy, never event titles, descriptions, attendees, locations, or attachments. We never create or modify calendar events.
What we do with it
- Show you the campsites + routes you ask for.
- Pass coordinates to HERE (driving directions, including your live position during in-app navigation), OpenStreetMap (map tiles), and Google Maps (geocoding + place autocomplete) when needed to compute trip details. These are stateless lookups; we don't share identifying information with these providers.
- Pass forwarded itinerary text to Anthropic Claude for structured extraction. The text is sent without your account identifier and is not used by Anthropic to train models (per their zero-data- retention API terms).
- Send transactional email via Resend (sign-in, booking-window reminders). Resend retains delivery logs for 30 days for deliverability troubleshooting.
- Look up state-level diesel prices from the U.S. Energy Information Administration (EIA) once a week and cache the results. No request to EIA contains user information.
- Use your connected Google Calendar's free/busy times only to warn you when a travel day or campsite stay collides with a meeting-heavy workday. The busy intervals are cached on our server to power these warnings and are used for nothing else.
- Persist your trips so they're available across your devices.
- Aggregate anonymous usage (page views, button clicks) via PostHog to understand which features are useful. You can opt out in your OS-level settings.
- Verify Premium-subscription receipts with Google Play or Stripe to confirm entitlement. We store only the receipt identifier, not any payment details.
What we don't do
- We don't sell or rent your data.
- We don't share your trip details with anyone — they're visible only to you (and to people you explicitly share a trip link with).
- We don't track you across other apps.
- We don't run third-party advertising.
Your controls
- Export your data: every trip can be exported as an iCalendar (.ics) file for import into Google/Apple/Outlook Calendar.
- Delete your account: open the app → Profile → Danger zone → Delete account. This permanently removes your profile, rig, all trips and stops, favorites, visit history, forwarded itineraries, and scheduled reminders. Cascade deletes are atomic — there are no orphan records. Full details and an email path for users who can't sign in are at camproostly.com/delete-account.
- Cancel a Premium subscription: cancel via Google Play (Play Store → Subscriptions → Camp Roostly) or via Profile → Manage subscription on the web. Cancellation is separate from account deletion — cancel first if you want to stop billing before deleting.
- Revoke a shared trip link: in any trip's Share sheet, toggle "Public link" off. The recipient sees a "no longer shared" message. We retain the token so a future re-enable restores the same link.
- Cancel a booking-window reminder: open the trip and tap × on the booking-window chip for that stop. The reminder is marked cancelled and no email is sent.
- Disconnect Google Calendar: open the app → Profile → Work calendar → Disconnect. This immediately stops all calendar access and deletes the cached busy times. You can also revoke access from your Google Account at myaccount.google.com/permissions.
- Revoke permissions: contacts, location, and notifications can be turned off any time in Android Settings → Apps → Camp Roostly → Permissions.
Google Calendar data
Connecting your Google Calendar is optional. When connected, Camp
Roostly accesses only your free/busy information through the read-only
calendar.readonly scope — the start and end times of when
you are busy, with no access to event titles, descriptions, attendees,
locations, or attachments, and no ability to create or modify events.
We use this data for the single purpose of warning you when your travel
days overlap your work meetings. The busy times are cached only to
provide these warnings and are deleted when you disconnect.
Camp Roostly's use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements. We do not sell this data, do not use it for advertising, and do not transfer it to others except as needed to provide this feature.
Data retention
Your data lives in our database for as long as you have an account. When you delete your account, we delete it within 24 hours from our live database. Backups (point-in-time-recovery snapshots) age out after 7 days.
Where data lives
Camp Roostly runs on Supabase (Postgres) hosted in the United States. Static web assets and the image proxy run on Cloudflare Workers. We use OpenStreetMap, Recreation.gov (RIDB), and other public catalog sources for campsite data — none of those sources receive your personal information.
Third-party services we use
- Supabase — auth + Postgres database (US).
- Cloudflare Workers — web hosting + image proxy.
- Google Cloud (Places, Maps, OAuth, Calendar) — geocoding, autocomplete, sign-in, and optional read-only work-calendar free/busy.
- HERE Technologies — rig-safe truck driving directions (honors vehicle dimensions).
- OpenStreetMap — map tiles.
- Anthropic Claude — itinerary email parsing (zero-data-retention API).
- Resend — transactional email delivery.
- U.S. Energy Information Administration (EIA) — weekly state fuel prices.
- Google Play Billing — Android subscription payments.
- Stripe — web subscription payments.
- Sentry — anonymous crash reporting (when enabled).
- PostHog — anonymous product analytics (when enabled).
Children
Camp Roostly is not directed at children under 13. We do not knowingly collect personal information from children. If you believe we have, contact us and we will delete it.
Changes to this policy
Material changes to this policy will be announced in the app and take effect 30 days after notice.
Contact
Questions about this policy or your data: email privacy@camproostly.com.