There are a few ways you could track this using our existing functionality.
One option would be to CC/BCC yourself on your Subscription Canceled emails. These emails are sent to your customers immediately when a subscription is canceled. So you could perhaps CC/BCC an email alias on that specific email template, and route all canceled emails to a folder in your inbox. That way you could keep an ongoing, real-time list of subscription cancellations without having to weed through other emails. Additionally, the time of the email would correspond with when the subscription was canceled, maybe within a few seconds.
Similar to the Subscriptions canceled email, a canceled_subscription webhook is triggered whenever a subscription is canceled, so you could also use webhooks to track cancellations. Though it’s worth noting that Recurly deletes webhooks after 15 days, so you’d need to store the webhooks locally on your end to ensure you’re keeping a historical list of subscription cancellations beyond the last 15 days.
Another option would be to pull your Subscriptions Export for all time. The previous suggestions would only allow you to track cancellations moving forward. You wouldn’t be able to get the data on historical cancellations but an export will give you that. The subscriptions export gives you both a canceled_at and expires_at column which will list the corresponding dates, if applicable. You could even narrow it down by using the canceled and expired filters when pulling the export, in order to eliminate any subscriptions from the file that aren’t currently in a canceled or expired state.