Arcadium Data Scrapers
Home / Integrations / n8n / New Trustpilot reviews to Google Sheets and Slack

New Trustpilot reviews to Google Sheets and Slack

Every morning the reviews not delivered before, appended to a sheet, with one Slack summary of new and 1-2 star reviews. Uses Trustpilot Reviews Scraper.

Every morning this workflow runs Trustpilot Reviews Scraper (arcadium/trustpilot-reviews) in only-new mode for a list of companies, appends each new review to a Google Sheet and posts one summary message to a Slack channel: new reviews per company and the newest 1★ and 2★ reviews with a link.

Schedule (07:00) → Apify: Run actor and get dataset → Code: review rows ─┬→ Google Sheets: Append row
                                                                         └→ Code: Slack summary → Slack: Send message

File: workflow.json (n8n workflow export format, with a sticky note that repeats the setup steps). Want a weekly competitor report with TrustScore snapshots and edits instead? Use the n8n-trustpilot-competitors-to-google-sheets template.

What you need

CredentialWherePlaceholder in the file
Apify API tokenApify Console → Settings → API & IntegrationsREPLACE_WITH_YOUR_APIFY_CREDENTIAL_ID (credential type Apify API)
Google Sheetsn8n's Google Sheets OAuth2 credentialREPLACE_WITH_YOUR_GOOGLE_SHEETS_CREDENTIAL_ID
A spreadsheetYour Google DriveREPLACE_WITH_YOUR_SPREADSHEET_ID in the sheet URL
SlackA Slack app with the chat:write scope, or n8n's Slack OAuth2REPLACE_WITH_YOUR_SLACK_CREDENTIAL_ID (credential type Slack API)

The Apify node is Apify's official n8n node, package @apify/n8n-nodes-apify (checked against version 0.9.0, node version 2, operation Run actor and get dataset). On n8n Cloud search for "Apify" in the nodes panel. On self-hosted n8n: Settings → Community nodes → Install → @apify/n8n-nodes-apify. Only need one destination? Delete the Sheets node or the two Slack nodes.

Import

  1. Create a Google Sheet with a tab named Reviews and this header row (the node maps columns by name):

reviewId | date | company | rating | title | text | companyReply | verified | language | edited | url | scrapedAt

  1. n8n → Workflows → Import from File → workflow.json.
  2. Get new reviews: pick your Apify credential and edit the JSON input:
  3. companies: company domains (www.bestbuy.com) or Trustpilot review page URLs (any country subdomain).
  4. stateKey: the name of this watchlist. The actor remembers the reviews it delivered under this name, so a run returns only reviews it has not delivered before and repeats are not charged. Keep it stable; a new name starts over.
  5. dateFrom: 7 days keeps the first run to the last week and stops later runs from walking back into older reviews.
  6. maxReviewsPerCompany: an upper limit per company and run (100 in the template).
  7. Append to Google Sheets: pick your credential and paste your sheet URL.
  8. Post to Slack: pick your Slack credential and change the channel (#reviews in the template). Invite the Slack app to that channel.
  9. Execute once, check the sheet and Slack, then Activate.

Cost per run

Pay per event. Prices are the actor's Store pricing at the time of writing (Free plan; paid Apify plans pay less). The live price is on the Store page.

EventPriceIn this template
Review$0.00052 ($0.52 per 1,000)30 new reviews = $0.016
Repeats in only-new mode, error rowsfree

Plus Apify's small start event per run. The node caps a run at $0.50 (maxTotalChargeUsd).

What to expect