Daily Leadfeeder website visitor log to Google Sheets

Every morning at 7am, append yesterday's identified company visitors from Leadfeeder into a running Google Sheet you can pivot and chart in any BI tool.

Deterministic Code
LeadfeederGoogle SheetsSalesOperationsDaily DigestsData Sync
PromptCreate

Build a code workflow that logs yesterday's Leadfeeder website visitors into a Google Sheet every morning so I have a running, dated history every other dashboard and BI tool can pivot against.

Trigger: cron, every day at 7:00am in my local timezone.

Step 1. Compute yesterday's date in YYYY-MM-DD.

Step 2. Call Leadfeeder's List Leads action for my account with start_date and end_date both set to yesterday. Paginate using page[number] starting at 1 with page[size]=100, incrementing page[number] until the returned data array is shorter than 100. Collect every lead across all pages into one in-memory array.

Step 3. If the array is empty, end the workflow with no writes. Do not append a blank row.

Step 4. Map each lead to a row with these columns in this order: visit_date, company_name, domain, country, industry, employee_count, lead_score, page_count, session_count, top_pages, referrer, assigned_to. Use yesterday's date for visit_date. Pull the other fields from the lead's attributes (top_pages is a comma-joined string of the lead's top page paths). If a field is missing on a lead, leave that cell blank.

Step 5. Call Google Sheets Append Values exactly once with the full batch of rows onto a designated tab in a designated spreadsheet. Use valueInputOption USER_ENTERED so dates and numbers parse correctly. One append per run, never one row at a time.

Inputs to expose at the top of the workflow: Leadfeeder account ID, target spreadsheet ID, target tab name, and an optional Leadfeeder custom_feed_id to scope the visitor list to a saved feed. The destination tab should already have a header row matching the column order above.

What does this prompt do?

  • Runs every morning at 7am and pulls yesterday's identified company visitors from Leadfeeder.
  • Adds one row per company to a designated tab with visit date, company name, domain, country, industry, employee count, lead score, page count, session count, top pages, referrer, and assigned owner.
  • Writes the full batch in a single append so you build a clean, dated history that any dashboard or BI tool can sit on top of.
  • Skips the write on days with no visitors so the sheet never collects blank rows.

What do I need to use this?

  • A Leadfeeder account on a paid plan with API access enabled.
  • A Google account with edit access to the spreadsheet you want to log into.
  • The spreadsheet ID and the name of the tab where the daily rows should land.

How can I customize it?

  • Move the run time earlier or later, or switch to a weekday-only cadence.
  • Narrow the visitor list to a saved Leadfeeder feed, for example ICP accounts or a specific region.
  • Add or remove columns to match the shape your dashboards already expect.

FAQs

Will this work on the free Leadfeeder plan?
No. Leadfeeder gates API access to paid plans, so you need at least a paid tier for the daily pull to return data.
What happens on days with no website visitors?
Nothing is written. The workflow skips the append on empty days so your sheet does not collect blank rows.
Can I point this at a different spreadsheet later?
Yes. Update the spreadsheet ID and tab name in the workflow inputs and the next run will start writing to the new destination.
Will it create duplicate rows if I run it twice in one day?
It always appends the visitors Leadfeeder reports for yesterday's date range, so a second run on the same day would re-append the same companies. Run it once per morning, or filter on the visit date column downstream.
Can I connect this sheet to Looker, Tableau, or Power BI?
Yes. That is the point of the dated, one row per company format. Any BI tool that connects to Google Sheets can sit on top of this log directly.

Related templates

Call overdue Xero customers with an AI collections agent

Every weekday at 10am, an AI voice agent phones your most overdue Xero accounts, logs what each customer promised, and reports back to finance in Slack.

LiveKit
Xero
Deepgram
+2
Agentic Task
Local listing health board for every location you manage

See every Google Maps listing you manage on one screen, ranked worst first, with an audit button that writes the fix list for you.

Local Business Data
Google Sheets
App
Let support send one-off Loops emails without an engineer

Your team picks a template, finds the customer, checks they are safe to email, then sends it, with every send logged where the whole team can see it.

Loops.so
Stripe
Google Sheets
App
Stop cold emails to anyone with a live deal in Pipedrive

Every night at 2am, pull the contacts on your open and won deals and block them from your cold outreach before the next send goes out.

Mailshake
Pipedrive
Google Sheets
Deterministic Code
iMessage campaign console with pre-flight checks and delivery board

Build every text campaign in one screen: check who is actually reachable, see a realistic send plan, then watch delivery land row by row.

LoopMessage
Google Sheets
HubSpot
App
LinkedIn Ads budget pacing dashboard for every client account

See every LinkedIn ad account's spend against the budget you committed to, catch overspend early, and rebalance without rebuilding a spreadsheet.

LinkedIn Ads
Google Sheets
Slack Bot
App

Stop losing yesterday's website visitors.

Connect Leadfeeder and Google Sheets once, and Geni logs every identified visitor into a clean, dated history your dashboards can sit on top of.