{"product_id":"bulk-project-url-discovery-in-google-sheets-with-firecrawl-n8n","title":"Bulk Project URL Discovery in Google Sheets with Firecrawl (n8n)","description":"\u003ch3\u003eBulk discover project and portfolio URLs from a list of websites in Google Sheets—using Firecrawl Map inside n8n\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow reads sites from your Google Sheet, runs \u003cstrong\u003eFirecrawl Map\u003c\/strong\u003e to find relevant project\/content links for each site, writes the mapped URLs back to Google Sheets, and marks each site as \u003cstrong\u003eDone\u003c\/strong\u003e or \u003cstrong\u003eError\u003c\/strong\u003e. Run it manually anytime you need fresh URL discovery.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eManual trigger:\u003c\/strong\u003e Starts when you manually execute the workflow in n8n.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eReads input from Google Sheets:\u003c\/strong\u003e Loads rows from the \u003cstrong\u003e“Sites”\u003c\/strong\u003e sheet and processes only entries where the \u003cstrong\u003eStatus\u003c\/strong\u003e field is empty.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eNormalizes site data:\u003c\/strong\u003e Normalizes the site name and domain for downstream steps.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eRuns Firecrawl Map:\u003c\/strong\u003e Calls the Firecrawl \u003cstrong\u003eMap API endpoint\u003c\/strong\u003e to crawl the site and return discovered links.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eFilters for likely project\/portfolio pages:\u003c\/strong\u003e Filters the returned links to keep likely project\/content URLs, then saves results to the \u003cstrong\u003e“Mapped URLs”\u003c\/strong\u003e sheet.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eWrites status back to Google Sheets:\u003c\/strong\u003e Updates the original \u003cstrong\u003eSites\u003c\/strong\u003e row to \u003cstrong\u003eStatus = Done\u003c\/strong\u003e, or logs issues to \u003cstrong\u003e“Mapped URLs”\u003c\/strong\u003e and sets \u003cstrong\u003eStatus = Error\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eRate-friendly pacing:\u003c\/strong\u003e Waits \u003cstrong\u003e20 seconds\u003c\/strong\u003e between sites before continuing.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eBulk prospecting for agencies, studios, or creators by extracting portfolio\/project URLs across many domains.\u003c\/li\u003e\n  \u003cli\u003eRegularly refreshing a curated list of mapped URLs stored in Google Sheets.\u003c\/li\u003e\n  \u003cli\u003eAutomating “crawl → filter → write back” workflows for research and lead generation pipelines.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGoogle Sheets integration:\u003c\/strong\u003e Reads from \u003cem\u003e“Sites”\u003c\/em\u003e and writes to \u003cem\u003e“Mapped URLs”\u003c\/em\u003e (Name, Home Domain, Mapped URL, Error Message).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eFirecrawl Map API:\u003c\/strong\u003e Uses an \u003cstrong\u003eHTTP Header Auth credential\u003c\/strong\u003e (Firecrawl API key) for the Firecrawl Map request.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003en8n nodes referenced in the workflow:\u003c\/strong\u003e \u003cem\u003eSet\u003c\/em\u003e, \u003cem\u003eCode\u003c\/em\u003e, \u003cem\u003eNo Op\u003c\/em\u003e, \u003cem\u003eWait\u003c\/em\u003e, \u003cem\u003eFilter\u003c\/em\u003e, and \u003cem\u003eSticky Note\u003c\/em\u003e.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eSetup tip:\u003c\/strong\u003e Ensure your spreadsheet has a \u003cstrong\u003e“Sites”\u003c\/strong\u003e sheet with at least \u003cstrong\u003eName\u003c\/strong\u003e, \u003cstrong\u003eWebsite\u003c\/strong\u003e, and \u003cstrong\u003eStatus\u003c\/strong\u003e, and a \u003cstrong\u003e“Mapped URLs”\u003c\/strong\u003e sheet with the required columns.\u003c\/p\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":45850728267955,"sku":"N8N-18116","price":28.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/LRyyWKOtwTUsDNskFPF5H_5R6r4ScC.png?v=1786871589","url":"https:\/\/buyflowscripts.com\/products\/bulk-project-url-discovery-in-google-sheets-with-firecrawl-n8n","provider":"N8N Commerce","version":"1.0","type":"link"}