ReclameAqui Scraper avatar

ReclameAqui Scraper

Pricing

from $40.00 / 1,000 complaints

Go to Apify Store
ReclameAqui Scraper

ReclameAqui Scraper

[💰 $40.0 / 1K] Extract consumer complaints, ratings, response rates, and reputation data from ReclameAqui (Brazil). Search by company slug or URL, filter by status and date, and pull complaint text, status, rating, and views per item across any Brazilian brand.

Pricing

from $40.00 / 1,000 complaints

Rating

0.0

(0)

Developer

SolidCode

SolidCode

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

4 days ago

Last modified

Share

Pull consumer complaints, brand reputation scores, response rates, and resolution rates from ReclameAqui — Brazil's largest consumer complaints platform — with full complaint text, status, category, city, state, and posted date on every row. Built for Brazilian-market researchers, brand-monitoring teams, BPO and customer-service agencies, fintech compliance teams, and journalists who need a clean reclamacao dataset without paginating through thousands of profile pages by hand.

Why This Scraper?

  • Multi-brand sweeps in a single run — fan out across 50 fintechs at 500 complaints each for a 25,000-row dataset, or chain telecoms, retailers, and airlines in one input array.
  • Up to 500 most-recent complaints per company — that's ReclameAqui's own pagination ceiling, fetched in full with category, product, problem, body, status, location, and posted date on every row.
  • Pre-computed reputation in one row — every company emits a free profile row with its 6-month ReclameAqui score (0–10), response rate %, resolution rate %, average response time in hours, RA status badge (RA1000, RA200, etc.), lifetime complaint count, and 6-month complaint count.
  • All three native ReclameAqui status filters — Respondidas (answered), Não respondidas (not answered), and Pendentes (awaiting consumer reply). Multi-select runs fetch each status separately and merge the results.
  • Free-text complaint search across the entire platform — pass a searchQuery like "atraso entrega" or "cobrança indevida" to surface every matching complaint across all brands in one sweep.
  • Slug or full-URL inputs accepted — paste nubank, bradesco, or https://www.reclameaqui.com.br/empresa/magazine-luiza-loja-online/ straight from your browser bar; both forms work.
  • Smart date filtering with early-stop pagination — bound a run with dateFrom / dateTo and the scraper stops requesting older pages once the cutoff is crossed, saving credits on long-tail queries.
  • Localized PT status labels with resolution flag — every complaint carries a human-readable status like Respondida • Resolvida or Respondida • Não resolvida so you can split answered-but-unresolved from genuinely closed cases.
  • Resolved category, product, and problem labels — every complaint comes with the human-readable category (e.g. "Cartões"), product, and problem strings, not opaque IDs.
  • Company stats included free — only complaint rows count toward your bill; profile rows are bundled at no charge.

Use Cases

Brand Monitoring & Reputation Management

  • Track week-over-week complaint volume on your own brand
  • Compare your response rate, resolution rate, and RA score against direct competitors
  • Detect a sudden surge in complaints tied to a product launch or pricing change
  • Identify the top 5 problem categories driving negative sentiment

Customer Service & Operations

  • Surface every "Não respondida" complaint older than 7 days and route to your CS queue
  • Measure average response time vs. peers in your segment
  • Mine complaint titles to refine your IVR taxonomy and FAQ coverage
  • Build city/state heat maps of where complaints concentrate

Lead Generation for BPO and CX Agencies

  • Find Brazilian brands with response rates under 60% — they need your contact-center help
  • Build a target list of companies with thousands of unanswered complaints
  • Pitch RA1000-aspirant companies before they hit the badge

Fintech & Compliance Risk

  • Monitor complaint patterns at competing fintechs and digital banks
  • Flag fraud, "cobrança indevida", and "cartão clonado" mentions for KYC/AML review
  • Build risk dashboards on payment processors, neobanks, and credit-card issuers

Market Research & Consumer Insights

  • Quantify pain points across e-commerce, retail, telecom, banking, airlines
  • Compare delivery complaints across Mercado Livre, Magazine Luiza, and Amazon Brazil
  • Track regional complaint patterns by city and state

Legal, Journalism & Academic Research

  • Pull case studies for class-action research with full complaint text and dates
  • Sample a brand's complaint corpus for investigative reporting
  • Build labelled datasets of consumer Portuguese for NLP and sentiment work

Getting Started

Single Brand — Most Recent 100

The simplest run — one company slug, default cap:

{
"companies": ["nubank"]
}

Multi-Brand With Status Filter

Track unanswered complaints across three banks at once:

{
"companies": ["nubank", "itau", "bradesco"],
"statusFilter": ["NOT_ANSWERED"],
"maxComplaintsPerCompany": 200
}

Find every complaint mentioning "atraso entrega" posted in the last quarter, across all brands:

{
"searchQuery": "atraso entrega",
"dateFrom": "2026-01-01",
"dateTo": "2026-03-31",
"maxResults": 2000
}

Full-URL Input + Comprehensive Audit

Paste a profile URL directly; pull both answered and pending complaints up to the platform ceiling:

{
"companies": [
"https://www.reclameaqui.com.br/empresa/magazine-luiza-loja-online/",
"mercado-livre"
],
"statusFilter": ["ANSWERED", "PENDING"],
"dateFrom": "2025-01-01",
"maxComplaintsPerCompany": 500,
"maxResults": 10000,
"includeCompanyStats": true
}

Input Reference

What to Scrape

ParameterTypeDefaultDescription
companiesstring[]["nubank"]Company slugs (e.g. nubank, itau, bradesco) or full ReclameAqui profile URLs. Both forms are accepted and combined with the search query below.
searchQuerystring""Free-text keyword search across every complaint on ReclameAqui. Run alongside companies or on its own.

Filters

ParameterTypeDefaultDescription
statusFilterselect[][] (all)Restrict by status: Respondidas (Answered by company), Não respondidas (Not answered), Pendentes (Awaiting consumer reply). Multi-select supported.
dateFromstringnullLower date bound, format YYYY-MM-DD. The scraper stops paginating once it walks past this cutoff.
dateTostringnullUpper date bound, format YYYY-MM-DD.

Limits

ParameterTypeDefaultDescription
maxComplaintsPerCompanyinteger100Cap on complaints captured per company, most recent first. Maximum 500 — the ReclameAqui platform's pagination ceiling. Set 0 to fetch up to that limit.
maxResultsinteger1000Maximum complaint rows for the entire run. Set 0 for no row cap. Each complaint costs $0.04 — a 5,000-complaint run costs $200.

Output

ParameterTypeDefaultDescription
includeCompanyStatsbooleantrueEmit one extra row per company with reputation data — score, response rate, resolution rate, average response time, total complaints, and category. Tagged recordType: "company". Disable for a complaints-only output.

Output

Every row carries a recordType field — company or complaint — so you can filter cleanly downstream. Company rows are emitted once per brand and are bundled free.

Company Profile (recordType: "company")

{
"recordType": "company",
"companyName": "Nubank",
"companySlug": "nubank",
"category": "Bancos",
"companyScore": 8.4,
"responseRate": 99.6,
"resolutionRate": 87.2,
"averageResponseTimeHours": 14,
"totalComplaints": 64584,
"complaintsLast6Months": 18342,
"raStatus": "RA1000",
"description": "O Nubank é uma instituição financeira brasileira...",
"website": "https://nubank.com.br",
"companyUrl": "https://www.reclameaqui.com.br/empresa/nubank/"
}
FieldTypeDescription
recordTypestringAlways "company"
companyNamestringBrand display name
companySlugstringReclameAqui URL slug
categorystringPrimary segment (e.g. "Bancos", "E-commerce", "Telecom")
companyScorenumber6-month ReclameAqui reputation score, scale 0–10
responseRatenumberPercentage of complaints answered, last 6 months
resolutionRatenumberPercentage of complaints marked resolved by the consumer
averageResponseTimeHoursnumberMean time-to-first-response in hours
totalComplaintsnumberLifetime complaint count
complaintsLast6MonthsnumberComplaints posted in the trailing 6-month window
raStatusstringRA badge (e.g. RA1000, RA200, Bom, Regular, Ruim, Não recomendada)
descriptionstringBrand description (HTML stripped)
websitestringOfficial brand website
companyUrlstringDirect ReclameAqui profile URL

Complaint (recordType: "complaint")

{
"recordType": "complaint",
"complaintId": "1856732041",
"companyName": "Nubank",
"companySlug": "nubank",
"title": "Cobrança indevida no cartão de crédito",
"body": "Identifiquei uma cobrança que não reconheço no valor de R$ 489,90...",
"status": "Respondida • Resolvida",
"city": "São Paulo",
"state": "SP",
"category": "Cartões",
"product": "Cartão de crédito",
"problem": "Cobrança indevida",
"createdAt": "2026-04-12T09:42:18Z",
"interactionCount": 3,
"complaintUrl": "https://www.reclameaqui.com.br/nubank/cobranca-indevida-no-cartao_1856732041/"
}

Core Fields

FieldTypeDescription
recordTypestringAlways "complaint"
complaintIdstringUnique ReclameAqui complaint ID
titlestringComplaint headline as posted by the consumer
bodystringFull complaint text, HTML tags stripped
statusstringLocalized PT status — Respondida, Não respondida, or Pendente, optionally suffixed with • Resolvida or • Não resolvida
createdAtstringISO 8601 timestamp of when the complaint was posted
interactionCountnumberNumber of back-and-forth replies on the thread
complaintUrlstringDirect ReclameAqui complaint URL

Brand & Location

FieldTypeDescription
companyNamestringBrand the complaint is filed against
companySlugstringReclameAqui URL slug for the brand
citystringConsumer's reported city
statestringTwo-letter Brazilian state code (e.g. SP, RJ, MG)

Categorization

FieldTypeDescription
categorystringTop-level category, resolved to human-readable text (e.g. "Cartões", "Entrega")
productstringProduct subcategory (e.g. "Cartão de crédito")
problemstringProblem subcategory (e.g. "Cobrança indevida", "Atraso na entrega")

Tips for Best Results

  • Plan around the 500-per-company cap. ReclameAqui only exposes the 500 most-recent complaints per company through this view. To survey a brand's full history, schedule incremental runs filtered by dateFrom so each run captures the new complaints since the last one.
  • Sweep many brands at once. Up to 500 per company × N companies scales linearly. A 20-fintech sweep at 500 each lands ~10,000 complaints in a single run with one input array.
  • Use searchQuery to find competitor mentions. Drop a competitor's brand name or a campaign keyword into searchQuery to pull every complaint that names it, regardless of which company the complaint targets.
  • Pair dateFrom with statusFilter: ["NOT_ANSWERED"] to surface fresh unaddressed complaints — perfect for daily monitoring or BPO lead-gen.
  • Use the solved suffix in status to split your dataset: Respondida • Resolvida are closed cases; Respondida • Não resolvida flags answered-but-unhappy customers worth re-engaging.
  • Multi-select status sparingly. Each selected status fires its own pagination pass per company, so multiplying statuses multiplies cost. Leave the filter empty to fetch all three in one run if your maxComplaintsPerCompany is already low.
  • Paste profile URLs directly. No need to extract the slug — drop https://www.reclameaqui.com.br/empresa/<brand>/ into companies and the scraper handles it.
  • Keep includeCompanyStats: true. Profile rows are free, and they give you the score, response rate, and RA status alongside the complaints in a single dataset for downstream joins.

Pricing

$40 per 1,000 complaints — charged per complaint row pushed to the dataset. Company profile rows are included free, and there are no compute charges.

ComplaintsEstimated Cost
100$4
1,000$40
10,000$400
100,000$4,000

You only pay per complaint collected. recordType: "company" profile rows do not count toward your bill, and there are no compute or storage charges added on top. Each company is capped at 500 complaints (the platform's pagination ceiling), so 10,000 complaints in one run means a sweep of at least 20 companies.

Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

  • Zapier / Make / n8n — Workflow automation
  • Google Sheets — Direct spreadsheet export
  • Slack / Email — Notifications on new results
  • Webhooks — Trigger custom APIs on run completion
  • Apify API — Full programmatic access

This actor is designed for legitimate brand monitoring, market research, customer-service operations, compliance, journalism, and academic research. Users are responsible for complying with applicable laws — including the LGPD (Lei Geral de Proteção de Dados) — and ReclameAqui's terms of service. Do not use extracted data for spam, harassment, doxxing, or any illegal purpose. When publishing or sharing complaint text, redact personal identifiers where appropriate.