🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

BrowserAct to Google Sheets, physician lists done

Lisa Granqvist Partner Workflow Automation Expert

Building a physician list sounds simple until you’re juggling tabs, copying addresses by hand, and realizing half your “new” leads are duplicates you already contacted last month.

Medical recruiters feel this when reqs are piling up. A lead gen specialist feels it when a campaign needs fresh targets by tomorrow. And if you run a small sales team, physician list automation can be the difference between consistent outreach and constant spreadsheet cleanup.

This workflow scrapes physician profiles with BrowserAct, writes clean rows into Google Sheets, and then pings Slack when the batch finishes. You’ll see what it does, what you need, and how to adapt it to your directory and team process.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: BrowserAct to Google Sheets, physician lists done

The Problem: Physician lists get messy fast

When you’re building lists from healthcare directories, the work is never “just copying names.” You search a city, open profiles one-by-one, paste into a sheet, then try to normalize specialties and addresses so your CRM import won’t choke. Miss one detail and the record becomes useless later. Duplicate entries sneak in because the same provider shows up in multiple places, or the directory formats their name slightly differently. After a few weeks, you have a spreadsheet that looks full, but nobody trusts it. Honestly, that’s worse than having no list at all.

The friction compounds. Here’s where it breaks down in the real world.

  • Manual profile copying turns into about 2 hours of busywork every time you refresh a region.
  • Small formatting differences create duplicates, so outreach gets repeated and relationships take a hit.
  • Teams lose momentum because “lead building” becomes a bottleneck instead of a repeatable system.
  • No one knows when the list is updated unless someone remembers to message the group.

The Solution: Scrape, clean, and sync physicians automatically

This n8n workflow turns physician list building into a simple batch job you can run whenever you need fresh coverage for a city and state. You start by setting the target region (location and state). Then BrowserAct runs a saved “Physician Profile Enricher” template against a healthcare directory (the workflow description mentions Healow as an example) and returns the scraped profile data. Next, the workflow parses that output into structured records, so each physician becomes a clean JSON object rather than a blob of text. Finally, it appends those records into Google Sheets in a consistent format and avoids duplicate entries by updating existing rows when the physician name matches. When it’s done, Slack posts a confirmation to your chosen channel so your team knows the list is ready.

It begins with a manual launch in n8n, which is perfect for “run this list now” moments. BrowserAct pulls the profiles, the workflow separates them into individual records, and Google Sheets becomes the single place your team can filter, assign, and export from. Slack is your finish line notification, so you don’t have to keep checking if it worked.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you need a fresh list for one metro area and you collect 60 physician profiles. Manually, even a quick pace of 5 minutes per profile is about 5 hours once you include copy-paste, cleanup, and duplicate checking. With this workflow, you spend about 5 minutes setting the location and launching the run, then wait while BrowserAct scrapes and n8n writes rows to Google Sheets. Slack lets you know when it’s finished. You’re back to doing outreach instead of spreadsheet babysitting.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • BrowserAct for scraping physician profile pages
  • Google Sheets to store your provider database
  • Slack to notify your team when done
  • BrowserAct API key (get it from your BrowserAct account settings)

Skill level: Beginner. You’ll connect accounts, choose a sheet, and edit a couple of fields like city and state.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

Manual batch trigger. You run the workflow when you want to refresh a list for a specific territory. It’s a deliberate “go” button, not something that fires at random.

Region is defined up front. The workflow stores your target city and state in a simple field-setting step, so the rest of the run stays consistent.

BrowserAct scrapes the directory. Using your saved “Physician Profile Enricher” template, BrowserAct pulls the profiles that match your criteria and returns the results to n8n.

Records are parsed and synced. n8n separates the raw output into individual providers, then writes them into Google Sheets in the headers you control (Name, Specialty, Address). A duplicate prevention approach updates existing entries rather than endlessly appending new copies. Finally, Slack posts a “finished” message so the team can start using the list.

You can easily modify the location inputs to run multiple cities back-to-back based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Manual Trigger

Set up the manual trigger to start the enrichment flow on demand.

  1. Add the Manual Launch Trigger node to the canvas as the starting point.
  2. Connect Manual Launch Trigger to Set Region Details to match the execution flow.
  3. Optionally keep Flowpast Branding as a sticky note for documentation (no configuration required).

Step 2: Connect BrowserAct

Configure regional inputs and pass them into BrowserAct for data extraction.

  1. In Set Region Details, add two string assignments: set Location to Brooklyn and State to NY.
  2. Open Execute BrowserAct Run and set Type to WORKFLOW.
  3. Set Timeout to 7200 and Workflow ID to [YOUR_ID].
  4. Map workflowConfig inputs: set input-State to {{ $json.State }} and input-Location to {{ $json.Location }}.
  5. Credential Required: Connect your browserActApi credentials in Execute BrowserAct Run.
  6. Connect Set Region DetailsExecute BrowserAct RunSeparate Records.

⚠️ Common Pitfall: If Workflow ID is left as [YOUR_ID], BrowserAct will fail to run. Replace it with the actual workflow ID from BrowserAct.

Step 3: Set Up Record Processing

Split the BrowserAct output into individual provider records for downstream insertion.

  1. Open Separate Records and keep the provided JavaScript code to parse $input.first().json.output.string.
  2. Verify the BrowserAct workflow returns a JSON string at $input.first().json.output.string, or the code will throw an error.
  3. Connect Execute BrowserAct Run to Separate Records to maintain the execution flow.

Tip: If your BrowserAct output format changes, update the path in Separate Records to match the actual JSON string location.

Step 4: Configure Output Actions

Append provider data to Google Sheets and notify Slack when the workflow completes.

  1. In Append Provider Rows, set Operation to appendOrUpdate.
  2. Select the Document as [YOUR_ID] and the Sheet as [YOUR_ID] (cached name: Physician Profile).
  3. Map columns: set Name to {{ $json.item[0].Name }}, Address to {{ $json.item[0].Address }}, and Specialty to {{ $json.item[0].Specialty }}.
  4. Credential Required: Connect your googleSheetsOAuth2Api credentials in Append Provider Rows.
  5. In Notify Slack Channel, set Text to Physician Profile Enricher Workflow Finished succesfully and Select to channel.
  6. Choose the Channel as [YOUR_ID] (cached name: all-browseract-workflow-test).
  7. Credential Required: Connect your slackApi credentials in Notify Slack Channel.
  8. Connect Separate RecordsAppend Provider RowsNotify Slack Channel.

⚠️ Common Pitfall: The column expressions in Append Provider Rows reference $json.item[0]. Ensure each item from Separate Records contains an item array with index 0, or update the expressions to match your data shape.

Step 5: Test and Activate Your Workflow

Run a full test to validate data extraction, parsing, and outputs before enabling production use.

  1. Click Execute Workflow on Manual Launch Trigger to run the automation end-to-end.
  2. Confirm Append Provider Rows adds or updates rows in your Google Sheet with Name, Address, and Specialty fields.
  3. Verify Notify Slack Channel posts the completion message in the selected Slack channel.
  4. Once confirmed, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • BrowserAct credentials can expire or need specific permissions. If things break, check your BrowserAct API key in n8n’s Credentials and confirm the “Physician Profile Enricher” template is available in your BrowserAct account.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Google Sheets can fail silently when headers don’t match. If new rows are missing fields, confirm your sheet has exactly Name, Specialty, and Address (and that the selected worksheet tab is the right one).

Frequently Asked Questions

How long does it take to set up this physician list automation?

About 30 minutes if your BrowserAct, Google Sheets, and Slack accounts are ready.

Do I need coding skills to automate physician list building?

No. You’ll mostly connect accounts and choose your spreadsheet. The only “technical” part is confirming your sheet headers match what the workflow writes.

Is n8n free to use for this physician list automation workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in BrowserAct usage costs based on how many profiles you scrape.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this physician list automation workflow for a different directory like Zocdoc?

Yes, but you’ll customize it in the BrowserAct template first. Swap the target site inside your “Physician Profile Enricher” template, then adjust the parsing in the Separate Records step if the output fields change. Common tweaks include adding phone number, accepting new patients, or splitting the address into city/state/zip columns.

Why is my BrowserAct connection failing in this workflow?

Usually it’s an expired or incorrect API key in n8n Credentials. It can also happen when the BrowserAct template name changed, or the template wasn’t saved in the BrowserAct account you connected. If the directory site updates its layout, your template may start returning empty results, which looks like a “connection issue” but isn’t.

How many physician profiles can this physician list automation handle?

A few hundred profiles per run is typical, assuming your BrowserAct task can complete without timeouts and your Google Sheet isn’t already enormous. On n8n Cloud, your limit is mostly your monthly executions; if you self-host, the practical limit is your server resources and how long BrowserAct takes to scrape the directory. If you plan to pull thousands at a time, run smaller batches by city or specialty so you can retry cleanly when a scrape hiccups.

Is this physician list automation better than using Zapier or Make?

Often, yes. This workflow depends on scraping, parsing, and deduping logic, which is where n8n tends to feel more flexible. You can keep everything in one place, add conditional checks, and self-host if volume grows. Zapier or Make can be fine for simple “new row → send message” automation, but they get awkward when the data arrives as a raw blob and needs cleanup first. Talk to an automation expert if you want help choosing.

Once this is running, list building stops being a chore you dread and becomes a button you press. The workflow handles the repeatable parts, and your team gets a clean sheet they can actually work from.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal