# Do we lose years of historical conversion and revenue-attribution data when migrating a custom platform's tracking setup to Shopify?

Reviewed by Martin Dejnicki, Director of SEO & AI Search · facts verified October 11, 2026 · canonical: https://deploi.ca/shopify/faq/custom-platform-migration-attribution-data-loss

## Short answer

Historical revenue survives a move to Shopify; session attribution does not. Imported orders can keep the date Shopify's reports use ([Shopify developer docs](https://shopify.dev/docs/api/admin-graphql/latest/input-objects/OrderCreateOrderInput), October 2026). Sessions stay behind because Shopify counts them only on its storefront ([Shopify Help Center](https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/report-types/default-reports/acquisition-reports), October 2026). Google Analytics 4's standard properties cap event-level data, not aggregated reports, at 14 months ([Google Analytics Help](https://support.google.com/analytics/answer/7667196), October 2026).

- **Imported order dates:** Can keep the original processed date. Shopify says the processed date is the one used in the analytic reports, and an import can set it in the past to match the original order (October 2026) ([Shopify developer docs, OrderCreateOrderInput](https://shopify.dev/docs/api/admin-graphql/latest/input-objects/OrderCreateOrderInput))
- **Channel on imported orders:** The import app, not the original channel. Matrixify says the order channel shown in Shopify's admin and analytics will always be Matrixify; a custom source is saved behind the scenes (October 2026) ([Matrixify, Import and Export Orders from Shopify in bulk with Matrixify](https://matrixify.app/documentation/orders/))
- **Shopify session history:** 1 October 2022 at the earliest. Shopify counts sessions with cookies on its own online store, so the old site's sessions never appear in Shopify's reports (October 2026) ([Shopify Help Center, Acquisition reports](https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/report-types/default-reports/acquisition-reports))
- **GA4 event data retention:** 2 or 14 months; up to 50 on Analytics 360. Key events keep the 2 or 14 month user-level limit, and standard aggregated reports aren't affected. Universal Analytics data went from July 2024 unless exported (October 2026) ([Google Analytics Help, Data retention](https://support.google.com/analytics/answer/7667196); [Google Analytics Help, Google Analytics 4 has replaced Universal Analytics](https://support.google.com/analytics/answer/11583528))

## Deploi's call

The order data is not at risk and the schema continuity is. We front-load one deliverable on every replatform that has an analytics dependency: a written event and identifier schema, agreed before build starts, that the new site is implemented against. Everything else that breaks at cutover can be recovered, or exported in time. A schema decided implicitly by a new theme cannot.

**CUSTOMIZE: Write the event and identifier schema before build when**

- Anyone will compare the year after cutover with the year before, in Google Analytics or an ad platform.
- The new theme or pixel will rename events, parameters or product IDs, because a renamed event splits every year-over-year chart.
- Three or more tools read your storefront events, the case [Deploi's tracking-plan record](https://deploi.ca/shopify/build-vs-buy/event-schema-and-tracking-plan-governance) scores CUSTOMIZE: buy the plan tool, build the schema and the pixel that obeys it (October 2026).

**WAIT: Leave old analytics history where it is when**

- Nobody has opened the report in a year.
- The metric is a rate computed on the old site's tracking.
- Keeping it means standing up a warehouse you don't have, while [Deploi's historical order export record](https://deploi.ca/shopify/build-vs-buy/bulk-historical-order-export) scores a build only when a warehouse is the destination (October 2026).

## Which historical data survives a move to Shopify?

Order facts survive a move to Shopify, and order-level attribution survives in part. Session data never moves, because it lives in your analytics platform.

**Order facts import, order-level attribution imports in part, and session data stays where it is**

| Data | Where it lives | What a move to Shopify keeps |
| --- | --- | --- |
| Order facts: revenue, units, customer, date, discount | The order record | Revenue, units, customer and date, with the original processed date; one discount code per order at most |
| Order-level attribution: referring site, channel, campaign tags | Fields on the old order | The referring site. Campaign tags belong in an order metafield, and the channel shows the import app |
| Session and behavioral data: sessions, bounce, funnel steps, assisted paths | Your analytics platform | Nothing moves, and nothing is deleted |

Sources: [Shopify developer docs, OrderCreateOrderInput](https://shopify.dev/docs/api/admin-graphql/latest/input-objects/OrderCreateOrderInput); [Shopify developer docs, CustomerJourneySummary](https://shopify.dev/docs/api/admin-graphql/latest/objects/CustomerJourneySummary); [Matrixify, Import and Export Orders from Shopify in bulk with Matrixify](https://matrixify.app/documentation/orders/); [Shopify developer docs, orderCreate](https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderCreate). Verified October 10, 2026.

Shopify's order import has a field for the referring site but none for campaign tracking (UTM) values ([Shopify developer docs](https://shopify.dev/docs/api/admin-graphql/latest/input-objects/OrderCreateOrderInput), October 2026). An order's customer journey comes from visits to Shopify's own online store ([Shopify developer docs](https://shopify.dev/docs/api/admin-graphql/latest/objects/CustomerJourneySummary), October 2026), so imported orders arrive without one. Matrixify, a bulk import app, says the order channel in Shopify's admin and analytics "will always be “Matrixify”" for its imports ([Matrixify](https://matrixify.app/documentation/orders/), October 2026). So if anyone will report on old channel and campaign values, keep them in [order metafields, not custom attributes](https://deploi.ca/shopify/faq/order-level-custom-fields-migration). Shopify can filter and report on metafields whose definitions allow it ([Shopify developer docs](https://shopify.dev/docs/apps/build/metafields/use-metafield-capabilities), October 2026).

## What attribution history is already gone before you migrate?

Much of the attribution history people fear losing was already gone, or reduced to aggregates, before anyone drew a migration plan, because three limits apply whether you migrate or not.

- **Shopify starts counting sessions at your launch.** Shopify bases sessions on cookies set by its own online store, and its history for session-based metrics goes back only to 1 October 2022 ([Shopify Help Center](https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/report-types/default-reports/acquisition-reports), October 2026). The old site's sessions never enter Shopify's reports.
- **Google Analytics 4 (GA4) deletes event-level data on a schedule.** Standard properties keep event data for 2 or 14 months, and Analytics 360, Google's paid tier, for up to 50. Key events, GA4's conversions, keep only the 2 or 14 month user-level limit. Expired data is deleted "automatically on a monthly basis", but the retention setting "does not affect standard aggregated reports", and Google Ads data in GA4 covers a rolling 36-month window ([Google Analytics Help](https://support.google.com/analytics/answer/7667196), October 2026).
- **Universal Analytics history is gone unless you exported it.** Standard Universal Analytics properties stopped processing hits on 1 July 2023, and from the week of 1 July 2024 Google ended access to all Universal Analytics data ([Google Analytics Help](https://support.google.com/analytics/answer/11583528), October 2026).

So the multi-year history still at stake is mostly GA4's aggregate reports, which the move doesn't touch, and the old platform's own reports, which go when it's switched off.

## Why do year-over-year comparisons break at cutover?

Year-over-year comparisons break at cutover because the new site sends different events and identifiers, even though both sides of the seam have data.

1. **Event schema discontinuity.** A new theme and pixel change event names, parameters and product identifiers. Google says even moving a Shopify store's Analytics tag into a custom pixel can change reported data "due to differences in event measurement and tag behavior" ([Google Analytics Help](https://support.google.com/analytics/answer/15808164), October 2026). Fix: freeze and document the event schema before cutover, and build the new site against it. Renaming an event after launch "splits your history in every downstream tool at once", as [Deploi's tracking-plan record](https://deploi.ca/shopify/build-vs-buy/event-schema-and-tracking-plan-governance) puts it (October 2026).
1. **Identifier changes.** Product IDs, variant IDs and stock keeping units (SKUs) often change in a replatform, so every product-level report keyed on the old ID stops joining. Fix: keep the legacy ID as a product metafield and carry it into the analytics payload.
1. **A new analytics property.** A fresh Google Analytics 4 (GA4) property at launch splits the history by design. Fix: keep the existing one, which Shopify's Google & YouTube app lets you pick "from the dropdown" ([Google Analytics Help](https://support.google.com/analytics/answer/15808164), October 2026).

Shopify treats its own seams the same way: across its 21 to 23 September 2026 session measurement rollout, it tells merchants to "treat the update as a measurement change" ([Shopify Help Center](https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/report-types/default-reports/acquisition-reports), October 2026).

## What else breaks at cutover besides the event schema?

Besides the event schema, two things break at cutover: ad platforms recalibrate on new conversion data, and the old platform's own reports go when it's switched off. Those reports are the one item with a deadline.

1. **Ad platform learning.** A new domain, pixel or conversion action gives automated bidding new data to learn from. Google's advice: "After you set up conversion tracking, wait for a few conversion cycles before implementing a new bid strategy" ([Google Ads Help](https://support.google.com/google-ads/answer/10970825), October 2026). Fix: sequence the changes and hold a stable measurement window on either side, so you can tell a platform reset from a performance change. [How long to hold structural changes after a tracking change](https://deploi.ca/shopify/faq/paid-spend-optimization-pause-after-pixel-migration) has its own answer. For the attribution ad platforms lose from now on, see [what server-side tracking can recover](https://deploi.ca/shopify/faq/server-side-tracking-attribution-recovery-ios-cookies) and [whether it pays at $10M a year](https://deploi.ca/shopify/faq/server-side-tracking-overkill-at-10m-per-year).
1. **The old platform's own reports.** A custom platform's reports go when the platform does. Fix: export them before switch-off, not after.

## When should you not pay to preserve old analytics history?

Don't pay to preserve old analytics history when nobody reads it, when it's a rate, or when keeping it needs a warehouse you don't have.

> **When not to do this**
> - **When nobody has opened the report in a year.** The archive costs less than the migration of it.
> - **When the metric is a rate rather than a count.** Rates computed on an old site with old tracking aren't comparable to the new ones, so preserving them preserves a false comparison.
> - **When the fix is a warehouse you don't have.** Standing up a data warehouse in the middle of a replatform is two projects competing for the same people. [Deploi's historical order export record](https://deploi.ca/shopify/build-vs-buy/bulk-historical-order-export) builds a pipeline only when a warehouse is the destination (October 2026).

## Deploi's point of view

**Where we disagree.** Migration vendors answer this question by selling more data migration. The honest answer is that the expensive part of the loss is not historical, it is prospective: the comparability of the next twelve months against the last twelve. That is fixed with a schema document and instrumentation discipline, not with a larger import.

**Our judgment on post-launch complaints.** In our judgment, the reporting complaint after a launch is rarely missing history. It's that the new site emits different events under different names, so the two periods won't sit in the same chart.

**What this page adds.** that imported orders keep their dates but report under the import app's channel, that Shopify counts sessions only on its own storefront and from 1 October 2022 at the earliest, and that GA4 standard properties cap event-level data, not aggregated reports, at 14 months while Universal Analytics data went in July 2024 unless exported, so much of the multi-year attribution history in question was already gone or reduced to aggregates.

## When this answer changes

- Shopify adds an order-import field for campaign tracking (UTM) values, the landing page or the customer journey.
- Shopify lets imported orders keep their original sales channel in reports instead of the import app's.
- Google changes GA4's event-data retention options, the key events limit or the 36-month window for Google Ads data.
- Shopify changes how it measures sessions again, as it did from 21 to 23 September 2026.
- Shopify extends session-based history before 1 October 2022, or opens a way to import sessions.

## Sources

1. [Shopify developer docs, OrderCreateOrderInput](https://shopify.dev/docs/api/admin-graphql/latest/input-objects/OrderCreateOrderInput), checked October 11, 2026
2. [Shopify Help Center, Acquisition reports](https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/report-types/default-reports/acquisition-reports), checked October 10, 2026
3. [Google Analytics Help, Data retention](https://support.google.com/analytics/answer/7667196), checked October 11, 2026
4. [Google Analytics Help, Google Analytics 4 has replaced Universal Analytics](https://support.google.com/analytics/answer/11583528), checked October 10, 2026
5. [Google Analytics Help, Update your Google Analytics integration on Shopify with the Google & YouTube app](https://support.google.com/analytics/answer/15808164), checked October 10, 2026
6. [Shopify developer docs, CustomerJourneySummary](https://shopify.dev/docs/api/admin-graphql/latest/objects/CustomerJourneySummary), checked October 10, 2026
7. [Matrixify, Import and Export Orders from Shopify in bulk with Matrixify](https://matrixify.app/documentation/orders/), checked October 10, 2026
8. [Google Ads Help, How our bidding algorithms learn](https://support.google.com/google-ads/answer/10970825), checked October 10, 2026
9. [Shopify developer docs, orderCreate](https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderCreate), checked October 10, 2026
10. [Shopify developer docs, Use metafield capabilities](https://shopify.dev/docs/apps/build/metafields/use-metafield-capabilities), checked October 11, 2026
11. [Deploi Build vs. Buy, Build or Buy Event Tracking-Plan Governance on Shopify?](https://deploi.ca/shopify/build-vs-buy/event-schema-and-tracking-plan-governance), checked October 10, 2026, Deploi research
12. [Deploi Build vs. Buy, Should You Build or Buy a Historical Order Export Tool?](https://deploi.ca/shopify/build-vs-buy/bulk-historical-order-export), checked October 11, 2026, Deploi research
