✗ No subimos las fotos de tus comidas a ningún servidor.
✗ No entrenamos modelos con tus datos.
✗ No vendemos tu información a terceros.
✗ No te rastreamos fuera de la app.
✗ No compartimos tu email con partners comerciales.
Lo que sí hacemos
✓ Ejecutamos Gemma 4 directamente en tu móvil vía LiteRT-LM. La inferencia funciona sin conexión.
✓ Guardamos macros y comidas en tu cuenta Firebase, cifrado en tránsito con TLS 1.3. Puedes borrar tu cuenta desde Perfil.
✓ Usamos Open Food Facts como catálogo abierto. Si un producto no aparece, puedes crearlo tú y queda privado.
✓ Publicamos el código Android que realiza la inferencia para que puedas auditarlo.
Permisos que pedimos y por qué
Solo pedimos los permisos estrictamente necesarios. Cada uno funciona on-device: los datos no salen del móvil salvo lo documentado más abajo.
Permiso
Para qué
¿Salen los datos?
CAMERA
Capturar fotos de comida para que Gemma 4 on-device identifique los ingredientes. Escanear códigos EAN de productos.
No. Las imágenes se procesan localmente y se descartan al terminar. Solo el JSON estructurado (nombres y gramos) se sincroniza a tu cuenta.
RECORD_AUDIO
Log por voz: dictas “200g arroz con pollo” y la app lo transcribe on-device.
No. Usamos el reconocedor de voz on-device de Android. Algunos fabricantes pueden activar transcripción en servidores de Google; la app pide explícitamente modo offline cuando está disponible.
INTERNET
Guardar tus macros y comidas en Firebase. Sincronizar entre móvil y la web.
Sí, pero solo el resumen estructurado (nombres, gramos, kcal, tipo comida, peso). Nunca fotos ni audio.
Datos que recogemos
Email — cuando te registras con email/contraseña o con Google. Se usa solo para identificar tu cuenta.
Identificador de usuario (uid Firebase) — aleatorio, no te identifica fuera de la app.
Macros y comidas — los registros que tú creas. Incluye nombres, gramos, tipo de comida, fecha y hora.
Peso y medidas corporales — si las introduces en “Mi perfil”.
Despensa y precios de productos — si importas un ticket. Los precios se usan para estimar el coste de tus comidas y sugerencias de compra.
Diagnósticos anónimos de fallos — si ocurre un crash, enviamos el stack trace a Firebase Crashlytics sin información personal identificable. Puedes desactivarlo en Ajustes.
Terceros que acceden a tus datos
Google Firebase (Auth, Firestore, Cloud Functions, Crashlytics, Remote Config, App Check). Procesador de datos que custodia la base de datos y nuestro backend. TLS en tránsito y reglas de seguridad estrictas que limitan el acceso al propietario de cada documento. Política de privacidad de Firebase.
Google AdMob (solo si decides mostrar anuncios en futuras secciones no críticas). Identificadores de publicidad anónimos; nunca en flujos de captura o confirmación de comida. Política de anuncios de Google.
Open Food Facts — catálogo público de productos alimentarios. Consultamos sus datos para darte información nutricional; no enviamos tus datos a Open Food Facts. Su política.
Tus derechos (GDPR / LOPDGDD)
Acceso: puedes exportar tus datos desde Web → Exportar → CSV.
Rectificación: edita cualquier comida o dato de perfil en cualquier momento.
Borrado: Perfil → Cerrar sesión → Eliminar cuenta. Tus documentos Firestore se borran en 30 días.
Oposición / portabilidad: escríbenos y te atendemos en menos de 30 días.
Reclamación: puedes presentar reclamación ante la AEPD (aepd.es) si consideras que no hemos atendido tu solicitud.
Menores
La app no está dirigida a menores de 13 años. No recogemos conscientemente datos de menores. Si eres el tutor de un menor que ha creado una cuenta, escríbenos y la borraremos.
Contacto
Para cualquier cuestión de privacidad, ejercicio de derechos o incidencia: privacy@contarcalorias.app. Respondemos en menos de 72 h hábiles.
Preguntas frecuentes
“¿Cómo sé que la foto no sale de mi móvil?”
El flujo de captura en apps/android/ai/inference corre sobre LiteRT-LM on-device. La foto pasa por la inferencia en memoria, genera una salida estructurada (nombres de ítems + gramos) y luego se descarta. La aplicación no tiene el permiso de INTERNET con fines de subir imágenes: su uso de red se limita a Firestore (donde escribimos los ítems ya estructurados, no la imagen) y Firebase Auth.
“¿Y cómo se sincroniza entre Android y web si no subo la foto?”
Lo que se sincroniza es el JSON con los ítems reconocidos (nombre, gramos, confianza), no la imagen. En la web ves los resultados, edítalos, y confirmas. Ver el flujo completo en Drafts pendientes.
“Si cambio de móvil, ¿pierdo mis datos?”
No. Tus macros y comidas viven en Firebase vinculadas a tu cuenta (Google o email/password). Las fotos originales no tienen persistencia — cada captura genera ítems y la imagen se descarta. Si cambias de móvil, el histórico de comidas queda y puedes seguir registrando.
“¿Quién puede leer mis datos?”
Solo tú, con tu cuenta. Las reglas Firestore del proyecto (firebase/firestore.rules) bloquean explícitamente que un usuario lea documentos ajenos. Todas las lecturas comprueban request.auth.uid == resource.data.user_id.
“¿Puedo borrar todo?”
Sí. Desde Perfil puedes borrar tu cuenta. Se elimina tu sesión Firebase Auth; tus documentos Firestore se borran en cascada en los próximos 30 días mediante Functions de purga programadas.
Esta página es vinculante. Si en algún momento cambia el compromiso (por ejemplo, necesitamos subir imágenes para alguna feature), lo comunicamos y pedimos consentimiento explícito antes de activarlo.