Ops

Auto-enrich companies from Snowflake

Build a data warehouse enrichment workflow that monitors Snowflake for new company records, enriches each one with Lusha’s verified firmographic data, and writes the results back into Snowflake—so your analytics, BI dashboards, and data science models always work with complete, current company data.

Why this works

Most data teams face the same problem: company records flow into Snowflake from CRM, product, billing, and other sources, but firmographic fields (industry, size, revenue, location) are missing or outdated.

The typical workaround is painful: export companies to CSV, run enrichment externally, re-import, repeat. That process breaks quickly—it’s manual, slow, and falls behind as new companies arrive daily.

This play makes enrichment part of your data pipeline. New rows trigger enrichment automatically, results write back to Snowflake immediately, and downstream analytics always see complete data—without exports, manual intervention, or data engineering custom code.

What you get

  • Automatic Snowflake monitoring that polls for new company records every 15 minutes (configurable)
  • Row-by-row enrichment where each new company triggers Lusha enrichment individually
  • Complete firmographics including industry, employee count, revenue, HQ, funding stage, and tech stack
  • Direct Snowflake writes that update enriched fields in your warehouse tables
  • Analytics-ready data so BI tools, models, and reports work with complete company profiles
Built by: Lusha
Difficulty: Advanced
Tools: Lusha, Pipedream, Snowflake

How to set it up

01

Use the Pipedream template

Start from the “Enrich Companies with Lusha API on New Row from Snowflake API” template. It includes the Snowflake trigger and Lusha enrichment action.

02

Connect your Snowflake account

Authenticate Pipedream with Snowflake by providing:

  • Account identifier 
  • Username
  • Password or key-pair authentication
  • Warehouse name
  • Database and schema to monitor

Tip: Create a dedicated Snowflake user for Pipedream with read/write access only to the tables it needs.

03

Configure the polling trigger

Set up which Snowflake table to monitor:

Required configurations:

  • Table to monitor: Select the table with company records (e.g., RAW.COMPANIES)
  • Polling interval: Set to 900 seconds (15 minutes) or adjust based on your volume
  • Emit mode: Individual events (each new row triggers separately)
04

Extract company identifier

Map the Snowflake column that contains the company identifier:

  • If you have domain → use as primary identifier
  • If you have company_name → use as fallback
  • If both exist → prefer domain for cleaner matching
05

Connect Lusha Company API

Add your Lusha API key and configure enrichment:

  • Map Snowflake domain or company_name to Lusha input
  • Lusha returns: industry, employee count, revenue, location, funding, technologies
06

Write enriched data back to Snowflake

Configure the UPDATE statement to write Lusha results.

07

Add error handling

Configure what happens when enrichment fails.

08

Test with sample data

Insert a test company into Snowflake.

Wait for the next poll cycle (or trigger manually). Confirm:

  • Pipedream detects the new row
  • Lusha enriches the company
  • Snowflake updates with enriched fields
  • Status changes to ‘enriched’

What to do next

  • Add backfill logic: Process historical companies by updating enrichment_status to ‘pending’ for older records
  • Build monitoring dashboards: Track enrichment coverage rate, success/failure rates, and API usage in Snowflake
  • Create enriched views: Build analytics views that join enriched company data with revenue, usage, or pipeline tables
  • Add data quality checks: Validate enriched data against existing fields (e.g., company size matches billing data)
  • Schedule re-enrichment: Update enrichment_status back to ‘pending’ for companies older than 90 days to refresh stale data
  • Optimize polling: Adjust frequency based on enrichment queue size and API rate limits

The goal: Your data warehouse doesn’t wait for manual enrichment jobs. Company records get enriched automatically as they arrive, so analytics, reporting, and data science always work with complete, verified firmographics—without exports, roundtrips, or stale data.

No FAQ items available at this time.

Ready to build this?

Get started with Lusha and set up this play in minutes.