This Pipedream workflow enriches companies with Lusha on a schedule you set. It pulls companies from your queue (a CRM, a database, a Google Sheet, or a Pipedream data store), adds verified firmographic data from Lusha, and writes the results back, so your company data stays current without manual batch jobs.
Build a scheduled company enrichment pipeline
Why schedule company enrichment?
Most teams know they need to enrich company data regularly, but it often becomes a manual task: export a list, run enrichment, import the results, and repeat next week. Someone forgets to run it, or the backlog grows faster than anyone can process it.
This workflow runs enrichment on a schedule. Set it once, and companies get enriched automatically, nightly, weekly, or on whatever cadence your data needs.
What this workflow does
- Runs on a schedule you set (hourly, daily, weekly, or custom)
- Pulls a batch of companies that need enrichment from your CRM, database, Google Sheet, or Pipedream data store
- Enriches each company with Lusha, adding industry, employee count, revenue, HQ, funding, and tech stack
- Writes the results back to the original records
- Logs failed enrichments and keeps the rest of the batch running
How to set it up
Use the Pipedream template
Start from the “Enrich Companies with Lusha API on New Scheduled Tasks from Pipedream API” template. It includes two steps: the schedule trigger and the Lusha company enrichment action. You add the queue, write-back, and error-handling steps below.
Configure the schedule trigger
Set up when and how often enrichment runs:
- Frequency: Select interval (every hour, daily at 2 AM, weekly on Sundays, custom cron)
- Timezone: Set your timezone so schedules run at the right time
- Batch size: Define how many companies to process per run (e.g., 100)
Connect to your company queue
Add a step to pull companies that need enrichment:
Option A: From CRM (HubSpot/Salesforce)
- Query companies with missing fields
- Filter by “enrichment status = pending”
- Limit to batch size (e.g., 100 records)
Option B: From Google Sheets
- Read rows from “Company queue” tab
- Filter where “Status = Pending”
- Process in order (FIFO)
Option C: From database
- Run SQL query to fetch pending companies
- Order by priority or created date
- Limit by batch size
Option D: From Pipedream data store
- Fetch queued company records
- Process oldest first
Loop through companies and enrich
For each company in the batch:
- Extract domain or company name
- Call Lusha Company API
- Store enriched data (industry, size, revenue, location, etc.)
- Update status to “Enriched” or “Failed”
Write results back to source
Update the original records with enriched data:
- CRM: Update company/account fields with Lusha data
- Sheets: Write enriched columns back to the row
- Database: UPDATE statement with new firmographics
- Data store: Save enriched company object
Add error handling and logging
Configure what happens when enrichment fails:
- Log failed companies to a separate list/table
- Mark status as “Failed” with error reason
- Skip and continue to next company (don’t break the batch)
- Send alert if failure rate exceeds threshold (e.g., >10%)
Test the scheduled workflow
Run manually first to verify:
- Companies are fetched from queue correctly
- Lusha returns enriched data
- Results write back to source successfully
- Status updates work as expected
- Failed enrichments are handled gracefully
Then enable the schedule and monitor the first few automated runs.
What to do next
- Add priority scoring: Enrich high-value or active accounts first before processing the entire backlog
- Build progress dashboards: Track enrichment coverage rate, API usage, and queue size over time
- Layer in data refresh logic: Re-enrich companies older than 90 days to catch growth/changes
- Add deduplication: Skip companies already enriched within the last X days to save API credits
- Send completion reports: Slack/email summary after each batch (e.g., “Enriched 100 companies, 95 successful, 5 failed”)
- Connect to multiple destinations: Write enriched data to both CRM and data warehouse simultaneously
The goal: Company enrichment doesn’t depend on someone remembering to run it. Set a schedule once, and your data stays fresh automatically, whether it’s 100 companies a day or 1,000 a week.
FAQ
Use this Pipedream workflow. It pulls companies from your queue on the schedule you set, enriches them with Lusha, and writes the results back to the source.
Your CRM (HubSpot or Salesforce), a database, a Google Sheet, or a Pipedream data store.
Industry, employee count, revenue, headquarters, funding, and tech stack.
Set a batch size for each run, and skip companies that were enriched recently.
The workflow marks it as Failed with the error reason, logs it, and moves on to the next company, so the rest of the batch keeps running.
Ready to run this?
One data connection. Works in Claude, ChatGPT, your CRM, or any agent you build.