Trusted Shops Scraper — Shop Trust Ratings & Customer Reviews avatar

Trusted Shops Scraper — Shop Trust Ratings & Customer Reviews

Pricing

from $5.00 / 1,000 result scrapeds

Go to Apify Store
Trusted Shops Scraper — Shop Trust Ratings & Customer Reviews

Trusted Shops Scraper — Shop Trust Ratings & Customer Reviews

Scrape shop trust profiles and customer reviews from trustedshops.de by shop domain — overall rating, star distribution, certification status and individual reviews with text, rating and date. No login required.

Pricing

from $5.00 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

What does Trusted Shops Scraper do?

Trusted Shops Scraper extracts shop trust ratings and customer reviews from trustedshops.de — the German/EU platform behind the "Trusted Shops" certification seal that thousands of online shops display at checkout, and the review site where their customers rate them.

Give it a shop's own domain — the one you already know, like zalando.de or otto-office.com — and the actor resolves it to that shop's Trusted Shops profile automatically, then scrapes the overall rating, star distribution, certification status and individual reviews.

Why use Trusted Shops Scraper?

Trusted Shops covers ecommerce shops across Germany and the wider EU that Trustpilot doesn't always reach as deeply — it's the default trust seal for a large share of German online retail. Use this actor to benchmark a shop's trust reputation against competitors, monitor how a review score moves over time, or pull review text for sentiment analysis and voice-of-customer research.

How to scrape Trusted Shops reviews

  1. Add the domains you want to look up to shopDomains (e.g. ["otto-office.com", "zalando.de"]).
  2. The actor searches trustedshops.de's own shop directory for each domain and picks the matching profile — you never need to find the internal profile ID yourself.
  3. Run the actor. It returns one summary row per shop plus one row per review, up to your maxReviewsPerShop and maxResults limits.
  4. Already have a direct trustedshops.de/bewertung/info_... link? Pass it in profileUrls instead and skip the search step entirely.

Input

FieldTypeRequiredDescription
shopDomainsArrayNoShop domains to look up, e.g. "otto-office.com". Resolved to a Trusted Shops profile via the site's own shop search.
profileUrlsArrayNoDirect trustedshops.de/bewertung/info_...html profile URLs, for when you already have the exact link.
maxReviewsPerShopIntegerNoMax individual reviews to fetch per shop (default: 40). Large shops can have 100,000+ reviews.
maxResultsIntegerNoOverall cap on review rows across all shops in the run (default: 200).
proxyConfigurationObjectNoApify proxy settings. Automatic proxy works fine — no anti-bot on trustedshops.de.

If you leave everything empty, the actor defaults to a well-known certified shop (otto-office.com) so a test run always returns data.

Output

The dataset contains two kinds of rows, distinguished by recordType.

Shop summary row (recordType: "shop")

FieldTypeExample
shopNameString"OTTO Office Deutschland"
shopDomainString"otto-office.com"
tsIdString"X507F9B7DFF6E66ACED13EDB990A7B6BA"
isMemberBooleantrue
certifiedBooleantrue
certifiedSinceString"2015-12-08"
overallRatingNumber4.7
reviewCountNumber4510
ratingDistributionObject{"5": 3702, "4": 543, "3": 106, "2": 44, "1": 115}
categoriesArray["Büro, Schule & Beruf", "Lebensmittel"]
cityString"Hamburg"
countryString"DE"
urlStringProfile URL on trustedshops.de

Review row (recordType: "review")

FieldTypeExample
shopNameString"OTTO Office Deutschland"
tsIdString"X507F9B7DFF6E66ACED13EDB990A7B6BA"
reviewIdString"rev-2d8490e8-1ca7-4432-bc9c-c2e90a68358d"
reviewTextStringFull review body text
ratingScoreNumber4
reviewerNameString"Jörg L." or "Community Member" when anonymized
entryDateStringISO 8601 review date
languageString"de"
urlStringProfile URL with a #review-... anchor
scrapedAtStringISO 8601 timestamp of collection

Example output

{
"recordType": "shop",
"shopName": "OTTO Office Deutschland",
"shopDomain": "otto-office.com",
"tsId": "X507F9B7DFF6E66ACED13EDB990A7B6BA",
"profileUrl": "https://www.trustedshops.de/bewertung/info_X507F9B7DFF6E66ACED13EDB990A7B6BA.html",
"isMember": true,
"certified": true,
"certifiedSince": "2015-12-08",
"overallRating": 4.7,
"reviewCount": 4510,
"ratingDistribution": { "5": 3702, "4": 543, "3": 106, "2": 44, "1": 115 },
"categories": ["Büro, Schule & Beruf", "Lebensmittel"],
"city": "Hamburg",
"country": "DE",
"url": "https://www.trustedshops.de/bewertung/info_X507F9B7DFF6E66ACED13EDB990A7B6BA.html",
"scrapedAt": "2026-08-21T09:31:38.930Z"
}
{
"recordType": "review",
"shopName": "OTTO Office Deutschland",
"tsId": "X507F9B7DFF6E66ACED13EDB990A7B6BA",
"reviewId": "rev-2d8490e8-1ca7-4432-bc9c-c2e90a68358d",
"reviewText": "Ihren Online-shop finde ich als sehr gut strukturiert. Die benötigten Produkte sind schnell zu finden...",
"ratingScore": 4,
"reviewerName": "Community Member",
"entryDate": "2026-08-04T11:20:57.000Z",
"language": "de",
"url": "https://www.trustedshops.de/bewertung/info_X507F9B7DFF6E66ACED13EDB990A7B6BA.html#review-rev-2d8490e8-1ca7-4432-bc9c-c2e90a68358d",
"scrapedAt": "2026-08-21T09:31:38.932Z"
}

How the domain lookup works

Trusted Shops itself doesn't publish domain-to-profile lookups anywhere obvious — the review pages live at an opaque URL like /bewertung/info_X507F9B7DFF6E66ACED13EDB990A7B6BA.html. This actor queries trustedshops.de's own shop-search page with your domain, reads the shop list it returns (each entry carries both the shop's real domain and its internal profile ID), and picks the exact domain match. If no exact match exists, it falls back to the closest result and logs a warning so you can see what it picked.

How much does it cost to scrape Trusted Shops?

  • 1 shop, 20 reviews (default test run): 2 requests, a few seconds of run time
  • 1 shop, 200 reviews: ~11 requests (20 reviews per page)
  • A large shop's recent history: capped by maxReviewsPerShop and maxResults so you control cost — a shop with 100,000+ reviews will not be scraped end to end unless you raise the caps

There's no anti-bot cost on this site (no Bright Data or residential proxy needed), so the marginal cost per result is Apify compute plus platform pricing only. Usage cost only settles once a run finishes with status SUCCEEDED — a run you abort or that fails partway through is not charged for the pay-per-event items.

Tips for best results

  • Use the domain as it appears in the shop's own footer or checkout pageshop.de, www.shop.de and https://shop.de/ all normalize the same way
  • Check isMember and certified — non-member profiles are unclaimed listings Trusted Shops indexed from public review activity; they can still have real reviews (e.g. otto.de itself has 164), but no buyer-protection guarantee backs them
  • Start with a small maxReviewsPerShop to confirm you've matched the right shop before scaling up

Limitations

  • Reviewer names are usually first name + last initial (e.g. "Jörg L.") or "Community Member" when Trusted Shops anonymizes them — full names are never published
  • The reviewCount shown in shop-search results can differ from the aggregateRating.reviewCount on the shop's own profile page (the two come from different internal counters on Trusted Shops' side) — this actor always reports the profile-page figure, the one shown to visitors
  • Zero-review shops (unclaimed profiles Trusted Shops has indexed but that have no reviews yet) produce no rows for that domain
  • Data is scraped from the public website and may change without notice
  • Respect Trusted Shops' terms of service and use responsibly

FAQ and support

Is it legal to scrape Trusted Shops? This actor extracts publicly available data from trustedshops.de. Users are responsible for ensuring their use complies with applicable laws and the website's terms of service.

Why didn't my domain resolve to the shop I expected? The shop-search endpoint matches on shop name and domain text, not an exact-only lookup. Check the run log — every resolved domain is logged with the profile it matched, so you can confirm or correct it.

Can I look up a shop I already have the profile link for? Yes — pass it in profileUrls and the actor skips the search step entirely.

The scraper returned 0 results? The domain may not have a Trusted Shops profile at all, or the shop's profile may have zero reviews. Try the domain on trustedshops.de directly first to confirm a profile exists.

Looking for review or trust data outside Germany, or a different review vertical?

  • Studio AMBA's own DACH review-vertical fleet — kununu (employer reviews), jameda (doctor reviews)
  • Trustpilot — the closest international equivalent to Trusted Shops

Need this data on a schedule, or a custom version?

We run this scraper as a managed service for businesses: scheduled runs, deduplication, delta detection, and delivery to your inbox, Google Sheets, or API — maintenance included. We can also build a custom version with your exact fields and filters, or combine multiple sources into one feed.

See studioamba.dev/services or email hello@studioamba.dev for a free data sample. We maintain 300+ European web scrapers and answer within one business day.