Trustpilot + Bruin
Ingest Trustpilot data into your warehouse with incremental loading, quality checks, and full lineage. Defined in YAML, version-controlled in Git.
For business teams
What you get
Feedback tied to revenue
Join Trustpilot responses with CRM and billing data. See which customer segments are unhappy — and how much revenue is at risk.
NPS/CSAT trends, automated
Trustpilot response data flows into your warehouse. Trend dashboards update automatically, no manual exports.
Response quality validation
Quality checks catch duplicate submissions, incomplete responses, and stale data before it reaches your reports.
Cross-source customer insight
Combine Trustpilot feedback with support tickets, product usage, and sales data for a complete customer picture.
For data & engineering teams
How it works
Response deduplication
Bruin's merge strategy prevents duplicate Trustpilot responses. Re-runs and retries are always safe.
YAML-defined, Git-versioned
Your Trustpilot pipeline is a YAML file. Review in PRs, deploy with CI/CD, roll back with git revert.
Completeness validation
Quality checks catch incomplete responses, missing timestamps, and null IDs on every sync.
Transform responses in SQL
Calculate NPS, CSAT, and sentiment metrics with SQL transforms — in the same pipeline as ingestion.
Before you start
Step 1
Add your Trustpilot connection
Connect using Trustpilot API credentials. Add this to your Bruin environment file — credentials are stored securely and referenced by name in your pipeline YAML.
Parameters
api_keyTrustpilot API keybusiness_unit_idTrustpilot business unit identifier
connections:
trustpilot:
type: trustpilot
uri: "trustpilot://?api_key=<api_key>&business_unit_id=<business_unit_id>"Step 2
Create your pipeline
Define a YAML asset that tells Bruin what to pull from Trustpilot and where to land it. This file lives in your Git repo — reviewable, version-controlled, and deployable with CI/CD.
Available tables
name: raw.trustpilot_reviews
type: ingestr
parameters:
source_connection: trustpilot
source_table: 'reviews'
destination: bigqueryStep 3
Add quality checks
Add column-level and custom SQL checks to your Trustpilot data. If a check fails, the pipeline stops — bad data never reaches downstream models or dashboards.
columns:
- name: response_id
checks:
- name: not_null
- name: unique
- name: submitted_at
checks:
- name: not_null
custom_checks:
- name: responses are recent
query: |
SELECT MAX(submitted_at) >
TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
FROM raw.trustpilot_reviewsStep 4
Run it
One command. Bruin connects to Trustpilot, pulls data incrementally, runs your quality checks, and lands clean data in your warehouse. If a check fails, the pipeline stops — bad data never reaches downstream.
--start-date$ bruin run .Running pipeline...
trustpilot_reviews
✓ Fetched 2,847 new records
✓ Quality: campaign_id not_null PASSED
✓ Quality: spend not_null PASSED
✓ Quality: no negative ad spend PASSED
✓ Loaded into bigquery
Completed in 12sReady to connect Trustpilot?
Start for free, or book a demo to see how Bruin handles ingestion, quality, lineage, and scheduling for your entire data stack.