n8n's built-in HTML Extract handles static pages and chokes on the rest. The cloud alternatives bill you per browser-minute. LumaBrowser is a free local browser with a REST API your existing HTTP Request node already knows how to call — plus outbound webhooks that can be the trigger for an automation.
The pattern every n8n / Zapier / Make user hits eventually. A workflow needs to scrape a competitor's pricing page, log in to a vendor dashboard, or fill a form. The built-in HTML Extract node returns nothing because the page renders in JavaScript. You install a community Puppeteer node, fight Docker for an afternoon, and rebuild the workflow. Six months later the bundled Chromium drifts, the node breaks, and you migrate to Browserless — and now you're paying $25–$140/month per account for the privilege of running a browser.
LumaBrowser exposes a local REST API on http://localhost:3000. n8n's built-in HTTP Request node calls it directly — no community packages, no extra Docker container, no API key. The same goes for Make's HTTP module and Zapier's Webhooks by Zapier when paired with a tunnel.
// In your n8n HTTP Request node, set:
Method: POST
URL: http://localhost:3000/api/browser/tabs/0/get_element
Body: JSON
Body Content: {
"selector": ".product-price",
"llmFallback": "the visible price next to the buy button"
}
// Output is JSON. Pipe directly into the next node —
// Set, Code, IF, or whatever your workflow needs.
curl -X POST http://localhost:3000/api/browser/tabs/0/get_element \
-H "Content-Type: application/json" \
-d '{
"selector": ".product-price",
"llmFallback": "the visible price next to the buy button"
}'
Five nodes, five minutes to build. Same shape works for stock-level monitoring, status-page tracking, lead enrichment, internal-dashboard scraping — whatever your agency clients are asking for.
n8n's built-in cron, every hour. Or use LumaBrowser's Timed Tasks instead and skip n8n's scheduler.
POST /api/browser/tabs with the competitor URL. Real Chromium, JS-rendered.
POST /api/browser/tabs/0/get_element with selector + llmFallback.
Compare against last value (Set node + n8n static data). Branch on changed.
Native Slack node, formatted message with old vs. new price.
No new dependencies in your n8n install. No browser-minute meter ticking. No bundled Chromium to drift. The HTTP Request nodes target localhost — same machine, same Docker network, or via host networking on a self-hosted instance.
Most workflow articles talk about calling a browser from a workflow. The other half is the browser starting a workflow. LumaBrowser does both.
Add a Webhook node in n8n. Copy its URL into LumaBrowser's Page Change Detector. The moment the watched page changes, the diff payload POSTs to your workflow — same shape every time, branch on whatever you need.
Replaces a polling cron + diff-comparison node combo with a single push trigger. Equivalent in Make: Webhooks → Custom webhook. Equivalent in Zapier: Webhooks by Zapier → Catch Hook.
Or skip n8n's scheduler entirely. LumaBrowser's Timed Tasks run an LLM-driven browser script on a schedule, return structured JSON, and POST it to a webhook URL of your choice — same place n8n is listening.
Useful when the “workflow” is mostly a browser flow with one notification step at the end. The browser side runs locally; n8n / Make / Zapier just receives the result.
Comparing the practical paths a self-hosted n8n user has for “real browser in my workflow”.
| n8n built-in HTML Extract | n8n-nodes-puppeteer (community) | Browserless (cloud or self-host) | Browserbase | LumaBrowser | |
|---|---|---|---|---|---|
| Cost | Free, included | Free, OSS | Free 1k units, $25+/mo | Free 1 hr, $20+/mo | Free |
| Renders JS / SPA pages | No (HTTP only) | Yes (bundled Chromium) | Yes | Yes | Yes — always |
| Where the browser runs | n/a | Inside your n8n container | Vendor cloud (or self-host) | Vendor cloud only | Local desktop app |
| Self-healing selectors | No | No | No | Stagehand AI actions | Per-call llmFallback |
| Outbound webhook on page change | No | Build it yourself | Build it yourself | Build it yourself | Built in |
| Setup in n8n | Already there | Install community node + restart | HTTP Request + token, or community node | HTTP Request + Stagehand SDK | Just HTTP Request |
| Authenticated targets | Cookies via header | Manual login flow | Manual login flow | Managed sessions | Your logged-in session |
Pricing as listed by each vendor at time of publication. Self-hosted Browserless skips the metered pricing in exchange for running a separate container alongside your n8n stack and managing image upgrades (v1 to v2 was a non-trivial migration).
This comparison reflects publicly available pricing and feature information gathered to the best of our knowledge from each vendor's public materials. Vendors update plans frequently and we're a small team — if anything here looks wrong, please email [email protected] with the correction and a source, and we'll update the page.
LumaBrowser is the local browser your n8n / Zapier / Make stack already wishes you had wired up. Free to download, plugs into the nodes you already have, runs on whatever box your workflow runs on.