Reseñas de App Store a BigQuery

Cada reseña de App Store como una fila en su propio proyecto, con el país de la tienda y el idioma en que fue escrita. Las dos preguntas que App Store Connect nunca responde se convierten en SQL corriente.

Configúrelo en menos de cinco minutos • Sin necesidad de demo

App Store BigQuery 128,412 rows

Destination table

fjord-analytics.reviews.app_store_reviews

review_date score country review_text
2026-09-07 5.0 Australia Lost signal above the treeline, map kept working.
2026-09-07 1.0 Japan 検索に日本語が入力できません
2026-09-06 4.0 Canada Route planning is quick. Water refills next?
2026-09-06 5.0 Germany Höhenlinien sind gut lesbar, auch bei Sonne.
Synced 12 minutes ago
  • chewy
  • qonto
  • brevo
  • jins
  • filmin
  • lugg

La pregunta que App Store Connect nunca responde

App Store Connect le da una valoración y una lista. Nunca le dirá que siete tiendas están entre 4,4 y 4,7 mientras Japón está en 1,6, porque no tiene forma de poner esos números uno junto al otro. En BigQuery eso es un GROUP BY sobre una columna que ya tiene, y son cinco líneas de SQL.

Apple archiva cada reseña de App Store bajo una tienda, y Reviewflowz escribe esa tienda en cada fila como país. Así el país es un dato real y no una suposición a partir del idioma, y un problema con forma de mercado tiene una forma que se puede consultar.

Esa forma es el diagnóstico. Un fallo general se lee como todos los países cayendo a la vez. Una cadena traducida que ya no cabe en su botón, o un cuadro de búsqueda que dejó de aceptar texto en japonés, se lee como un solo país cayendo mientras el resto no se mueve. Qué país es le dice a qué equipo llamar.

El siguiente paso es una cláusula WHERE, porque el texto completo de la reseña es una columna corriente. Cuente las reseñas que mencionan la búsqueda desde el primero de mes, divididas por país, y tiene el informe de fallo antes de que nadie lo abra.

BigQuery Query editor
-- rating by storefront since 4.2 shipped
SELECT country,
       ROUND(AVG(score), 1) AS rating,
       COUNT(*) AS reviews
FROM `fjord-analytics.reviews.app_store_reviews`
WHERE review_date >= '2026-09-01'
GROUP BY country
ORDER BY rating
Results 5 rows in 0.4s
country rating reviews
Japan 1.6 214
Spain 4.4 96
United States 4.6 1,240
Germany 4.6 331
Australia 4.7 188

Una tabla, no un informe

Lo que llega es una tabla, no un panel que diseñó otra persona. Una fila por reseña de App Store: el id de la reseña, la marca de tiempo, la puntuación, el título, el texto completo, el país, el idioma, las etiquetas y un enlace de vuelta a la reseña. Columnas sencillas, nada que haya que reconstruir por ingeniería inversa.

El texto de la reseña es una columna STRING como cualquier otra, así que el término que le interesa es una cláusula WHERE en lugar de una tarde de lectura. Reviewflowz detecta el idioma a partir del propio texto, por eso una reseña en alemán publicada en la tienda suiza se sigue agrupando como usted espera.

Las etiquetas llegan ya asignadas. Reviewflowz lee cada reseña en el idioma en que fue escrita y la clasifica según los temas que plantean sus usuarios, así que una reseña de una estrella en japonés sobre la búsqueda y otra en inglés sobre lo mismo llevan la misma etiqueta y cuentan como un solo número.

Hay una columna que no va a encontrar, y merece decirlo claramente: Apple no adjunta la versión de la aplicación a la reseña, así que nada río abajo puede llevarla. Cualquiera que le venda calidad de reseñas por versión a partir de un feed de App Store le está vendiendo un campo que Apple no publica.

BigQuery fjord-analytics.reviews.app_store_reviews Schema
review_id STRING One row per review, stable
review_date TIMESTAMP When it was posted
score FLOAT64 1.0 to 5.0
title STRING The review headline
review_text STRING The full text, queryable
country STRING Apple’s storefront territory
language STRING Detected from the text, ISO 639-1
tags ARRAY Themes, filled as reviews arrive
review_url STRING Back to the review on the store

Cómo llegan realmente las filas a BigQuery

No existe un destino de BigQuery gestionado en el que hacer clic, y esta página no va a fingir que sí. Lo que Reviewflowz le da es una Google Sheet en su propio Drive que mantiene al día: una nueva reseña de App Store es una nueva fila en menos de media hora, una reseña editada actualiza su fila, y una reseña que Apple retira pierde su fila.

BigQuery lee una Google Sheet respaldada en Drive como una tabla externa. Un solo CREATE EXTERNAL TABLE contra la URL de la hoja y app_store_reviews ya existe en su dataset, se consulta como cualquier otra tabla, y está al día en el momento de la consulta porque lee la hoja, no una copia. Nada que programar, nada que mantener vivo.

Si prefiere una tabla nativa particionada, la Review API es el otro camino. Consúltela periódicamente o use el webhook, y cárguela con el job que ya usa para cualquier otra fuente. Es trabajo que su equipo de datos escribe una vez, y llamarlo job en vez de casilla es precisamente la idea.

En cualquiera de los dos casos, el historial viene incluido. En un plan de pago, un clic carga todas las reseñas de App Store anteriores, así que la línea de tendencia empieza completa en lugar de llenarse durante el trimestre siguiente. Conecte la ficha el martes por la mañana y esa misma tarde puede consultar tres años de reseñas.

every 30 min at query time
App Store R Google Sheets BigQuery
App Store
reviews
Reviewflowz Sheet in
your Drive
External
table
BigQuery Run once
CREATE EXTERNAL TABLE
  reviews.app_store_reviews
OPTIONS (
  format = 'GOOGLE_SHEETS',
  uris = ['https://docs.google.com/...'],
  sheet_range = 'Reviews'
)

Prefer a native partitioned table? The other road is the Review API and a load job you run on your own schedule.

La versión que Apple nunca adjunta a la reseña

Como Apple no incluye la versión de la aplicación en la reseña, ninguna herramienta de reseñas puede decirle a qué versión se refiere una de una estrella. Su warehouse sí puede, y lo hace con datos que usted ya tiene: una tabla de lanzamientos con la versión y la fecha en que se publicó, justo lo que le falta a Apple.

Cruce ambas tablas por fecha y recupera la calidad de las reseñas por versión. La 4.1 está en 4,6 sobre dos mil reseñas, la 4.2 cae a 2,9 sobre cuatrocientas, y la corrección 4.2.1 se recupera a 4,5. Esa es la autopsia del lanzamiento, y es un solo cruce, no un proyecto.

El mismo truco funciona con todo lo demás que ya guarda. Suscripciones, volumen de tickets, sesiones sin fallos, ingresos por tienda: cruce por la clave o el rango de fechas que ya usa, y si quienes dejan una estrella cancelan antes deja de ser una intuición y pasa a ser un número.

Esta es la razón de fondo para llevar las reseñas a un warehouse en vez de leerlas en una herramienta. Una herramienta de reseñas solo puede hablarle de reseñas. El warehouse es donde una reseña queda junto al lanzamiento, el fallo y el reembolso que la explican.

App Store app_store_reviews
review_date
score
country
releases your data
version
shipped_at
JOIN ON r.review_date >= x.shipped_at
version avg rating reviews
4.1 4.6 2,104
4.2 2.9 488
4.2.1 4.5 301

Su proyecto, sus reglas

La tabla vive en su proyecto de Google Cloud, en la región que eligió, bajo el IAM que ya gestiona y la política de retención que ya definió. Dar acceso a un data scientist son los mismos clics que para cualquier otro dataset, y retirarlo son los mismos clics a la inversa.

Usted decide qué sale. Elija las fichas de App Store y, por cada una, las tiendas. Deje la lista de países vacía y se incluyen todos los mercados en los que vende la aplicación, o indique Japón y Alemania y solo llegan esas filas. Añada un filtro de puntuación y la tabla solo guarda de una a tres estrellas.

Así el equipo de localización recibe un dataset con solo sus mercados sin que nadie mantenga un filtro, y el responsable de soporte recibe uno con solo las puntuaciones bajas, desde la misma cuenta y las mismas fichas. Dos alcances alimentando dos tablas es una configuración normal, no un apaño.

Algo que conviene saber antes de dimensionar nada: el volumen de reseñas de App Store no se reparte de forma uniforme. Se acumula en las horas posteriores a un lanzamiento y en los días posteriores a una selección destacada, así que una tabla que parece tranquila todo el mes reúne la mayoría de sus filas en dos tardes.

BigQuery

Your Google Cloud project

fjord-analytics.reviews

Location

europe-west1

Access

your IAM

Retention

your policy

What flows in

Listings
Fjord Fjord Pro
Countries
JapanGermanyUnited States + 31 more

Leave it empty and every storefront is included.

Rating
1 to 3 stars selected

Las reseñas van junto al lanzamiento que las provocó.

Configúrelo en menos de cinco minutos. Sin necesidad de demo.

¿Hay un conector nativo de BigQuery?

No, y sería deshonesto insinuar que sí lo hay. Reviewflowz sincroniza una Google Sheet en su propio Drive, y BigQuery lee esa hoja como tabla externa con una sola sentencia CREATE EXTERNAL TABLE. Si prefiere una tabla nativa particionada, la Review API más un job de carga programado le llevan ahí. Ambas son tareas normales para un equipo de datos, y ninguna necesita una demo.

¿Qué tan actualizada está la tabla?

Por defecto, Reviewflowz revisa App Store cada dos horas, cada diez minutos con el ajuste de alta frecuencia, y sincroniza la hoja cada 30 minutos. Una tabla externa lee la hoja en el momento de la consulta, así que una consulta que ejecute ahora ve lo último que escribió la sincronización. Un job de carga hacia una tabla nativa está tan al día como su programación.

¿Qué columnas tiene la tabla?

El id de la reseña, la aplicación, la plataforma, la fecha y hora de la reseña, la puntuación, el título, el texto completo, el país de la tienda, el idioma detectado, el apodo del autor, las etiquetas y un enlace de vuelta a la reseña. Apple no adjunta la versión de la aplicación a la reseña, así que no hay columna de versión. Cruce su propia tabla de lanzamientos por fecha para recuperar los números por versión.

¿La primera carga incluye nuestro historial de App Store?

Sí, en un plan de pago: un clic carga todas las reseñas de App Store anteriores, así que la línea de tendencia está completa desde el primer día en lugar de a los tres meses. Durante la prueba gratuita las reseñas nuevas llegan a medida que se publican, y el historial se carga en cuanto se suscribe.

¿Qué pasa cuando alguien edita su reseña después de que publicamos la corrección?

La fila se actualiza en el mismo sitio con la nueva puntuación y el nuevo texto, así que una consulta sobre ella refleja la corrección. Cuando Apple retira una reseña de la tienda, la fila se elimina en la siguiente sincronización, lo que significa que la tabla nunca conserva una versión de la verdad que App Store ya no sostiene.

¿Necesito una demo para empezar?

No. Conecte usted mismo su ficha de App Store y la Google Sheet en menos de cinco minutos, y luego ejecute un CREATE EXTERNAL TABLE contra ella. Prueba gratuita de 14 días, sin tarjeta de crédito.