Track hotel rate positioning with Bright Data, GPT-5.6, Google Sheets and Slack

Go to Workflow
0 views
Built by Daniel Shashko Daniel Shashko
Created on August 27, 2026

Description

Quick overview
This workflow runs every Monday to scrape Google Hotels rates via Bright Data for four future check-in dates, calculates your property’s price position against a star-banded comp set, appends the results to Google Sheets, and posts a short GPT-5.6 summary to Slack.

How it works
Runs every Monday morning on a schedule.
Builds a four-date Google Hotels search grid from your settings (market term, stay length, guests, country/currency, and date horizons) and triggers a single Bright Data dataset job with all inputs.
Polls Bright Data until the snapshot is ready (or a maximum poll limit is reached) and then downloads the full rate snapshot.
Cleans and filters the results by removing sponsored booking options and excluding out-of-band properties by star rating, then computes per-date comp-set quartiles, your cheapest rate, your rank, and your channel spread.
Sends the computed per-date stats to GPT-5.6 (OpenAI) to generate a short narrative note without inventing new numbers or recommending a new rate.
Appends one row per date to a Google Sheets “Rates” tab and posts a single combined digest message to the configured Slack channel.

Setup
Create a Bright Data Web Scraper API header-auth credential and ensure it has access to the Google Hotels dataset used by the workflow.
Add an OpenAI (Chat) credential for the GPT-5.6 model, plus Google Sheets OAuth credentials and a Slack OAuth credential.
Update the Settings values (property name, market search term, horizons in nights_ahead, star band, and Slack channel), keeping accommodation_type and sort_by exactly as expected (case-sensitive).
Replace the Google Sheets document URL/ID in the Google Sheets append step and ensure the spreadsheet has a sheet/tab named “Rates” with columns that match the fields being appended.

Nodes Used (6)

Basic LLM Chain
@n8n/n8n-nodes-langchain.chainLlm
Code
n8n-nodes-base.code
Google Sheets
n8n-nodes-base.googleSheets
HTTP Request
n8n-nodes-base.httpRequest
OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi
Slack
n8n-nodes-base.slack