Automatically Save Facebook Lead Ads Contacts to Google Sheets in Real Time
Every time someone submits a Facebook Lead Ad form, their details are instantly captured and added as a new row in Google Sheets. No more manual CSV exports or missed leads.
- 1
Connect the Facebook Lead Ads Trigger
Add a
Facebook Lead Ads Triggernode. In the credentials section, connect your Facebook account via OAuth. SetPageto the Facebook Page running your ads and setFormto the specific lead form you want to capture. This node listens for new submissions automatically. - 2
Extract and Format Lead Fields
Add a
Setnode after the trigger. Create fields to map the incoming data cleanly: setFull Nameto{{$json.field_data.find(f => f.name === 'full_name')?.values[0]}},Emailto{{$json.field_data.find(f => f.name === 'email')?.values[0]}},Phoneto{{$json.field_data.find(f => f.name === 'phone_number')?.values[0]}}, andSubmitted Atto{{$now.toISO()}}. Adjust field name keys to match your exact form fields. - 3
Append the Lead to Google Sheets
Add a
Google Sheetsnode set to operationAppend Row. Connect your Google account via OAuth. SetSpreadsheet IDto your target sheet andSheet Nameto the tab where leads should land (e.g.Leads). Map the columns:Full Name,Email,Phone,Submitted Atto the fields you created in the previous step. Make sure your sheet header row has matching column names.
Frequently asked questions
Do I need a developer or any coding skills to set this up?
No. n8n provides a visual drag-and-drop interface. You just connect your Facebook and Google accounts, point the nodes at your form and spreadsheet, and activate the workflow. No code required.
What happens if Facebook sends a lead while my n8n instance is offline?
Facebook webhooks may not retry missed events if n8n is down. To avoid data loss, use n8n Cloud (which stays online 24/7) or ensure your self-hosted instance has reliable uptime. You can also periodically run a manual Facebook Lead Ads export as a backup.
Can I capture custom questions I added to my lead form?
Yes. In the `Set` node, add extra fields and reference your custom question's internal name from Facebook. You can find each field's internal name in Facebook Ads Manager under your form's Questions section. Add matching column headers in your Google Sheet as well.