Trustpilot reviews to BigQuery
Every Trustpilot review as a row in your own project, next to the orders that produced it. A review count is trivia. Reviews per thousand orders is an operations metric, and it is one join away.
- Set up in under five minutes
- No demo required
Destination table
northwind-analytics.reviews.trustpilot_reviews
They love how easy we've made it
10 000 Slack notifications

Online Pet Supplies Retailer
6000 reviews routed to Zendesk

European Bank
Monitoring 12 platforms

Marketing Software Company
100 000 reviews across 97 tours

Tour operator in Iceland
4500 locations monitored

Luggage Storage & Lockers
5000 AI replies generated

Sushi Restaurant Chain
How the rows get into BigQuery
There is no BigQuery destination to pick. Reviewflowz keeps a Google Sheet in your own Drive current, with a new Trustpilot review in it within half an hour, and BigQuery reads that sheet as an external table. One CREATE EXTERNAL TABLE and trustpilot_reviews queries like any other table. For a native partitioned table, load the Review API with the job you already run.
CREATE EXTERNAL TABLE
reviews.trustpilot_reviews
OPTIONS (
format = 'GOOGLE_SHEETS',
uris = ['https://docs.google.com/...'],
sheet_range = 'Reviews'
) A count is trivia. A rate is an instrument.
Trustpilot invites customers after they buy, so review volume follows order volume. Put reviews beside the order table already in BigQuery and reviews per thousand orders becomes a GROUP BY over the week each order shipped. Four percent one-stars for a quarter, then seventeen in the week of 17 August against flat orders, is something operational that broke on a date.
-- 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 Try it Free for 14 days
Your review history imports the moment you connect, so there is something to reply to from the first minute.
A table, not a report
One row per Trustpilot review across a fixed 28-column header: review id, profile, date, score, title, full text, language, tags and a link back. The text is a STRING, so the complaint that keeps coming back is a WHERE clause instead of a memory. Tags arrive filled, across languages. Your replies are not in the table; reply coverage is the Review API.
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.
An alert that looks for you
A dashboard is something people open once they already suspect a problem. A BigQuery scheduled query looks for you: one-star share above eight percent over the trailing seven days, on at least two hundred reviews, written to a table your existing alerting watches. Your TrustScore weights recent reviews more heavily, so that buys a week of warning instead of a month of post-mortem.
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.
FAQs
Is there a native BigQuery connector?
No, and it would be dishonest to imply one. Reviewflowz syncs a Google Sheet in your own Drive, and BigQuery reads that sheet as an external table with a single CREATE EXTERNAL TABLE statement. If you would rather have a native partitioned table, the Review API plus a scheduled load job gets you there. Both are ordinary work for a data team, and neither needs a demo.
Our Trustpilot reviews have no order id. How does the join to orders work?
On time, not on a key. Trustpilot does not hand you an order reference on a service review, so you bucket reviews by the week they were posted and join that to orders by the week they shipped. That is enough to find the week that went wrong and to turn a count into a rate. It is not enough to name the individual order behind a single review, and no tool reading Trustpilot can do that for you.
How current is the table?
A Trustpilot profile connected through Trustpilot Business is checked every fifteen minutes; one added by its URL is checked a few times a day. The sheet is written every 30 minutes. An external table reads the sheet at query time, so a query you run now sees whatever the last sync wrote. A load job into a native table is as current as its schedule.
Which columns does the table have?
A fixed 28-column header: the review id, the profile, the platform, the title, the full review text, the score, the link, the review date, the detected language, the reviewer name and the tags, among others. There is no reply column, so your replies are not in the table, and there are no per-platform tabs. Rename the columns in a view over the external table if you want warehouse-style names.
Does the first load include our Trustpilot history?
Seeding past reviews is a paid-plan step. Connect the profile through Trustpilot Business and the backfill runs to your plan’s limit; a profile added by its URL brings in its most recent couple of hundred reviews. During the free trial new reviews arrive as they are posted, and the history loads once you subscribe.
What happens when a reviewer edits their review after we fix the problem?
The row updates in place with the new score and text, so a query over it moves with the correction rather than holding a version of the truth Trustpilot no longer shows. New reviews are inserted at the top, so the newest row is always the first one.
Do I need a demo to get started?
No. Connect your Trustpilot profile and the Google Sheet yourself in under five minutes, then run one CREATE EXTERNAL TABLE against it. 14 day free trial, no credit card.
A review count is trivia. Reviews per thousand orders is an instrument.
Set up in under five minutes. No demo required.