Legal
Privacy Policy
Last updated: May 31, 2026
TableTopSage (“we,” “our,” or “the app”) is a board game companion app that helps you track your game collection, log plays, and use session tools. This Privacy Policy explains what information the app collects, how it is used, and the choices you have.
By using TableTopSage, you agree to the practices described in this policy.
1. Information We Collect
1.1 Information You Provide
- Player profiles — Display names, optional colors, and optional BoardGameGeek usernames for players you create within the app.
- Play data — Game sessions you log, including dates, scores, duration, comments, locations (user-entered text, not GPS), expansions, and team assignments.
- Photos — Images you attach to play sessions, captured via your device camera or selected from your photo library.
- BoardGameGeek credentials — If you choose to link your BGG account, your BGG username and password are stored securely on your device using encrypted storage. These credentials are sent directly to BoardGameGeek for authentication and are never transmitted to our servers.
- Crews — Named groups of players you create for quick selection.
1.2 Information Collected Automatically
- Device name — A human-readable device label (e.g., “iPhone” or “Samsung Galaxy S24”) is sent to our authentication service when the app creates an anonymous session. This is used solely for session identification and is not linked to any personal identity.
- Anonymous session identifier — The app creates an anonymous account through Supabase (our backend service) to access app features such as game guides and remote configuration. No email, name, or other personal information is required or collected for this account.
1.3 Information We Do Not Collect
- We do not collect your precise or approximate location via GPS.
- We do not use analytics, crash reporting, or behavioral tracking SDKs.
- We do not serve advertisements or use advertising identifiers.
- We do not collect email addresses, phone numbers, or payment information.
- We do not track your activity across other apps or websites.
2. How Your Information Is Stored
TableTopSage is a local-first app. The vast majority of your data stays on your device.
| Data | Storage Location | Details |
|---|---|---|
| Games, plays, players, crews, locations, timers | On-device (SQLite) | Stored locally in your app’s private database. Not uploaded to any server. |
| Play photos | On-device (app documents) | Copies are saved within the app’s local storage. Not uploaded to any server. |
| BGG credentials | On-device (encrypted storage) | Stored using platform-native encrypted storage (Keychain on iOS, EncryptedSharedPreferences on Android). |
| App preferences | On-device (SharedPreferences) | Theme, filter/sort settings, player linkage. |
| BGG session cookies | On-device (cookie file) | Maintained locally to keep your BGG session active. |
| Anonymous session | Supabase (remote) | An anonymous identifier and device label are stored server-side. |
3. Third-Party Services
The app communicates with the following third-party services:
3.1 Supabase
Used for anonymous authentication, downloading game guide content, and retrieving remote configuration (links to FAQs, terms, and feedback forms). Supabase receives your anonymous session identifier and device name. No personal data is shared. See Supabase Privacy Policy.
3.2 Cloudflare Turnstile
Used for bot protection during anonymous authentication. Turnstile runs an invisible challenge on your device and generates a verification token. This token is sent to Supabase as part of the sign-in process. See Cloudflare Privacy Policy.
3.3 BoardGameGeek (BGG)
If you choose to link your BGG account, the app communicates with BoardGameGeek’s API to import your collection and plays, log new plays to your account, and retrieve game data. Your BGG username and password are sent directly to BGG’s servers for authentication. The app also fetches publicly available game information and video metadata from BGG and GeekDo APIs. See BGG Terms of Use.
3.4 Google Fonts
The app may download font files from Google’s servers for display purposes. No personal data is transmitted during this request. See Google Privacy Policy.
4. How We Use Your Information
We use the information described above to:
- Provide core app functionality (game library, play logging, insights, session tools)
- Authenticate anonymously with our backend to deliver game guides and app configuration
- Sync your collection and plays with BoardGameGeek at your request
- Generate on-device insights, statistics, and year-in-review summaries
- Enable data export and import for backup purposes
We do not sell, rent, or share your personal information with any third party for marketing or advertising purposes.
5. Data Export and Backup
You can export your complete app data (games, plays, players, crews, locations, and timers) as a JSON file at any time through the app’s settings. This file is generated on your device and shared using your device’s native share functionality. The backup is not automatically uploaded to any server.
You can also import data from a previous backup or from BGStats, a third-party board game logging app.
6. Data Deletion
Since your data is stored locally on your device:
- Uninstalling the app removes all local data, including your database, photos, preferences, and stored credentials.
- Clearing app data through your device settings achieves the same result.
- If you have synced plays to BoardGameGeek, those plays exist on BGG’s servers independently and are subject to BGG’s data policies.
- To request deletion of your anonymous session from our Supabase backend, contact us at the email address listed below.
7. Device Permissions
| Permission | Platform | Purpose |
|---|---|---|
| Camera | iOS, Android | Take photos to attach to play sessions |
| Photo Library / Media Images | iOS, Android | Select existing photos for play sessions; save shared images |
| Internet | Android | Communicate with Supabase, BGG, and font services |
| Vibration | Android | Haptic feedback for interactive features (e.g., Chooser tool) |
| Background Audio | iOS | Continue timer sounds when the app is in the background |
All permissions are requested at the point of use. The app functions without granting camera or photo library access — photos are an optional feature.
8. Children’s Privacy
TableTopSage is not directed at children under 13. We do not knowingly collect personal information from children under 13. If you believe a child under 13 has provided information through the app, please contact us and we will take steps to delete it.
9. Security
We take reasonable measures to protect your information:
- Sensitive credentials (BGG login) are stored using platform-native encrypted storage.
- Communication with Supabase and BoardGameGeek uses HTTPS encryption.
- Anonymous authentication minimizes the personal data footprint on our servers.
- No personal data is stored server-side beyond an anonymous session identifier and a device label.
10. Changes to This Policy
We may update this Privacy Policy from time to time. Changes will be reflected by the “Last updated” date at the top of this page. We encourage you to review this policy periodically. Continued use of the app after changes constitutes acceptance of the updated policy.
11. Contact Us
If you have questions or concerns about this Privacy Policy or your data, please contact us at: