WooCommerceWooCommerceHubSpot ContactsHubSpot Contacts10 fields

How to import WooCommerce data into HubSpot

WooCommerce exports use snake_case column names like billing_phone and billing_company. This template maps all 10 billing fields to HubSpot contact properties. WooCommerce also exports a separate shipping address block plus order_count and total_spent columns that don't have a default HubSpot home. The section below explains what to do with each one if you need it.

Try it freeNo credit card needed

Field-by-field mapping

This is the complete column mapping from WooCommerce to HubSpot. The left column is the header in your CSV export. The right column is the HubSpot field it should map to.

WooCommerceWooCommerce columnHubSpot ContactsHubSpot field
first_nameFirst Namefirstname
last_nameLast Namelastname
emailEmailemail

TransformLowercased and trimmed

billing_phonePhone Numberphone

TransformStandardized to international format (+1, +44, etc.)

billing_companyCompany Namecompany
billing_address_1Street Addressaddress
billing_cityCitycity
billing_stateState/Regionstate
billing_postcodePostal Codezip
billing_countryCountry/Regioncountry

Columns we don't use

Your WooCommerce export includes 7 columns this template doesn't map. Each one below explains why, plus the workaround if you want the data in HubSpot.

shipping_address_1, shipping_city, shipping_state, shipping_postcode, shipping_country

WooCommerce exports a full shipping address block alongside the billing block. HubSpot's address, city, state, zip, and country properties already hold the billing address from this template.

If you need it. If shipping is the more useful address, swap the mapping after upload: send shipping_address_1 to address, shipping_city to city, and so on. To keep both, create custom address properties in HubSpot (e.g. Shipping Address, Shipping City) and re-run this template.

order_count

WooCommerce records how many orders each customer has placed. HubSpot doesn't have a built-in order-count property.

If you need it. Create a custom number property in HubSpot called Order Count, then re-run this template to map it.

total_spent

WooCommerce records lifetime spend per customer. HubSpot doesn't have a built-in total-spend property for ecommerce.

If you need it. Create a custom number property in HubSpot called Total Spent, then re-run this template to map it.

Formatting and cleanup

WooCommerce exports rarely match the format HubSpot expects. Fix these before you import.

  1. 1.Lowercases and trims email addresses
  2. 2.Standardizes phone numbers to international format (+1, +44, etc.)
  3. 3.Renames underscore-style billing columns (e.g. 'billing_phone', 'billing_city') to HubSpot property names
  4. 4.Uses billing address as the primary address (see 'Columns we don't use' for the shipping address swap pattern)
  5. 5.Maps billing_postcode to HubSpot's zip property, preserving leading zeros

Or skip the manual work

Operelio runs this cleanup and mapping for you. Upload your WooCommerce export and download a clean, import-ready file for HubSpot.

Try it free

WooCommerce to HubSpot FAQ

How do I export customers from WooCommerce?

In your WordPress admin, go to WooCommerce > Customers, then click the Download button at the top-right of the page to export to CSV. You can also use WooCommerce > Reports > Customers for the legacy export view.

Why does this template use billing address instead of shipping?

Billing address is more reliable for CRM purposes since it's always required at checkout. Shipping address is often blank for digital products or when customers select in-store pickup. See 'Columns we don't use' below if shipping is more useful for your store.

Why do WooCommerce column names use underscores?

WooCommerce exports use names like 'billing_phone' and 'billing_city'. This template renames them all to match HubSpot property names.

What about WooCommerce order data?

This template maps customer contact fields and the billing address. Order count and total spent appear in the export but don't have default HubSpot properties; see 'Columns we don't use' below.

Can I include custom checkout fields?

Custom fields added to your WooCommerce checkout appear in the export but need manual mapping in Operelio. This template covers the default billing fields only.