{"product_id":"instagram-profile-scraper-with-apify-google-sheets","title":"Instagram Profile Scraper with Apify → Google Sheets","description":"\u003ch3\u003eScrape Instagram profiles from Apify and sync results to Google Sheets with n8n\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow takes Instagram usernames from an n8n form, uses \u003cstrong\u003eApify’s Instagram Profile Scraper\u003c\/strong\u003e to collect public profile and recent post metrics, then \u003cstrong\u003eupserts\u003c\/strong\u003e the results into \u003cstrong\u003eGoogle Sheets\u003c\/strong\u003e—so reruns update existing rows instead of creating duplicates.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eReceives usernames\u003c\/strong\u003e submitted through an n8n form (comma- or newline-separated).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eNormalizes input\u003c\/strong\u003e into a clean username list and sets run parameters (including the Apify actor and how many recent posts to analyze).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eFetches data in one batched request\u003c\/strong\u003e to the \u003cstrong\u003eApify Instagram Profile Scraper API\u003c\/strong\u003e to retrieve profile details and latest post statistics.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eHandles outcomes consistently\u003c\/strong\u003e: detects valid profile data and formats records for scraped results vs. private\/not-found outcomes.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eCaptures failures\u003c\/strong\u003e: if Apify request errors occur, it creates an error record with a clear status and timestamp.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eUpserts into Google Sheets\u003c\/strong\u003e: merges scraped outcomes and appends\/updates rows in the \u003cstrong\u003eProfiles\u003c\/strong\u003e sheet (including fields like engagement rate and a high-profile flag).\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eBuild and refresh an Instagram lead list by collecting usernames via an n8n form.\u003c\/li\u003e\n  \u003cli\u003eMonitor creator\/account metrics (followers, biography, verification\/private status, and engagement rate) for outreach or reporting.\u003c\/li\u003e\n  \u003cli\u003eRun repeatable SaaS ops workflows to keep a “Profiles” table current as new usernames are added.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003en8n nodes:\u003c\/strong\u003e Form Trigger, set, if, merge, and HTTP Request (plus a sticky note).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eApify integration:\u003c\/strong\u003e add your Apify API token using HTTP Header Auth (Authorization: \u003ccode\u003eBearer \u0026lt;token\u0026gt;\u003c\/code\u003e) for the Apify Instagram Profile Scraper request.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGoogle Sheets:\u003c\/strong\u003e OAuth2 credential; select your spreadsheet and the \u003cstrong\u003eProfiles\u003c\/strong\u003e sheet (or create it) with columns for logged fields (e.g., \u003cem\u003eusername, fullName, followersCount, followsCount, biography, profilePicUrl, externalUrl, isPrivate, isVerified, postsCount\u003c\/em\u003e).\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":45761003159731,"sku":"N8N-17836","price":43.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/zt8UYYTYuWRo7g8QLpMcF_4vZATQVI.png?v=1785920808","url":"https:\/\/buyflowscripts.com\/products\/instagram-profile-scraper-with-apify-google-sheets","provider":"N8N Commerce","version":"1.0","type":"link"}