Reseñas de Google a BigQuery

Cada reseña de Google, como una fila en tu propio proyecto, con el establecimiento que la generó. Así, la pregunta deja de ser cuál es la valoración y pasa a ser qué establecimiento se desvía de los demás.

  • Configurable en menos de cinco minutos
  • Sin demostración requerida
BigQuery halcyon-analytics.reviews.google_reviews
Google Business Profile 61,482 rows · 34 locations
location
review_date
score
Sheffield Crookes
2026-09-05 09:12
2.0
Bristol Gloucester Rd
2026-09-05 08:47
5.0
Leeds Headingley
2026-09-04 19:30
4.0
Manchester Chorlton
2026-09-04 17:02
5.0
Sheffield Crookes
2026-09-04 16:41
1.0

Les encanta lo fácil que es

  • 10 000 notificaciones en Slack

    chewy

    Tienda online de productos para mascotas

  • 6000 reseñas enviadas a Zendesk

    qonto

    Banco europeo

  • Seguimiento de 12 plataformas

    brevo

    Empresa de software de marketing

  • 100 000 reseñas en 97 tours

    arctic

    Operador turístico en Islandia

  • 4500 establecimientos con seguimiento

    bounce

    Consigna de equipaje

  • 5000 respuestas con IA generadas

    supersushi

    Cadena de restaurantes de sushi

La pregunta es qué establecimiento se desvía

Google Business Profile muestra una valoración por establecimiento, pero nunca las pone lado a lado. Reviewflowz escribe el nombre del establecimiento en cada fila de reseña, así que detectar que treinta y uno tienen valoraciones entre 4,5 y 4,7 y uno tiene 3,4 es cuestión de un GROUP BY y un ORDER BY. Cuando toda la cartera converge, eso indica un cambio de precio. Un establecimiento que cae mientras los demás se mantienen es un problema local.

BigQuery Query editor
-- which sites are behind their own region
SELECT r.location,
       ROUND(AVG(r.score), 1) AS rating,
       COUNT(*) AS reviews
FROM `halcyon-analytics.reviews.google_reviews` r
JOIN `halcyon-analytics.ops.sites` s USING (location)
WHERE r.review_date >= '2026-03-01'
GROUP BY r.location
ORDER BY rating
Results 5 of 34 locations in 0.6s
location rating reviews
Sheffield Crookes 3.4 96
Nottingham W Bridgford 4.5 88
Leeds Headingley 4.6 118
Manchester Chorlton 4.6 173
Bristol Gloucester Rd 4.7 141

Cómo las filas llegan realmente a BigQuery

No hay un destino gestionado en BigQuery. Reviewflowz mantiene una hoja de cálculo de Google actualizada en tu Drive: cada reseña nueva genera una fila nueva en menos de media hora, y cada edición actualiza su fila. Con un CREATE EXTERNAL TABLE contra la URL de la hoja, las consultas a google_reviews funcionan como con cualquier otra tabla. Para una tabla particionada nativa, usa en su lugar la API de Reviews o su webhook.

resyncs every 30 min
Google Business Profile Google Sheets BigQuery
Google
reviews
Sheet in
your Drive
External table
in BigQuery
BigQuery Run once
CREATE EXTERNAL TABLE
  `halcyon-analytics.reviews.google_reviews`
OPTIONS (
  format = 'GOOGLE_SHEETS',
  uris = ['https://docs.google.com/spreadsheets/d/1a9F...'],
  skip_leading_rows = 1
)

Reads the sheet at query time, so there is nothing to schedule and nothing to keep alive.

Pruébalo gratis 14 días

Tu historial de reseñas se importa al conectar, así que tienes a qué responder desde el primer minuto.

Combínalo con lo que ya mantienes por establecimiento

Cada negocio con varios establecimientos mantiene una tabla con una fila por establecimiento: ingresos, horas de personal, afluencia, fecha de la última renovación. Las reseñas de Google llegan etiquetadas por establecimiento, así que combinarlas es un JOIN. La valoración junto a las horas de personal muestra si el establecimiento del que todos se quejan es el que se quedó corto de personal. Combina tus propios segmentos y compara un establecimiento con sus pares.

BigQuery
reviews.google_reviews
location
review_date
score
review_text
USING (location)
Your data
ops.sites
location
revenue
staff_hours
footfall
Result
location rating ops.sites revenue_per_visit
Sheffield Crookes 3.4 GBP 11.20
Leeds Headingley 4.6 GBP 18.40
Bristol Gloucester Rd 4.7 GBP 19.10

Una tabla, no un informe

Una fila por reseña de Google: establecimiento, id de reseña, timestamp, valoración, texto completo, idioma detectado, etiquetas y un enlace a la reseña en Maps. El texto es una columna STRING, así que el término que te importa es una cláusula WHERE. El idioma se detecta a partir del propio texto. La tabla contiene la reseña, no la respuesta de la empresa, así que la cobertura de respuestas por establecimiento no aparece en ella.

BigQuery halcyon-analytics.reviews.google_reviews Schema
location STRING

One row per review, tagged to the site

Join key
review_id STRING Stable, so updates land in place
review_date TIMESTAMP When the review was posted
score FLOAT64 1.0 to 5.0
review_text STRING The full text, queryable
language STRING Detected from the text
tags STRING Themes, filled as reviews arrive
review_url STRING Back to the review on Google Maps

Google gives one profile per location, so the site name is on every row.

FAQs

¿Hay un conector nativo de BigQuery?

No, y sería deshonesto dar a entender lo contrario. Reviewflowz sincroniza una Hoja de cálculo de Google en tu propio Drive, y BigQuery lee esa hoja como una tabla externa con una sola declaración CREATE EXTERNAL TABLE. Si prefieres una tabla nativa particionada, la API de reseñas más un trabajo de carga programado te la da. Ambos son tareas habituales para un equipo de datos, y ninguno de los dos necesita una demostración.

¿El establecimiento realmente aparece en cada fila?

Sí. Google te da una ficha de reseñas por establecimiento, y Reviewflowz mantiene esa relación uno a uno, así que cada fila de reseña lleva consigo el establecimiento al que pertenece. Llega como el nombre de establecimiento de Google, no como un id tuyo, así que declaras esa columna como establecimiento al crear la tabla externa y mapeas los nombres a tus propias claves de sitio una sola vez. A partir de ahí es una clave de unión normal.

¿Cuán actualizada está la tabla?

La hoja se resincroniza cada 30 minutos. Una tabla externa lee la hoja en el momento de la consulta, así que una consulta que ejecutes ahora ve todo lo que escribió la última sincronización. Un trabajo de carga en una tabla nativa está tan actualizado como la programación que le asignes.

¿Qué columnas tiene la tabla?

La hoja sincronizada tiene un encabezado fijo de 28 columnas, una fila por reseña: el id de la reseña, el establecimiento, la plataforma de reseñas, la fecha de la reseña, la valoración, el título, el texto completo, el idioma detectado, el autor de la reseña, las etiquetas, un enlace de vuelta a la reseña, y el resto. No hay columna de respuesta ni pestañas por plataforma, así que todo queda en una única tabla plana sobre la que puedes definir un esquema.

¿La carga inicial incluye nuestro histórico de reseñas de Google?

Sí, en un plan de pago: la importación del histórico de reseñas trae, con un solo clic, todas las reseñas antiguas de Google de todos tus establecimientos, así que la línea de tendencia queda completa desde el primer día, no a los tres meses. Durante la prueba gratuita, las reseñas nuevas llegan a medida que se publican, y el histórico se importa en cuanto te suscribes a un plan de pago.

¿Qué pasa si alguien edita o elimina su reseña?

La fila se actualiza con la nueva valoración y el nuevo texto, así que cualquier consulta refleja la corrección. Cuando una reseña desaparece de tu ficha de Google, su fila desaparece en la siguiente sincronización, de modo que la tabla nunca guarda datos que ya no existen en Google.

¿Necesito una demostración para comenzar?

No. Conecta tu Google Business Profile y la Hoja de cálculo de Google tú mismo en menos de cinco minutos, y luego ejecuta un CREATE EXTERNAL TABLE contra ella. Prueba gratuita de 14 días, sin tarjeta de crédito.

Una valoración por sí sola no explica nada. El establecimiento junto a ella sí.

Configurable en menos de cinco minutos. Sin demostración requerida.