Airbnb Google Sheets

Get Airbnb reviews into Google Sheets.

One endpoint call, the Google Sheets setup steps, and a field-to-column map. Then keep it refreshing on a schedule.

50 free requests on signup No credit card

Trusted by hospitality teams at

The pieces

One source, one destination.

Airbnb Airbnb

Airbnb data is listing-level: reviews, nightly pricing with fees, and calendar availability for individual rentals rather than hotel inventory. Below, that review stream lands in Google Sheets row by row.

Google Sheets Google Sheets

Google Sheets is still the fastest way to get data in front of people who do not write code. One Apps Script function turns a sheet into a live feed your whole team can read, filter, and chart. In this guide it reads Airbnb reviews straight from the StayAPI endpoint.

The call

One endpoint returns Airbnb reviews.

The Airbnb Listing Reviews endpoint returns clean JSON for one listing. Send your key in the X-API-Key header. See the endpoint docs for every parameter.

Setup

Wire Google Sheets to the endpoint.

  1. 01

    Create a StayAPI account and copy your API key from the dashboard.

  2. 02

    Open your sheet, then Extensions > Apps Script.

  3. 03

    Paste the fetch script below and set your API key.

  4. 04

    Run it once to authorize, then add a time-driven trigger to refresh on a schedule.

Config

Apps Script: fetch and write rows.

This uses the real endpoint URL with the example Central Warsaw Studio "Zgoda BLUE" id. Swap in your listing id and your API key.

refresh.gs
function refreshData() {
  var url = "https://api.stayapi.com/v1/airbnb/listing/reviews/22135033";
  var response = UrlFetchApp.fetch(url, {
    method: "get",
    headers: { "X-API-Key": "YOUR_API_KEY" },
    muteHttpExceptions: true
  });

  var body = JSON.parse(response.getContentText());
  var records = (body.data && body.data.reviews) || body.reviews || body.rooms || [];

  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.clear();
  sheet.appendRow(["retrieved_at", "id", "rating", "text", "language"]);

  var now = new Date();
  records.forEach(function (r) {
    sheet.appendRow([now, r.id, r.rating, r.text, r.language]);
  });
}

50 free requests on signup, no card.

Field mapping

Response fields to columns.

Each field from the Airbnb Listing Reviews response, and a suggested column name.

Response field Column
listing_id listing_id
total_count total_count
review_count review_count
has_more has_more
id id
rating rating
text text
language language
created_at created_at
Result

What it looks like in Google Sheets.

The fields from the mapping above land as columns: listing_id, total_count, review_count, has_more. Refreshed on the schedule you set.

The columns you get

Every row is one listing record from the Airbnb Listing Reviews response. These fields become columns:

  • listing_id
  • total_count
  • review_count
  • has_more
  • id
  • rating
Google Sheets showing Airbnb reviews

Get your key.

Sign up, copy your key into the snippet above, and pull live Airbnb reviews into Google Sheets.

01 · the fast path

Try it free

50 free requests on signup. Fastest way to see if the schema fits.

Start free
  • Live API key in 30 seconds
  • No credit card required
  • Same schema as paid
02 · talk to us

Talk through your pipeline

15 minutes. Volume, endpoint mix, and where the data lands. Walk out with a quote.

Book a demo
  • Quote on the call, not after
  • Engineering, not sales
  • No deck, no slides