Privacy Policy
Last updated: September 23, 2026
RiichiCam is a free, open-source riichi mahjong scoring tool. This policy explains what data is collected, why, and what choices you have. RiichiCam has no accounts and collects only what is needed to provide scanning, optional training contributions, and basic site analytics.
1. What we collect
- Camera images: When you use tile detection, the photo is sent from your browser to RiichiCam's Vercel broker and then to our private inference service solely to identify tiles. RiichiCam does not save detection images unless you explicitly opt in to contribute them as training data.
- Training metadata (opt-in only): When you consent to contribute training data, each saved image is accompanied by: a timestamp, the scan mode used, an anonymous session ID (randomly generated per session, not linked to you), image dimensions, and the model's tile predictions.
- Analytics and request information: We use Vercel Web Analytics and Google Analytics 4 for usage statistics such as page views, approximate location, browser, device type, and session activity. Vercel may also process network and request information, including IP address, to operate and secure the hosted site.
- Local storage: Your scoring preferences and training consent choice are saved in your browser's local storage. This data never leaves your device.
RiichiCam does not ask for your name, email address, or account information. Service providers may process technical information needed to deliver the site as described below.
2. Camera access and image processing
Camera access is requested only when you use the tile-scanning feature and is never active in the background. The image is sent over HTTPS to RiichiCam's Vercel broker, which forwards it to a private RiichiCam inference service. The service returns detected tile labels and does not store the image. The detector model runs only on that private service and is not delivered to your browser.
Images may incidentally capture your hands or surroundings. RiichiCam uses them only to perform the requested scan and does not save them unless you opt in. Vercel and other service providers may process request and log data under their own policies.
3. Training data contribution (opt-in)
If you choose to help improve RiichiCam, your scanned images and accompanying metadata are stored privately in Vercel Blob storage. This data is used solely to retrain and improve the tile detection model. It is not shared with third parties, sold, or used for advertising.
You can withdraw consent at any time using the toggle in the app footer. Withdrawing consent stops future saves but does not automatically delete previously saved images. To request deletion of your contributed data, contact us at the address in §8.
4. Cookies and analytics
- Vercel Web Analytics: Vercel reports aggregated page, referrer, country, browser, operating-system, and device information. It does not use third-party cookies or provide us with individual visitor profiles.
- Google Analytics 4: Sets first-party cookies (
_ga,_ga_*) to distinguish sessions and reports aggregated usage information. Google Analytics uses IP addresses during collection to derive location, then discards them before logging. You can opt out via Google's opt-out browser add-on.
5. Third-party services
- Private inference service: Tile detection runs on a private RiichiCam server. It receives the image only for the duration of detection and returns tile predictions. Model files are not delivered to users, and detection images are not publicly accessible.
- Vercel: Hosting, serverless functions, Blob storage, and analytics. Subject to Vercel's privacy policy.
- Google Analytics: Usage analytics. Subject to Google's privacy policy.
6. Data retention
- Detection images (not opted-in): Sent only to perform the requested scan and not saved by RiichiCam after the response is returned. Service providers may retain technical or request logs under their own policies.
- Training images (opted-in): Retained indefinitely for model training. Deleted upon request (see §8).
- Analytics: Retained per each service's default policy (Google Analytics default: 14 months).
7. Your rights
Depending on where you live, you may have the right to:
- Access the training data associated with your session
- Request correction or deletion of your contributed images
- Withdraw consent for future data collection at any time (in-app toggle)
- Lodge a complaint with a data protection authority (EU residents: your national DPA)
Because we do not collect identifying information, data subject requests are fulfilled on a best-effort basis using the anonymous session ID stored in your browser's local storage. To exercise any right, email us with your session ID (visible in local storage under the key trainingSessionId) and we will respond within 30 days.
8. Children's privacy
RiichiCam is not directed at children under 13. We do not knowingly collect personal information from children. If you believe a child has contributed data, contact us and we will delete it promptly.
9. Changes to this policy
If we make material changes, we will update the "Last updated" date at the top of this page. Continued use of RiichiCam after changes constitutes acceptance of the revised policy.
10. Contact
Questions, deletion requests, or data subject requests: support@riichicam.com