Full Answer
The historical sync is one of Klaviyo's strongest WooCommerce integration features because it eliminates the cold-start problem that affects most marketing automation tools. Instead of waiting months to accumulate enough purchase data for meaningful segmentation, stores gain access to their full customer history immediately.
The sync process runs server-side through the Klaviyo WooCommerce plugin. It reads order data directly from the WooCommerce database — including orders stored in the newer HPOS custom tables — and pushes it to Klaviyo's API in batches. Each order creates or updates a customer profile with the order total, line items, shipping address, and order date. Product catalog data syncs separately, enabling dynamic product recommendation blocks in email templates.
After the initial sync, two mechanisms keep data current. Webhooks fire on new orders, providing near-instant sync for purchases, refunds, and order status changes. A periodic background sync catches any events the webhook might miss — network timeouts, server restarts, or webhook delivery failures.
There are practical limitations to understand. Historical sync creates Placed Order events backdated to the original order date, which is correct for segmentation but can cause confusion in Klaviyo's revenue attribution dashboard. Revenue attributed to flows and campaigns only counts orders placed after the flow or campaign was active, so historical orders appear in profile timelines but do not inflate campaign performance metrics.
Stores migrating from another email platform should run the historical sync before importing subscriber lists. This ensures customer profiles already contain purchase history when existing subscribers are matched, avoiding the common mistake of sending new-subscriber welcome flows to existing customers.