Resend past data

PremiumThis feature is available on our Premium and Enterprise plans. Updated

How it works

Imagine that you’ve sent source data to an analytics platform for six months. Now you want to move to a new platform—it might have features you need or just aligns better with your business needs. Do you really have to start fresh in your new analytics platform? What happens to that six months of data?

That’s what our Resend past data feature does: it lets you send data that you previously sent into Customer.io to a new outbound integration, so that you don’t have to start from scratch when you add a new outbound integration—like if you were to switch from one analytics platform to another.

We store incoming data forever (or for as long as you want us to) so that you can access it and replay it to outbound integrations on demand.

flowchart LR a(website)-->|real time
data|c b(server-side integration)-->|real time
data|c subgraph c [Customer.io] direction LR z(real time data) y(historical data) end z-.-x|disconnect old
integration|d(old integration) z-->|connect real time
integration|e(new integration) y-->|replay old data|e

Data replay limitations

Our data replay feature supports most, but not all, of our integrations.

We can’t replay data from the Track API

To replay data to a destination, it must have been sent to Customer.io through our Pipelines API. We can’t replay data that was originally sent to Customer.io through our Track API. This includes integrations based on our Track API like:

  • The Legacy JavaScript snippet
  • Data sent to Customer.io through a Customer Data Platform (CDP) like Segment or Rudderstack because their integrations use our Track API

We can’t replay data to these destinations

You cannot replay data to data warehouses. These integrations sync data on regular intervals rather than receiving replayed historical data. However, they capture historical data during their first sync, so you can effectively “replay” data to them by creating a new integration.

We also can’t replay data to legacy integrations, which are based on data that doesn’t go through our Pipelines API. This includes any integration based on message metrics from Customer.io:

How to resend data

Contact us! For now, you’ll have to let us know when you want to resend past data, and how far back you want to go.

  1. Set up your new data-out integration.

  2. Double-check the actions for the new integration. Make sure that your past data works with the triggers and mappings for your integration.

  3. Contact Customer.io and let us know that you want to resend data.

In the future, you’ll be able to resend data on your own!

What outbound integrations can I send past data to?

You can resend data to any new outgoing integration, but you’ll need to make sure that actions for the new integration support the source events you care about. For example, if you capture group events, but your new integration doesn’t have a concept of groups, then those events won’t apply or get mapped to your new integration.

How long does it take to resend my data?

The time that it takes to resend data depends on:

  • The volume of data: how many events you want to send to your new integration.
  • Rate limits for the integration.

    If your integration has a rate limit of 1000 events per second and you have a million events, then it’ll take at least 16 minutes and 40 seconds to resend your data after we start the operation.

  • The total load on Customer.io during the resend operation.

    We process data with some elasticity. If it’s a busy day at Customer.io, it may take a little longer to resend your past data than it would on a slow weekend.

Copied to clipboard!
  Contents