Mirror mode workout fix — no more blank screens

Fixed an issue where the mirror mode screen would go blank during workouts because the device fell asleep. 😴 Screen sleep prevention now stays active for the entire mirror session, not just while the view is visible.

We also added a wall clock display to mirror mode so you can keep an eye on the time while you train. ⏰

Weekly progress card is more reliable

The Current Week card on your home screen now handles errors gracefully with a retry option. If something goes wrong loading your weekly data, you'll see a clear error state instead of a spinning loader or stale info. Just tap to retry! 🔄

Better onboarding for users without a smartwatch

If you don't have a smartwatch, the onboarding experience now highlights what you get — not what you're missing! 🎉

Instead of focusing on gaps, you'll now see the awesome features available to you right away:

  • Personalized training zones tailored to you
  • AI coaching to guide your workouts
  • Progress tracking to keep you motivated

Fixed weekly view freezing and notification issues

We squashed a few annoying bugs that were messing with the weekly experience. Things should feel a lot smoother now! 🛠️

  • ⏱️ No more infinite loading on the Week view. If HealthKit takes too long, you'll now see a friendly error with a retry button instead of a skeleton loader that spins forever.
  • 📊 Notifications now match your actual calendar week. Previously, notifications used a rolling 7-day window instead of Monday–Sunday, which meant you'd see stale progress like "61/90 minutes" even after the week reset. Fixed!
  • 📋 Weekly card now loads data properly when expanded. The Current Week card would sometimes show up expanded but empty — it now fetches your data automatically. First-time users will also see it expanded by default.

Notification minute counts are now refreshed on each app launch with the latest data, so you'll always see accurate progress. 🎯

RPE feedback updates instantly

The "How we calculated this" RPE line now updates immediately when you tap your feedback. No more waiting or wondering if your input registered — it responds right away. 🏃‍♂️

Garmin workouts now get the celebration they deserve 🎉

Your Garmin workouts just got a major glow-up! Instead of a basic splash screen, Garmin synced workouts now get the full cinematic celebration experience — complete with confetti and a bold "GARMIN WATCH SESSION" header. 🎊⌚

Every workout you crush on your Garmin watch now feels just as rewarding as one tracked directly from your Apple Watch. You earned that confetti!

"Mirror to iPhone" option on your Garmin watch

You can now manually trigger a full-screen workout mirror on your iPhone directly from your Garmin watch! 📱 Look for the new "Mirror to iPhone" menu item during your workout to send your live stats to the big screen whenever you want.

Garmin workout mirroring for Live Activities

Your Garmin watch can now mirror active workouts to your iPhone in real time! 🎉 When you start a workout on your Garmin device, it sends live updates to your phone via ConnectIQ, enabling Live Activity support so you can glance at your lock screen for workout stats.

We also added a 5-second throttle to Garmin config syncing to prevent duplicate uploads when multiple sync requests fire in quick succession.

Your User ID is now available in App Information

Need to reach out to support? We've made it easier! 🎉 You can now find your unique User ID right in the App Information screen.

Just tap to copy it and share it with our support team whenever you need help — no more digging around for account details.

Garmin watches now get the full Zone2Ai experience 🎉

Big news for Garmin users — your watch now has full feature parity with Apple Watch! 🥳 Everything you love about Zone2Ai now works seamlessly with your Garmin device.

  • 💓 Heart rate analysis — Garmin HR samples are now fully processed for accurate warmup detection and Zone 2 time calculation
  • Sprint detection — Zone 5 sprints (8+ minutes at 88%+ max HR) are now tracked and displayed with a "SPRINT!" header on your Garmin summary screen
  • 🎊 Full celebration flow — Garmin workouts now trigger confetti, streaks, records, and coach insights just like Apple Watch workouts
  • 📊 Richer sync data — Zone 5 duration and HR samples are now included when syncing from your Garmin watch to your iPhone

We also squashed a few bugs along the way, including a corrupted import screen and updated compatibility with the latest ConnectIQ SDK.

Garmin ConnectIQ SDK Integration — Real Bidirectional Sync! ⌚

Big one! Zone2Ai now uses the official Garmin ConnectIQ Mobile SDK for direct communication between your iPhone and your Garmin watch. This replaces our previous local server approach with a much more reliable, native connection. 🎉

Here's what this means for you:

  • Your Garmin watch and iPhone now sync bidirectionally — zone configs are sent to the watch, and session data + RPE ratings come back automatically
  • Device discovery is handled through Garmin's native selection flow, making pairing smoother and more reliable
  • The Garmin App Install Guide now shows your real connection status, so you always know if your watch is linked
  • Firebase is still available as a fallback, so you won't lose data if the direct connection drops

If you're a Garmin user, you should notice a much snappier and more dependable sync experience going forward. Let us know how it feels!

Weight now displays in kg for metric users 🏋️

If you use the metric system, you may have noticed your weight was always showing in lbs — not ideal! This has been fixed across the app so your weight now displays in the correct unit based on your preferences.

  • Weight values on your Path and Journey Moments screens now respect your metric/imperial setting
  • AI-generated banners and prompts also use the correct unit, so recommendations feel more natural

Shoutout to Johan from Stockholm for reporting this one! 🇸🇪 All internal calculations remain accurate — this was purely a display issue.

Fixed sprint celebration not showing after Apple Watch sprints

Ever finish a sprint on your Apple Watch and... nothing happens? No celebration, no fanfare? 😤 That's been fixed!

There was a timing issue where your iPhone would check for the completed workout before HealthKit had finished syncing it from the Watch. Since HealthKit can take anywhere from 10 to 60 seconds to deliver the data, the app sometimes missed the workout entirely — meaning your hard-earned celebration screen never appeared.

Now, after your Watch reports a completed sprint, the app smartly re-checks for the workout at timed intervals, giving HealthKit enough breathing room to sync. Your celebration will fire reliably every time. 🎉

Upgrade to Lifetime is now available for existing subscribers

We heard you! Previously, there was no easy way to upgrade to a Lifetime plan if you were already on a weekly or annual subscription. That's now fixed 🎉

  • Weekly subscribers can now upgrade to either Annual or Lifetime directly from Settings
  • Annual subscribers can now upgrade to Lifetime directly from Settings
  • The Lifetime option only appears if you don't already own it, so your Settings stay clean and clutter-free

Head over to Settings to check out your upgrade options — going Lifetime means no more renewals, ever! 💪

Onboarding gets a fresh new feel

We've polished up the onboarding experience to better tell the story of how Zone2Ai continuously adapts to you. The messaging now emphasizes that your training zones get smarter over time — not just once, but after every single workout. 🧠💪

  • Updated smartwatch features screen to highlight that Zone2Ai "Gets Smarter Every Workout" with punchier descriptions of how RPE feedback works
  • Sprint Boost screen now explains how 4x4 intervals help reveal your true max heart rate
  • Smartwatch response screen updated to reinforce that your zones get more accurate every session

Fixed incorrect labels on Indoor/Outdoor picker

The Indoor/Outdoor picker was showing workout-specific subtitles (like 'Treadmill') even when a non-running activity such as cycling was selected. 🚴

Now the picker cleanly shows just Indoor and Outdoor — no more confusing or mismatched labels regardless of which activity you've chosen. Nice and clean! ✨

New Blog Post: Zone 2 Running — Why It Feels So Slow

We just published a brand new blog post all about Zone 2 running training! 🏃‍♂️ If you've ever felt like you're running embarrassingly slow during Zone 2 sessions, this one's for you.

The post covers everything you need to know to embrace the slow and trust the process:

  • Why walk breaks are totally fine (and actually smart)
  • How to get past the ego problem of running slowly
  • Variables that affect your heart rate — heat, hills, and fatigue
  • The 8-12 week adaptation timeline so you know what to expect

Head over to the blog and give it a read — it might just change how you think about your easy runs!

Zone 2 Calculator is now easier to find

We've made it simpler to access the Zone 2 Calculator! 🏃‍♂️ You can now find a direct link in the footer navigation, so it's always just a click away no matter where you are on the page.

  • Added Zone 2 Calculator link to the footer navigation for quick access
  • Added a call-to-action in blog posts so you can jump straight to the calculator while reading

Homepage gets a shiny new download button + text fix

We've made it even easier to grab the app straight from our homepage! 🎯

  • A bright, high-contrast download button now sits front and center on the landing page — so you can get started with Zone2Ai faster than ever.
  • Fixed an annoying text wrapping issue on mobile where phrases like "Unlock Endurance" and "Unlock Fat Burn" were breaking mid-word. Everything stays clean and readable now, no matter your screen size. 📱