Google reviews to Qlik
Select one bad month and Qlik shows you which locations, which languages and which weeks it was actually made of. Reviewflowz publishes an OData v4 feed and Qlik’s own OData connector reads it, so there is nothing to install.
Set up in under five minutes • No demo required
Google reviews
selection
Three sites made March. The other thirteen averaged 4.68 in the same weeks, and nobody had built the report that would have said so.
Follow the question, not the report
March came in at 4.11 across 612 Google reviews and the deck said so. Select March in Qlik and the average comes apart: three of sixteen sites sit below 3.7 and the other thirteen averaged 4.68 in the same weeks. Not a company problem, and never a company answer.
Click the worst site and every other field repaints. Its 84 reviews are 51 in Portuguese at 3.40 and 33 in English at 2.20. The site is not broken. Something happens to people who booked from Maps and arrived expecting the old menu. Different conversation, different owner.
Nobody built that view. There is no English-reviews-at-one-site-in-one-week report and there never will be, because the cut that explains a month is never the one the report was built to show. Qlik is where you do not have to have asked first.
And it shows what a selection rules out, the half a filtered table hides. Values go grey because nothing in the selection touches them, so you find out a site has no reviews in a language you assumed it did. A filter would just have returned nothing.
Grey rows are alternative. Same field, not selected.
White is possible. Dark grey is excluded, so it carries no count.
The site is not the problem. 33 English reviews at 2.20, against 51 Portuguese at 3.40.
Qlik has an OData connector. You paste one URL.
Reviewflowz publishes an OData v4 feed, and Qlik ships an OData connector: built into Qlik Cloud, and in the Qlik Web Connectors package for client-managed Qlik Sense and QlikView. You create the connection, paste the service root, and tick the tables you want. There is nothing to install.
The credentials are one token you create inside Reviewflowz. The connector does basic authentication, so the token goes in the user name field and the password stays blank. That is the whole authentication story, and it ends the moment you revoke the token.
Qlik’s connector only accepts HTTPS, and it follows the feed’s own next-page links, which are absolute HTTPS URLs. Four years of Google reviews arrives as pages rather than one response somebody has to hope fits.
After that the reload is Qlik’s, on the schedule your apps already run. Reviewflowz does not push anything into your app and there is no export window somebody has to remember. The integration is a connection, not a project with a go-live date.
Nothing installed. Reviewflowz publishes the feed, Qlik reads it on your own reload schedule.
Six sets that associate on their keys
The feed is not one flat table. Six entity sets arrive: Reviews, ReviewProfiles, Locations, RatingsHistory, ReviewSummary and ReviewChanges. Reviews carries a ReviewProfileId, ReviewProfiles carries a LocationId, and that chain is exactly what the associative engine runs on.
It matters because a selection has to travel. Click a city in Locations and it reaches the reviews through the profiles, so the rating, the language, the tags and the sentence somebody wrote are all in scope at once, without anyone writing a join.
One caveat, worth five words of load script. Qlik associates tables on identically named fields, and all six sets have a field called Id. Rename each one as it loads and the model is right the first time. Leave them and Qlik builds a synthetic key over a coincidence.
ReviewChanges is a change stream of inserts, updates and deletes, so the reload can be incremental. Store the highest change id you loaded, page everything above it next time, and re-read only those reviews. A reviewer who turns a one star into a four star after you fixed it reaches the app as an event, not a silence.
Locations takes the same line, Id as LocationId. Without it Qlik answers with a synthetic key. With it you have three associated sets rather than one flat export, so a city selected in Locations repaints every rating and profile on the sheet.
A Google review belongs to one site
Google reviews are the ones your next customer reads before they book. They sit beside your name in Maps and in the local pack, and the star average is the first number anybody sees. It decides whether there is a booking to have an opinion about.
It is public the moment it posts. Nothing stands between the reviewer and your listing, so the listing changes before anyone tells you, and the owner reply you write is just as public and just as permanent. People who will never leave a review of their own read those replies.
And it arrives attached to one location. A group with sixteen sites has sixteen reputations rather than one, so a company average describes nowhere in particular. Reviewflowz writes the location onto the row, which turns it into a field you can click.
That is also why the listing is the wrong place to notice a bad month. Four years of history at 4.4 does not move because one site took 84 reviews at 2.93 in March. The star average is built to be stable, and stability is the opposite of what you want when you are trying to catch something early.
Casa Verde, Lisboa Chiado
Restaurant · Rua Garrett 41, Lisboa
Waited fifty minutes for a table we had booked, and half the dishes we came back for were gone from the new menu.
The wait was ours to fix and the March menu change was badly handled. Ask for me on your next visit and dinner is on us.
Sixteen sites, sixteen star averages. Every review arrives carrying the one it belongs to, which is the dimension a group total throws away.
Volume tracks footfall, not a release schedule
Google review volume follows people through the door. It rises at weekends, in a school holiday and after a campaign, and falls away in a quiet fortnight. So the same average means two different things in two different months, and a line chart of it alone will lie to you.
March is the case. 612 reviews, and 265 of them landed in the week of the 9th, when a marathon and a paid campaign put more than twice a normal week’s footfall through the doors. That week averaged 3.60. The other three averaged 4.50 across 347 reviews.
So the month did not get worse. One busy week did, and it was heavy enough to carry the month down with it. Select the week and both facts are on screen at once: the bar twice the height of its neighbours, and the only average under four. That is the thing a monthly figure averages away.
The first load brings your history with it, so that comparison exists on day one. You are not accumulating a baseline before the chart is worth opening, and last March is already there to select the next time somebody asks whether this is normal.
Casa Verde, 16 locations, March 2026
Google reviews per week
Volume follows footfall, so no two weeks in a month are the same size.
The week that dragged March to 4.11 carried more than twice a normal week's footfall. Selecting it is how you see a hard fortnight instead of sixteen restaurants going wrong.
One token per connection, and you can take it back
A connection is a token: created in Reviewflowz, revoked in Reviewflowz. Give the agency running your brand audit its own, end the engagement, revoke it, and their app stops reloading that afternoon. No shared password, and no export you cannot un-send.
A token carries the access of whoever created it. If your Portugal lead only sees the Portuguese sites, so does every app on their token. The permissions are the ones you already set, not a second set that drifts away over a year.
Revoking keeps the record: a revoked token is retained rather than deleted, and Reviewflowz records when each was last used, so “which connection pulled that, and when” still has an answer.
One connection can feed more than one app: the feed serves the account and the narrowing happens in Qlik, so the group reporting app and the regional one do not each need a pipeline. Connect the listing, create the connection, paste the URL: under five minutes, with nobody to call.
BI connections
Casa Verde, 16 sites. Premium, and not part of the free trial.
rfz_bi_7c41...9e02
Marta Ruiz Last used 12 minutes ago
rfz_bi_4b8d...1a77
Tiago Alves Last used 2 hours ago
Reaches the Portuguese sites only, because that is all Tiago can see.
rfz_bi_2f90...c6d4
Marta Ruiz Last used 6 Mar 2026
Revoked 9 Mar 2026. Row kept for the audit trail.
The agency engagement ends, you revoke their token, their app stops reloading. There is no export to un-send.
Stop finding out about a bad March in April
Set up in under five minutes. No demo required.
How do Google reviews actually get into Qlik?
Through an OData v4 feed that Reviewflowz publishes. Qlik has its own OData connector: it is built into Qlik Cloud, and it ships in the Qlik Web Connectors package for client-managed Qlik Sense and QlikView. You create a connection in Reviewflowz and copy its feed URL, create an OData connection in Qlik and paste it, then authenticate with basic authentication using the token as the user name and a blank password. The entity sets then appear as tables you select. Nothing is installed on either side.
Which tables arrive?
Six. Reviews is one row per review with the rating, the review date, the location, the language, the tags, the reviewer, the title and the full text. Alongside it: ReviewProfiles (your listings, one per platform per site), Locations (name, city, country, coordinates), RatingsHistory (what the platform itself reported), ReviewSummary (a monthly rollup) and ReviewChanges (a stream of inserts, updates and deletes). Reviews associates to ReviewProfiles on ReviewProfileId, and ReviewProfiles to Locations on LocationId.
Does the app reload on its own?
On Qlik’s schedule, which is the one you already run for everything else. Reviewflowz does not push into Qlik and there is nothing to trigger from our side. For an incremental reload, ReviewChanges is the mechanism: keep the highest change id you loaded, page everything above it on the next run, and re-read the reviews it names. We do not claim Qlik folds a filter into the feed request the way Power Query does, because Qlik does not document that.
Do we need to write a load script?
A few lines, and they are the same few lines every time. Each entity set has its own field called Id, and Qlik associates tables on identically named fields, so you rename them as you load: Id as ReviewProfileId on ReviewProfiles, Id as LocationId on Locations. Leave them alone and Qlik will build a synthetic key across three unrelated Id fields, which is the classic way a Qlik model goes wrong. Renaming them is the whole of the work.
Which plan includes the BI feed?
The BI feed is a Premium feature and it is not part of the free trial, so budget for that rather than finding out on day three. Everything else works the way the trial suggests: you connect your Google Business Profile yourself and see your reviews in minutes.
Does the first load include our Google Business Profile history?
Yes. Connecting the listing loads its review history, so the trend line is full from the first reload rather than filling up over the next quarter. That matters more here than on most platforms, because Google review volume tracks footfall: without last year to select against, you cannot tell a bad month from a busy one.
Does this replace our review dashboard?
It is for a different job. Reviewflowz reporting answers the questions everyone asks every month. Qlik is where you go when one of those answers raises a question nobody planned for, and you want to follow it through location, language and week without stopping to ask for a report.
Do I need a demo to get started?
No. You connect your Google Business Profile and create the BI connection yourself, in under five minutes. If you get stuck, support is the people who build it.





