HubSpot Contacts CSV to Dashboard
A HubSpot contact export carries a lot of CRM-specific structure, "Lifecycle Stage", "Company Name" instead of "Company", timestamped activity fields, that reflects how HubSpot organizes data internally. Flatten it into a predictable schema first, then the breakdown below just works.
Step 1: Normalize the Export
Run the raw export through the HubSpot Normalizer. It pulls email, first/last name, company, phone, lifecycle stage, and last activity date into a flat schema, keeping any additional custom properties alongside them, entirely client-side since contact data is personal data.
Step 2: Pick a Breakdown
Contacts by Lifecycle Stage
Counts contacts at each pipeline stage on the normalized column, a quick funnel snapshot.
Contacts by Company
Useful before an account-based marketing push, to see which accounts already have the most contacts.
Deduplicate Contacts
Find and merge duplicate contact records before a migration or report.
Blending With an ESP? →
Cross-check against the Mailchimp or Klaviyo normalized schema.
Frequently Asked Questions
Does this need a HubSpot API key or app install?
No. Export contacts as CSV from HubSpot (Contacts → Export), then upload the file here. No API access, no app permissions.
What happens to custom HubSpot properties?
They're kept alongside the normalized columns rather than dropped, so nothing is lost by normalizing first.
Moving contacts off HubSpot?
Normalize first, no manual header-mapping pass required.
Open HubSpot NormalizerTurn this into a saved workflow
Create a free account to save the steps from this guide as a reusable workflow and re-run it on any file, from any device.