Bright Data to Google Docs, lead briefs ready fast
You open a prospect’s website, promise yourself “five minutes,” and suddenly you’re 40 minutes deep in menus, broken pages, and copy-pasted notes that don’t quite add up.
Sales reps feel it right before a call. Agency strategists feel it when they need quick positioning angles. Founders doing their own outbound feel it too. This Bright Data briefs automation turns a single URL into a clean, shareable Google Doc you can actually use.
You’ll see how it finds the right pages (“About”, “Team”, “Contact”), pulls the content reliably, and has AI assemble a short opportunity brief that’s ready for outreach.
How This Automation Works
Here’s the complete workflow you’ll be setting up:
n8n Workflow Template: Bright Data to Google Docs, lead briefs ready fast
flowchart LR
subgraph sg0["When chat message received Flow"]
direction LR
n0@{ icon: "mdi:swap-vertical", form: "rounded", label: "parameters", pos: "b", h: 48 }
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>extract url"]
n2@{ icon: "mdi:cog", form: "rounded", label: "scrap urls", pos: "b", h: 48 }
n3@{ icon: "mdi:brain", form: "rounded", label: "OpenRouter Chat Model1", pos: "b", h: 48 }
n4@{ icon: "mdi:robot", form: "rounded", label: "Structured Output Parser1", pos: "b", h: 48 }
n5@{ icon: "mdi:cog", form: "rounded", label: "scrap urls1", pos: "b", h: 48 }
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/html.dark.svg' width='40' height='40' /></div><br/>HTML cleaner"]
n7@{ icon: "mdi:brain", form: "rounded", label: "OpenRouter Chat Model2", pos: "b", h: 48 }
n8@{ icon: "mdi:robot", form: "rounded", label: "Structured Output Parser2", pos: "b", h: 48 }
n9@{ icon: "mdi:brain", form: "rounded", label: "OpenRouter Chat Model3", pos: "b", h: 48 }
n10["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>merge pages"]
n11["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>clean list"]
n12@{ icon: "mdi:play-circle", form: "rounded", label: "When chat message received", pos: "b", h: 48 }
n13@{ icon: "mdi:robot", form: "rounded", label: "Find best pages", pos: "b", h: 48 }
n14@{ icon: "mdi:robot", form: "rounded", label: "Identify business opportunit..", pos: "b", h: 48 }
n15@{ icon: "mdi:robot", form: "rounded", label: "de-dupe", pos: "b", h: 48 }
n11 --> n5
n0 --> n2
n2 --> n1
n1 --> n13
n10 --> n15
n5 --> n6
n6 --> n14
n13 --> n11
n3 -.-> n4
n3 -.-> n13
n7 -.-> n14
n9 -.-> n15
n4 -.-> n13
n8 -.-> n14
n12 --> n0
n14 --> n10
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n12 trigger
class n4,n8,n13,n14,n15 ai
class n3,n7,n9 aiModel
class n1,n10,n11 code
classDef customIcon fill:none,stroke:none
class n1,n6,n10,n11 customIcon
Why This Matters: Prospect research is slow (and inconsistent)
Prospect research is one of those tasks that looks simple until you do it all day. Homepages are fluffy, navigation is unpredictable, and the pages you actually need are buried three clicks deep. Then you’re copying chunks into a doc, trying to summarize on the fly, and hoping you didn’t miss the one line that explains what the company really does. It’s not just time. It’s mental overhead, and it shows up as generic outreach that gets ignored.
It adds up fast. Here’s where it usually breaks down.
- You bounce between tabs for “About”, “Team”, “Careers”, and “Contact” and still aren’t sure which page matters.
- Manual notes turn into a messy wall of text, so you don’t reuse them for the next touchpoint.
- Some sites block scrapers or load content weirdly, which means your “quick research” becomes a troubleshooting session.
- Two people can research the same company and come away with totally different takeaways.
What You’ll Build: URL-to-brief automation in Google Docs
This workflow starts with a simple chat message containing a company URL (from the n8n chat trigger). It uses Bright Data’s Web Unblocker to fetch the site safely, then pulls a list of links from the homepage and sitemap-style pages it can discover. An AI agent reviews those URLs and keeps only the ones that usually contain the real story, like “about-us,” “team,” and “contact.” Next, Bright Data fetches those selected pages, the workflow extracts the main HTML body, and a second AI agent turns each page into a short opportunity-focused summary. Finally, everything is merged, deduplicated, and shaped into a cohesive brief that’s formatted to drop into a Google Doc for easy sharing.
The workflow begins with one URL. Then it narrows the site down to a small set of high-signal pages, summarizes each, and produces a single brief you can use for outreach or call prep. The result is consistent, readable, and repeatable.
What You’re Building
| What Gets Automated | What You’ll Achieve |
|---|---|
|
|
Expected Results
Say you research 10 new companies a week. Manually, a “quick scan” often turns into about 30 minutes per site between hunting for the right pages and writing something coherent, which is roughly 5 hours weekly. With this workflow, you send one URL in chat (about a minute), then wait while Bright Data and the AI agents process and format the brief (often around 5–10 minutes of background time). You still skim the final doc, but you’re not building it from scratch, so most teams get several hours back each week.
Before You Start
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Bright Data for scraping with Web Unblocker.
- Google Drive / Google Docs to store and share the brief.
- OpenRouter API key (get it from your OpenRouter dashboard).
Skill level: Intermediate. You’ll connect credentials, tweak prompts, and confirm Google Drive permissions.
Want someone to build this for you? Talk to an automation expert (free 15-minute consultation).
Step by Step
A chat message kicks things off. You paste a company URL into your n8n chat (or any chat tool wired to the trigger), and the workflow captures it as the single source of truth.
The website gets fetched reliably. Bright Data pulls the homepage and related starting pages using Web Unblocker, which helps when a site is aggressive about blocking bots or behaves differently outside a browser.
AI narrows the scope to high-signal pages. The workflow extracts links, then an AI agent selects the URLs most likely to contain company info (About, Team, Contact). That short list is what gets scraped next, so you’re not wasting time on blog archives.
Summaries are combined into a brief. Each page is summarized for needs and opportunities, then merged and deduplicated into a final report that’s formatted for a Google Doc you can share with your team.
You can easily modify the prompt focus to match your offer and target market based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Chat Trigger
Set up the chat entry point that collects the target company URL.
- Add and open Incoming Chat Trigger.
- Enable Public to
true. - Set Initial Messages to
Welcome, I am your business opportunity detection agent. Enter the URL of the company to be analyzed, and I will search their website for the best business opportunities based on your activity. - Keep Response Mode set to
lastNodeif you want the final AI summary returned to the chat.
Step 2: Connect Bright Data and Fetch Site Pages
Prepare inputs and crawl the site to collect pages to analyze.
- Open Prepare Inputs and set url to
{{ $json.chatInput }}. - In Prepare Inputs, set sitemap to
sitemap.xml. - Open Fetch Initial Pages and set URL to
{{ $json.url }}. - In Fetch Initial Pages, set Zone to
web_unlocker1and Country tous, with Format asjson. - Credential Required: Connect your brightdataApi credentials in Fetch Initial Pages.
- Open Fetch Selected Pages and set URL to
{{ $json.url }}, Zone toweb_unlocker1, Country tous, and Format tojson. - Credential Required: Connect your brightdataApi credentials in Fetch Selected Pages.
https://) to avoid crawl failures in Fetch Initial Pages and Fetch Selected Pages.Step 3: Set Up Page Discovery and Filtering
Extract links, pick relevant pages, and filter the URL list for further analysis.
- Open Parse Link Targets and keep the provided JavaScript to extract
<a href>URLs fromitems[0].json.body. - Open Select Relevant Pages and set Text to
{{ $json }}. - In Select Relevant Pages, keep Prompt Type as
defineand confirm Has Output Parser is enabled. - Open Filter URL List and keep the provided JavaScript that extracts
item.json.output?.[0]?.urland drops empty values.
Step 4: Configure HTML Extraction and Opportunity Detection
Extract the body content and run AI analysis to find business opportunities on selected pages.
- Open Extract Body HTML and set Operation to
extractHtmlContentand Data Property Name tobody. - In Extract Body HTML, confirm CSS Selector is
body. - Open Detect Business Opportunities and set Text to
{{ $json.body }}. - Ensure Detect Business Opportunities uses Prompt Type
definewith Has Output Parser enabled.
Step 5: Set Up AI Models and Output Parsers
Connect the OpenRouter models and structured parsers used by the AI agents.
- Open OpenRouter Chat Model A and set Model to
openai/o4-miniwith Temperature0. - Credential Required: Connect your openRouterApi credentials in OpenRouter Chat Model A.
- Open Structured Parser A and set Schema Type to
manualwith Input Schema{ "url": "https://www.example.com/about.html" }. Enable Auto Fix. - Open OpenRouter Chat Model B and set Model to
openai/gpt-5with Temperature0. - Credential Required: Connect your openRouterApi credentials in OpenRouter Chat Model B.
- Open Structured Parser B and set Schema Type to
manualwith Input Schema{ "summary": "summary" }. - Open OpenRouter Chat Model C and set Model to
openai/gpt-5with Temperature0. - Credential Required: Connect your openRouterApi credentials in OpenRouter Chat Model C.
Step 6: Configure Aggregation and Summary Output
Merge page-level outputs and produce a deduplicated summary.
- Open Combine Page Results and keep the provided JavaScript that merges all
outputobjects intomergedOutput. - Open Deduplicate Summary and set Text to
{{ $json.mergedOutput }}. - Verify the system message in Deduplicate Summary instructs the model to eliminate redundancies and format for a Google Doc with headings.
Step 7: Test and Activate Your Workflow
Run a full test to confirm crawling, AI analysis, and final response formatting.
- Click Execute Workflow and submit a real website URL in Incoming Chat Trigger.
- Confirm Fetch Initial Pages returns a JSON body and Parse Link Targets outputs URL items.
- Verify Detect Business Opportunities produces JSON output and Deduplicate Summary returns a clean, summarized response.
- When satisfied, toggle the workflow to Active for production use.
Troubleshooting Tips
- Bright Data credentials can expire or need specific permissions. If things break, check your Bright Data zone status and API key settings in n8n credentials first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.
Quick Answers
About 30 minutes once you have your API keys.
No. You’ll mostly connect accounts and adjust a few prompts and fields.
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 Bright Data usage plus OpenRouter model costs per request.
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.
Yes, and you should. The quickest win is editing the “systemMessage” in the AI Agent nodes to match your ICP and what you sell, like “look for compliance gaps” or “spot hiring signals.” You can also swap the OpenRouter model in the OpenRouter Chat Model nodes if you want cheaper runs for high volume. If you want different sourcing, change the link parsing and filtering so it prioritizes pages like “pricing,” “case studies,” or “security.”
Usually it’s an API key or zone issue. Regenerate your Bright Data API key, confirm the Web Unblocker zone is active, then update the credential in n8n. If it works for some sites and not others, you may be hitting tougher bot protection and need to adjust Bright Data settings. Also check the input URL, because redirects and malformed links can cause fetch failures that look like auth errors.
If you self-host, there’s no fixed execution limit (it depends on your server). On n8n Cloud, your monthly executions depend on the plan, and this workflow usually runs one execution per company URL. Practically, the limiting factor is external calls: Bright Data fetches plus AI requests. For many teams, processing a few dozen briefs a day is realistic if you keep prompts tight and avoid scraping unnecessary pages.
Often, yes, because this flow needs multi-step logic (link extraction, filtering, merging, and deduping) that gets awkward and expensive in simpler tools. n8n also gives you more control over how data is transformed between steps, which matters when you want consistent briefs. Zapier or Make can still work if you only need a lightweight “scrape one page, summarize, send to doc” setup. But once you care about selecting the right pages and keeping output quality steady, n8n is usually the calmer option. Talk to an automation expert if you’re not sure which fits.
Once this is running, you stop “researching” and start showing up prepared. The workflow handles the repetitive stuff, and you get to focus on the message that actually wins replies.
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.