This tutorial shows how to scrape Airbnb reviews into CSV with the Airbnb EN Review Details Scraper for UScraper. You will import the template, add listing or review URLs, set the export path, validate rows, and fix common empty-export issues.
Before you start
Prerequisites and scope
You need UScraper installed as a local desktop app, a short list of Airbnb listing or /reviews URLs you are allowed to process, and a folder for the CSV. Start with one to three URLs because reviews can sit behind a modal, load lazily, or change markup by locale and session.
This guide is for supervised research exports from pages you can inspect in a browser, not bypassing logins, CAPTCHA, account controls, payment screens, host dashboards, or private guest data. Read Airbnb's reviews policy, reviews for homes, Terms of Service, and robots.txt before automation.
Technical success is not permission. Keep runs modest, document your purpose, avoid access-control bypassing, and use partner or API routes when you need contractual rights to redistribute Airbnb data.
Workflow anatomy
What the Airbnb review details scraper exports
The template is built for review-level analysis, not search-result cards. The JavaScript block opens the "show all reviews" path when it can, scrolls until review cards stop increasing, clicks visible "show more" buttons, and creates hidden normalized rows for Structured Export.
| CSV field | What it represents | Validation check |
|---|---|---|
House_url | Canonical room URL | Open it from the CSV and confirm the listing. |
Review_url | Review URL used for the run | Keep it for audit and reruns. |
Average_Cleanliness through Average_Value | Visible category averages | Blanks can be valid when the rating block is hidden. |
UserName, Reviewer_Location | Reviewer identity text | Check that location was not captured as the name. |
Posted, Review | Posted month and review body | Confirm "Show more" expanded before export. |
Purpose_Of_Trip, Customer_Star_Rating | Trip context and review rating | Expect blanks when Airbnb does not show them. |
The sample JSON writes to airbnb_en_review_details_scraper_final.csv with headers enabled and file mode set to append. Change the save folder before running a real job so the output lands beside your project notes.
Runbook
How to scrape Airbnb review details to CSV
Import the template
Open Airbnb EN Review Details Scraper, download the JSON, and import it into UScraper.
Add review URLs
Paste approved Airbnb room URLs or /reviews URLs into the Navigate block. Keep query strings when they affect locale, source, or review display.
Set the export folder
In Structured Export, confirm the CSV name, headers, append mode, and a local folder you can inspect after every run.
Run one listing first
Let the page load, handle cookie or verification prompts manually, and check that [data-uscraper-review-row="true"] appears before export.
Scale only after QA
Compare five random CSV rows against the browser, then let Loop Continue advance the remaining URL list.
Keep the browser visible during the first pass. If Airbnb asks for manual interaction, pause. If the page opens without reviews, confirm the listing has guest reviews in the current locale.
Quality control
Validate rows before using the data
Open the CSV after the first URL and verify rows near the top, middle, and bottom. Sort by House_url, UserName, Posted, and Customer_Star_Rating to spot duplicates.
| Symptom | Likely cause | Fix |
|---|---|---|
| Zero rows exported | Reviews did not load, verification blocked the page, or the row selector never appeared | Handle prompts, wait for review cards, and rerun one listing. |
| Truncated review text | "Show more" buttons were not expanded | Rerun after the JavaScript finishes, or increase its timeout. |
| Reviewer names look wrong | Airbnb changed the card text order | Inspect one card and adjust the parser. |
| Average ratings are blank | The listing does not expose category averages in that view | Keep the row and treat these fields as optional. |
| CSV duplicates appear | The same URL was supplied twice or lazy loading repeated a card | Dedupe by listing URL, reviewer, posted month, and rating. |
Alternatives
UScraper vs Airbnb review APIs and hosted scrapers
If you search for airbnb review data api or best airbnb scraper tools, you will find hosted and code-first options. StayAPI and Outscraper document review API endpoints, while Apify marketplace actors package extraction behind cloud runs.
UScraper fits a different job: a supervised local CSV export where an analyst wants to see the page, tune the workflow, and keep the output on disk.
| Approach | Best fit | Trade-off |
|---|---|---|
| UScraper local desktop template | One-off or recurring research exports to CSV | You maintain selectors when Airbnb changes layout. |
| Hosted scraper actor | Cloud scheduling and managed runtime | Pricing and data custody depend on the vendor. |
| Review API provider | Programmatic ingestion and documented endpoints | Usually requires keys, usage costs, and vendor terms. |
FAQ
Airbnb review scraping FAQ
Legality depends on jurisdiction, permission, data type, volume, and use case. Review Airbnb's Terms of Service, robots.txt, review policies, and applicable privacy law before running automation. Avoid login-only data, access-control bypassing, personal data misuse, and high-volume collection without a documented basis.
Next step
Download the Airbnb review details scraper template
When you are ready to run the workflow, download the JSON from Airbnb EN Review Details Scraper and keep this article open for QA. For adjacent no-code scraping workflows, browse the UScraper template library or the UScraper blog.

