Key Takeaways
- Teams building on wearable data keep hitting the same two walls with SaaS aggregators like Terra and Spike: per-user pricing that scales against them, and webhook latency that breaks real-time product features.
- Delays of up to an hour on activity webhooks are common enough that we hear about them on nearly every call with a team past their first few thousand users.
- Building direct-to-provider integrations in-house solves some of this, but teams still get stuck on the providers they can't handle alone: Garmin, Oura, Whoop, and hardware like smart beds.
- The underlying complaint is rarely just about money. It's about a third party sitting between a product team and its own users' data.
- Migrating off an aggregator is a scoped engineering project, not a weekend swap. Momentum runs this as an audit-first engagement: map the current integration, size the real cost and risk, then build and support the replacement.
- Open Wearables, the self-hosted data layer Momentum built and maintains, is already running in production at 90,000 monthly active users for at least one team that adopted it independently.
Is Your HealthTech Product Built for Success in Digital Health?
.avif)
Introduction
Every few weeks, someone doing wearable API integration for a health or fitness product tells us the same story. They started with a SaaS wearable API like Terra or Spike because it looked like the fastest way to ship. Six months later, the aggregator is either too expensive to keep scaling, too slow to support the feature they actually want to build, or both.
This isn't one company's bad luck with one vendor. It's a pattern that shows up across consumer wellness apps, insurance wellness programs, and longevity platforms alike, regardless of what they're building on top of the wearable data. The top challenges when working with wearables in healthcare rarely change from one team to the next. What changes is how long it takes each team to hit the ceiling, and what it takes to migrate off it cleanly.
This article covers the two complaints we hear most about wearable API integration: cost and latency, why they compound each other, and what an actual migration engagement looks like.
The Cost Problem Doesn't Show Up on Day One
SaaS aggregators are genuinely the fastest way to get a wearable integration shipped. That's the pitch, and for a first release it's usually true. The problem is what happens after launch, once the product has real users and the pricing model that looked reasonable in a sales call starts compounding against the business.
Per-user or per-API-call pricing works fine at hundreds of users. At tens of thousands, the math changes shape entirely. Terra, one of the most widely used managed wearable APIs, prices on a monthly base tier plus credit consumption that scales with active users, so the bill grows with usage rather than staying flat. Spike prices per user directly, which looks simpler on paper until user count climbs into the thousands and the line item scales linearly with growth instead of flattening out. Junction (formerly Vital), Thryve, Rook, and Sahha follow the same shape: a per-user or tiered monthly fee that grows with your active user count, not a flat line.
Exact rates change and are best checked directly on each vendor's pricing page; we walked through the fuller build-vs-buy math, including current figures at the time of writing, in our 2025 cost analysis. The pattern holds regardless of the exact numbers: aggregators tend to win on cost only up to a threshold, usually somewhere in the 10,000 to 20,000 active user range, after which the economics flip.
The Latency Problem Is Structural, Not a Bug
Cost gets the budget conversation started. Latency is usually what forces the actual migration.
Wearable data reaches a SaaS aggregator like Terra, gets processed, and then gets pushed to the customer's backend as a webhook. Every one of those steps adds delay, and the aggregator controls all three. We keep hearing about webhook delays running well over an hour on the same event that a user expects to see reflected within minutes, sometimes seconds, of finishing a workout.
That delay doesn't matter for a weekly summary email. It matters enormously for anything built around real-time feedback: a points system that rewards a completed activity, or a coaching feature that reacts to what a user just did. Teams building those features hit a hard ceiling with third-party aggregators, because the latency isn't a configuration setting. It's baked into an architecture they don't control and can't see inside of.
This is the moment the conversation changes shape. The question stops being how to get faster support from the vendor, and becomes why the team is routing data through infrastructure it doesn't own for a delay it can't fix.
Building It Yourself Solves Half the Problem
Some teams respond to the aggregator ceiling by going direct. They build native Apple Health or Health Connect integration, treat the phone as the source of truth, and skip the aggregator layer entirely for the providers that matter most.
This works, and it's often the right call for the primary data source. But it only solves the part of the problem that's easy. The moment a product needs Garmin, Oura, Whoop, or a device category like smart beds, the team is back to building and maintaining bespoke integrations one provider at a time. Each one has its own authentication flow, its own data shapes, its own quirks in how it reports sleep versus how another provider reports sleep. Our piece on which wearables developers actually integrate goes into why this fragmentation is the default outcome, not an edge case. Each provider's OAuth flow alone is enough to turn a "quick integration" into a multi-week project.
What these teams want is a unified data model that normalizes whatever comes in, so the application layer never has to know or care whether a sleep score came from Oura's algorithm or Garmin's. Building that normalization layer from scratch, on top of every provider integration, is a second full project stacked on the first one. That's the part of the work a wearables integration engagement usually ends up covering, once the one-off provider integrations pile up.
Data Ownership Is the Argument Underneath the Argument
Cost and latency are the complaints that get raised first, because they're the easiest to point to. Underneath both is a simpler issue: with a SaaS aggregator, a product team's user data lives on someone else's infrastructure, subject to someone else's uptime, someone else's pricing changes, and someone else's roadmap decisions.
For teams in regulated or quasi-regulated spaces, this stops being a preference and becomes a compliance question. Where do the AI agents that process this data actually run, and can a customer audit exactly what happens to a data point between ingestion and storage? A third-party aggregator can answer both, but the answer is always a version of "trust us," never "see for yourself." Our guide on GDPR for healthtech companies covers why that distinction increasingly matters to procurement teams, not just engineers, and our breakdown of GDPR consent requirements for health data covers the user-facing side of the same question.
Self-hosting removes the trust requirement by removing the third party. The infrastructure runs where the product team already runs everything else, subject to the same audit and access controls as the rest of their stack.
Wearable API Integration: What Migrating Off an Aggregator Looks Like
Migrating off Terra, Spike, or a similar aggregator isn't a weekend swap, a point we go into in more operational detail in what a wearable platform migration actually looks like. It's a scoped engineering project with real dependencies: existing user data has to move, provider connections have to be re-authenticated without breaking active sessions, and whatever the aggregator was normalizing has to keep normalizing the same way on the other side. Momentum runs this as a services engagement, typically starting with a short technical audit that maps the current integration, sizes the real cost and risk of staying versus moving, and scopes the build before anyone commits to a timeline, following the same setup path we cover in wearable infrastructure setup with Open Wearables.
The technology underneath the migration is Open Wearables, the self-hosted data layer Momentum built and maintains: an MIT-licensed, open-source project designed to run on a product team's own infrastructure instead of a vendor's. It normalizes incoming data from a growing set of wearable data sources into one unified model, and ships with real-time webhook delivery instead of the batch-and-forward pattern that causes the delays described above.
The shape of the tradeoff looks like this:
Heart Monitor adopted Open Wearables independently and is running it in production at 90,000 monthly active users, pulling in data across multiple consumer wearable brands on their own infrastructure. That number answers the question every team asks before migrating off an aggregator, which is whether a self-hosted layer actually holds up at scale.
For teams still deciding whether to build integrations in-house, buy an aggregator subscription, or migrate to a self-hosted layer with Momentum handling the delivery, the wearable data integration use cases piece is a useful next read, since the right answer depends heavily on which features actually need real-time data and which don't.
Talk to Us About Your Wearable API Integration
If webhook delays or per-user pricing are already showing up in your product roadmap conversations, it's worth a short technical audit before the next contract renewal. We'll map your current integration, size the real cost, and scope what a migration would take for your specific stack. Get in touch to start that conversation.





.png)
.png)
.png)
.avif)
