Product Craft Bible
App Rating Prompt
Inicio Auth y Permisos App Rating Prompt
Auth y Permisos

App Rating Prompt

8 reglas Apple "Ratings & Reviews" (SKStoreReviewController) · Google Play In-App ReviewApple "Ratings & Reviews" (satisfaction; don't interrupt) · Appbot (drop al mover el prompt al onboarding) · criterioApple App Review Guideline 3.2.2(x) · Google Play In-App Review (no preguntar antes)Apple "Ratings & Reviews" (max 3 / 365 días) · Google Play In-App Review (cuota temporal)
106

App Rating Prompt

8 reglas
964

Usa la API nativa del sistema; nunca construyas tu propio modal de calificación

Tanto iOS (SKStoreReviewController) como Android (In-App Review API) ofrecen un flujo de calificación estandar que mantiene al usuario dentro de la app sin redirigirlo a la tienda. Al usar la API nativa, el sistema gobierna la frecuencia por su cuenta y garantiza que el prompt no se muestre en exceso. Un modal propio no respeta esas cuotas y produce experiencias rotas: el usuario ve un botón "Califica" pero el dialogo nunca aparece porque la cuota ya se agoto. Google es explicito: no expongas un CTA que dispare la API, porque el usuario puede haber alcanzado su cuota y el flujo no se mostrara.

Apple "Ratings & Reviews" (SKStoreReviewController) · Google Play In-App Review
Preferir
Tarea 5 completada
Disfrutas la app?
Dialogo del sistema · iOS / Android
requestReview() / launchReviewFlow() · el SO decide si mostrarlo
Evitar
Califica la app
Cuota agotada: el botón no hace nada
Un CTA propio que dispara la API: si la cuota se agoto, no aparece el dialogo
965

Pide la calificación tras un momento de exito, nunca al inicio ni después de un error

El instante de mayor disposición para dejar una buena reseña coincide con el momento inmediatamente posterior a un logro dentro de la app: completar una tarea, un nivel, un entrenamiento. Apple lo dice literal: pide la calificación cuando el usuario sienta satisfacción, justo después de completar una acción, y sin interrumpir su actividad. Pedirla en el lanzamiento o durante el onboarding, antes de que el usuario perciba valor, baja la cantidad y la calidad de las reseñas. Y mostrar el prompt tras un fallo técnico o un mensaje de error solo cosecha reseñas negativas y dana la relación.

Apple "Ratings & Reviews" (satisfaction; don't interrupt) · Appbot (drop al mover el prompt al onboarding) · criterio
Preferir
Primer entrenamiento de la semana completado prompt
Pico de satisfacción: el usuario acaba de obtener valor real
Evitar
Pantalla 2 del onboarding (sin usar la app aún) prompt
Justo después de un error de sincronización prompt
966

No hagas review gating: muestra el flujo a todos, no solo a los satisfechos

El review gating es la practica de preguntar primero "Te gusta la app?" y, según la respuesta, enviar a los satisfechos a la tienda y a los insatisfechos a un formulario de soporte, bloqueando su acceso a la reseña publica. Apple y Google lo prohiben explicitamente. Google Play: tu app no debe hacer ninguna pregunta antes ni durante el rating card, incluyendo opiniones ("Te gusta la app?") o predictivas ("La calificarias con 5 estrellas?"). Apple, guideline 3.2.2(x): las apps no deben forzar al usuario a calificar o resenar para acceder a funcionalidad; manipular reseñas puede costar la expulsión del Apple Developer Program.

Apple App Review Guideline 3.2.2(x) · Google Play In-App Review (no preguntar antes)
Preferir
Reseña (todos los usuarios)
Flujo nativo directo, sin filtro previo
Evitar
Te gusta la app?
Si
→ App Store
No
→ soporte interno
Gating prohibido por 3.2.2(x) y Google Play
967

Respeta los límites de frecuencia: máximo 3 veces por año en iOS, sin forzar en Android

El sistema gestiona la frecuencia por ti cuando usas la API nativa. Apple lo fija literal: StoreKit muestra el dialogo de calificación como máximo tres veces dentro de un periodo de 365 días por dispositivo; las llamadas extra se ignoran en silencio. Google Play aplica una cuota temporal no publicada, así que invocar launchReviewFlow más de una vez en un periodo corto (por ejemplo, menos de un mes) puede no mostrar nada. Diseña tu lógica de disparo eligiendo pocos hitos de alto valor al año, en lugar de llamar en cada sesión confiando en que el sistema filtrara: eso agota las tres oportunidades anuales en las primeras semanas.

Apple "Ratings & Reviews" (max 3 / 365 días) · Google Play In-App Review (cuota temporal)
Preferir
3 hitos de alto valor en 365 días
Ene
Dic
Hito 10 acciones · hito 50 acciones · renovación anual
Evitar
requestReview() en cada sesión
Ene
Dic
Las 3 cuotas se queman en semanas; el resto se ignora en silencio
968

No interrumpas tareas criticas: espera a que el flujo activo termine

Mostrar el dialogo de calificación mientras el usuario esta en una tarea exigente (un pago, un formulario, un juego activo) eleva la fricción y puede provocar abandono. Apple lo resume: asegurate de no interrumpir su actividad. El prompt debe dispararse solo en un estado de reposo satisfecho: cuando el usuario acaba de completar algo y aún no inicio la siguiente acción. Un retraso corto de 1 a 2 segundos después del evento de exito es preferible a lanzar el dialogo en el fotograma exacto del resultado, que además suele pisar animaciones de confirmación.

Apple "Ratings & Reviews" ("don't interrupt their activity") · criterio
Preferir
Pedido confirmado
Disfrutas la app? · dialogo del sistema
Pantalla de confirmación, 1.5 s después del check
Evitar
Dirección de envio
Disfrutas la app?
Prompt en mitad del formulario de checkout
969

Copy honesto: nunca coacciones 5 estrellas ni ofrezcas recompensas por una reseña

El texto del prompt no debe sugerir, implicita ni explicitamente, que el usuario deje 5 estrellas ni que recibira algo a cambio de una reseña positiva. Copys como "Dale 5 estrellas y desbloquea premium" o "Nos darias la calificación más alta?" violan directamente las politicas de Apple y Google. Google Play prohibe incluso las preguntas predictivas del tipo "La calificarias con 5 estrellas?". Ofrecer recompensas, descuentos o moneda in-app a cambio de reseñas viola ambas politicas aunque no exijas que la reseña sea positiva. El copy debe invitar a una opinion genuina, reconociendo que toda retroalimentación es valiosa, sin presión emocional ni material.

Google Play In-App Review (no preguntas predictivas) · Apple App Review Guidelines (manipulación de reseñas)
Preferir
Tienes un momento para calificar la app?
Tu opinion nos ayuda a mejorar.
Sin mencionar estrellas ni recompensas
Evitar
Danos 5 estrellas y desbloquea una semana premium gratis!
Coacción + recompensa: viola Apple y Google
970

Ofrece feedback interno a los insatisfechos sin bloquear la reseña publica

La alternativa legitima al review gating es ofrecer, después de que el usuario haya visto el prompt nativo (no antes), un punto de contacto con soporte para quien quiera reportar un problema. Esto no reemplaza ni condiciona el flujo de rating: ambos caminos coexisten. El usuario insatisfecho puede calificar publicamente y además pedir ayuda, lo que mejora la percepción de marca y la calidad del feedback accionable. La clave es el orden: primero el flujo nativo, luego, de forma sutil, la oferta de soporte. Apple recomienda además que tu información de contacto sea fácil de encontrar para dar una vía directa de ayuda.

Apple "Ratings & Reviews" (contacto de soporte visible) · babich.biz (servicio primero, luego pedir reseña) · criterio
Preferir
1
Flujo nativo de rating
Independiente del resultado, sin filtro previo
2
Encontraste algun problema? Escribenos →
Oferta sutil de soporte, después del prompt
Evitar
Tienes algun problema con la app?
Antes del prompt: solo a quien dice "No" se le muestra el rating
971

No dispares el prompt encima del lector de pantalla: deja que termine la lectura

El dialogo nativo del sistema (SKStoreReviewController / In-App Review) ya es accesible por diseño, pero la lógica de tu app puede romper la experiencia. Si lanzas el prompt mientras el foco de VoiceOver o TalkBack esta en mitad de un flujo critico, la persona con discapacidad visual queda desorientada y el foco se interrumpe abruptamente. La pantalla de exito que precede al prompt debe tener una etiqueta accesible clara ("Nivel 5 completado. Felicitaciones.") y el disparo debe esperar a que el lector termine de leerla. Los escaneres automáticos solo detectan cerca del 30-40% de los problemas WCAG; el orden de lectura y el comportamiento interactivo exigen prueba manual con lector real.

Apple SKStoreReviewController (sheet del sistema accesible) · boia.org / audioeye (30-40% detección automática)
Preferir
Nivel 5 completado
Felicitaciones
VoiceOver: "Nivel 5 completado. Felicitaciones."
lee
prompt 1.5s
El prompt espera a que el lector termine
Evitar
Nivel 5 completado
VoiceOver: "Nivel 5 com..."
requestReview() // mismo frame que la victoria
El sheet corta la lectura y roba el foco a media palabra