Avaliações do Trustpilot no BigQuery
Toda avaliação do Trustpilot como uma linha no seu próprio projeto, ao lado dos pedidos que a produziram. Uma contagem de avaliações é curiosidade. Avaliações a cada mil pedidos é uma métrica operacional, e está a um JOIN de distância.
Configure em menos de cinco minutos • Sem necessidade de demo
Destination table
northwind-analytics.reviews.trustpilot_reviews
Uma contagem é curiosidade. Uma taxa é um instrumento.
O Trustpilot convida os seus clientes depois que compram. É isso que é o Automatic Feedback Service dele, um e-mail alguns dias depois de cada pedido, então o seu volume de avaliações acompanha o seu volume de pedidos muito mais de perto do que acompanha qualquer coisa que o marketing faça. Um mês com mais avaliações costuma ser só um mês com mais pedidos.
A sua tabela de pedidos já vive no BigQuery. Coloque as avaliações do Trustpilot ao lado dela e avaliações a cada mil pedidos, e a fatia delas em uma estrela, viram um GROUP BY sobre a semana em que cada pedido foi enviado. Cinco linhas de SQL, e nenhuma planilha para alguém manter.
Uma taxa se mantém estável enquanto o negócio roda normalmente, e é isso que a torna legível. Quatro por cento de uma estrela toda semana durante um trimestre, depois dezessete na semana de 17 de agosto contra um volume de pedidos estável, não é o humor mudando. É algo operacional que quebrou numa data.
O acompanhamento é uma cláusula WHERE, porque o texto completo da avaliação é uma coluna comum. Conte as avaliações daquela semana que mencionam o depósito ou a transportadora, leia seis delas, e a causa se nomeia antes de alguém abrir um ticket.
-- one-star share by the week the order shipped
SELECT
o.ship_week,
o.orders,
COUNT(r.review_id) AS reviews,
ROUND(100 * COUNTIF(r.score = 1)
/ COUNT(r.review_id), 1) AS pct_one_star
FROM `northwind-analytics.core.weekly_orders` o
LEFT JOIN `northwind-analytics.reviews.trustpilot_reviews` r
ON DATE_TRUNC(r.review_date, WEEK) = o.ship_week
GROUP BY o.ship_week, o.orders
ORDER BY o.ship_week Algo que te avisa, em vez de algo que você lembra de abrir
Um painel é algo que as pessoas olham quando já desconfiam de algo. Uma consulta agendada é algo que procura por você. O BigQuery roda uma na agenda que você definir, escreve o resultado numa tabela, e você aponta o que já dispara os seus alertas para essa tabela.
A condição é a taxa, não a contagem. Uma fatia de uma estrela acima de oito por cento nos últimos sete dias, sobre uma base de pelo menos duzentas avaliações para que uma semana quieta não dispare o alerta à toa. O limiar vem do seu próprio histórico, que você tem desde o primeiro dia.
O que isso te dá é uma semana de aviso em vez de um mês de post-mortem. O seu TrustScore dá muito mais peso às avaliações recentes do que às antigas, então uma quinzena ruim move o número público de um jeito que um ano ruim de três anos atrás já não consegue.
Nada dessa engrenagem é nossa. A consulta agendada é do BigQuery, o alerta é o que o seu time já usa, e a única parte que o Reviewflowz possui é que as linhas estão lá e atualizadas. É essa a divisão certa, e é por isso que isso funciona sobre um stack que você já escolheu.
Scheduled query
trustpilot_one_star_watch
-- writes a row only when the trailing week breaks it
SELECT CURRENT_DATE() AS checked_on,
ROUND(100 * COUNTIF(score = 1)
/ COUNT(*), 1) AS pct_one_star
FROM `northwind-analytics.reviews.trustpilot_reviews`
WHERE review_date >= CURRENT_DATE() - 7
HAVING COUNT(*) >= 200 AND pct_one_star > 8.0 checked_on 2026-08-24
Threshold 8.0, base 233 reviews
Nothing fires on a quiet week. The two hundred review floor is what stops a slow Tuesday from reading as a crisis.
Uma tabela, não um relatório
O que chega é uma tabela, não um painel que outra pessoa desenhou. Uma linha por avaliação do Trustpilot num cabeçalho fixo de 28 colunas: o id da avaliação, o perfil, a data, a nota, o título, o texto completo, o idioma, as tags e um link de volta para a avaliação. Colunas simples, nada para fazer engenharia reversa.
O texto da avaliação é uma STRING como qualquer outra, então a reclamação que sempre volta é uma cláusula WHERE em vez de uma lembrança. Todo mundo sabe que a transportadora é um problema porque alguém lembra de uma avaliação que dizia isso. A memória guarda a avaliação mais marcante e perde a contagem. Uma tabela guarda a contagem.
As tags chegam preenchidas. O Reviewflowz lê cada avaliação em qualquer idioma em que foi escrita e a arquiva sob o tema real, então uma avaliação em francês sobre uma livraison e uma em inglês sobre uma entrega somam um número só em vez de dois.
Uma coisa que você não vai encontrar, dita abertamente em vez de deixada para você descobrir: as suas respostas. O esquema sincronizado traz a avaliação, não a resposta por baixo dela, e não há abas por plataforma. Cobertura de resposta é a Review API, não esta tabela.
The header is fixed at 28 columns, with no per-platform tabs. There is no reply column either, so your replies are not in this table.
Como as linhas realmente entram no BigQuery
Não existe um destino do BigQuery para escolher, e esta página não vai fingir que existe. O que o Reviewflowz te dá é uma planilha do Google Sheets no seu próprio Drive que ele mantém atualizada: uma nova avaliação do Trustpilot é uma nova linha no topo em até meia hora, e uma edição atualiza a própria linha.
O BigQuery lê uma planilha vinculada ao Drive como uma tabela externa. Um único CREATE EXTERNAL TABLE contra a URL da planilha e trustpilot_reviews existe no seu conjunto de dados, é consultável como qualquer outra tabela, e está atualizada no momento da consulta porque lê a planilha, não uma cópia. Nada para agendar, nada para manter vivo.
Se você preferir uma tabela particionada nativa, a Review API é o outro caminho. Consulte-a periodicamente ou use o webhook, depois carregue com o job que você já roda para toda outra fonte. Chamar isso de job em vez de uma caixinha para marcar é o ponto.
De qualquer forma, o histórico vem junto. Carregar as avaliações passadas do Trustpilot é uma etapa num plano pago, então a base que o seu limiar precisa já existe no primeiro dia. Conecte o perfil pelo Trustpilot Business e ele é consultado a cada quinze minutos.
CREATE EXTERNAL TABLE
reviews.trustpilot_reviews
OPTIONS (
format = 'GOOGLE_SHEETS',
uris = ['https://docs.google.com/...'],
sheet_range = 'Reviews'
) O seu projeto, as suas regras
A tabela vive no seu projeto do Google Cloud, na região que você escolheu, sob o IAM que você já usa e a política de retenção que você já escreveu. Dar acesso a um analista são os mesmos poucos cliques de qualquer outro conjunto de dados ali, e tirar o acesso depois são os mesmos poucos cliques de volta.
Você escolhe o que sai, e os controles são deliberadamente poucos: quais perfis do Trustpilot, quais notas, e se uma avaliação precisa ter texto escrito para contar. De uma a três estrelas numa tabela de escalação, tudo na de análise, duas sincronizações da mesma conta e nenhum filtro que alguém mantém à mão.
O que não existe: um filtro por palavra-chave, e um filtro por idioma. Nenhum dos dois existe numa sincronização do Trustpilot, e os dois são melhor feitos em SQL de qualquer forma, onde mudar de ideia custa uma cláusula WHERE em vez de uma nova sincronização.
Uma coisa vale a pena saber antes de dimensionar qualquer coisa. O volume do Trustpilot é impulsionado por convites, então chega no formato da sua agenda de envio. Um perfil que parece parado o mês inteiro reúne a maioria das suas linhas nos dias depois de cada leva de convites.
Your Google Cloud project
northwind-analytics.reviews
Location
europe-west2
Access
your IAM
Retention
your policy
What flows in
There is no keyword filter and no language filter on a Trustpilot sync. Both are a WHERE clause once the rows are in the warehouse.
Uma contagem de avaliações é curiosidade. Avaliações a cada mil pedidos é um instrumento.
Configure em menos de cinco minutos. Sem necessidade de demo.
Existe um conector nativo para o BigQuery?
Não, e seria desonesto sugerir que existe. O Reviewflowz sincroniza uma planilha do Google Sheets no seu próprio Drive, e o BigQuery lê essa planilha como uma tabela externa com uma única instrução CREATE EXTERNAL TABLE. Se você preferir uma tabela particionada nativa, a Review API mais um job de carga agendado te levam lá. As duas são trabalho comum para um time de dados, e nenhuma precisa de demo.
As nossas avaliações do Trustpilot não têm id de pedido. Como funciona a junção com os pedidos?
Por tempo, não por chave. O Trustpilot não te dá uma referência de pedido numa avaliação de serviço, então você agrupa as avaliações pela semana em que foram publicadas e junta isso com os pedidos pela semana em que foram enviados. Isso basta para encontrar a semana que deu errado e para transformar uma contagem numa taxa. Não basta para nomear o pedido individual por trás de uma única avaliação, e nenhuma ferramenta que lê o Trustpilot consegue fazer isso por você.
Quão atualizada é a tabela?
Um perfil do Trustpilot conectado pelo Trustpilot Business é consultado a cada quinze minutos; um adicionado pela URL é consultado algumas vezes ao dia. A planilha é escrita a cada 30 minutos. Uma tabela externa lê a planilha no momento da consulta, então uma consulta que você roda agora vê o que a última sincronização escreveu. Um job de carga numa tabela nativa fica tão atualizado quanto a sua agenda.
Quais colunas a tabela tem?
Um cabeçalho fixo de 28 colunas: o id da avaliação, o perfil, a plataforma, o título, o texto completo da avaliação, a nota, o link, a data da avaliação, o idioma detectado, o nome de quem avaliou e as tags, entre outras. Não há coluna de resposta, então as suas respostas não estão na tabela, e não há abas por plataforma. Renomeie as colunas numa view sobre a tabela externa se você quiser nomes no estilo do seu warehouse.
A primeira carga inclui o nosso histórico do Trustpilot?
Carregar avaliações passadas é uma etapa de plano pago. Conecte o perfil pelo Trustpilot Business e o carregamento roda até o limite do seu plano; um perfil adicionado pela URL traz as suas últimas duzentas avaliações, mais ou menos. Durante o teste grátis, as avaliações novas chegam à medida que são publicadas, e o histórico é carregado assim que você assina.
O que acontece quando quem avaliou edita a avaliação depois que corrigimos o problema?
A linha se atualiza no lugar com a nova nota e o novo texto, então uma consulta sobre ela se move junto com a correção em vez de guardar uma versão da verdade que o Trustpilot já não mostra mais. As avaliações novas são inseridas no topo, então a linha mais nova é sempre a primeira.
Preciso de uma demo para começar?
Não. Conecte o seu perfil do Trustpilot e a planilha do Google Sheets sozinho em menos de cinco minutos, depois rode um único CREATE EXTERNAL TABLE contra ela. Teste grátis de 14 dias, sem cartão de crédito.





