Inspiration

People today track activities like running and sleep to see how they change over time, turning small improvements into a sense of achievement. As a tennis lover, I wanted to experience the same thing on the court—to track how many shots I played, what types of shots I hit, and how my game evolved over time.

But most existing tennis analysis services require a camera, making it necessary to set up a tripod, record a session, and review the footage afterward. While useful, it felt too cumbersome for everyday use. After surveying the tennis community, I found that many players shared the same frustration. So I decided to create a simpler way to track tennis effortlessly, using just an Apple Watch.

What it does

OverRally is a tennis tracking app that lets you record and analyze your game using just your Apple Watch. No camera, tripod, or setup required. Just put on your Apple Watch, start a session, and play. OverRally tracks your swings and collects data such as swing speed, shot type, contact timing, heart rate, distance, and consistency.

Your records also build toward shot-specific levels for forehands, backhands, serves, and more, turning every session into long-term progress. Just play. Your tennis records build automatically, and so does your progress.

How we built it

1. Stroke Recognition — Fully On-Device Every swing is detected and classified directly on the Apple Watch in real time, including forehands, backhands, serves, and more. Since all processing happens on-device without relying on a network connection or cloud server, the app works even without an internet connection. Motion and heart rate data never leave the watch.

2. Training Data We collected and labeled real-world tennis swings from actual matches and practice sessions. By gathering data from different players, rallies, and match situations, we trained the model to recognize the variety of movements that occur naturally during real tennis, rather than relying on simple rule-based detection.

3. iPhone App — Flutter On the iPhone, the app visualizes your match data through timelines, consistency charts, and 3D trajectories for individual swings. Data is synchronized with Supabase, users can sign in with Google or Apple, and the app supports seven languages.

4. Monetization — RevenueCat We use RevenueCat to easily manage monthly subscriptions, annual subscriptions, and lifetime purchases.

Challenges we ran into

The biggest challenge was figuring out what would actually feel fun and meaningful for the user.

Compared to video-based tennis analysis apps, we naturally had less information to work with, so I spent a lot of time thinking about how to process and present the data in a way that would still feel valuable.

Ultimately, I wanted users to be able to evaluate their own game and individual shots, while also building up metrics that become more meaningful as they accumulate over time.

In addition to basic shot classification, we introduced metrics such as contact timing and form consistency, allowing users to gain meaningful insights and track their progress using only the data available from the Apple Watch.

This is still an area I’m actively thinking about. There’s a lot more room to improve how we turn limited sensor data into something that feels genuinely useful and engaging for players.

Accomplishments that we're proud of

  • I use it myself, every time I play. OverRally started as the tool I wanted on my own wrist, and it's still the first thing I start when I step on court.
  • People are paying for it. Seeing the first paying subscribers come in was the moment I knew this wasn't just my own itch. Other players needed it too.
  • Shipped for real. It's live on the App Store in 7 languages, with every swing analysed on the watch itself.

What we learned

Building is no longer the hard part. Getting it in front of the right people is.

With AI in the loop, I shipped a watch app, a phone app, an on-device model and seven languages as a single developer. A few years ago that would have been a team. But nobody downloads an app because it was hard to build. As a developer, I now spend more of my time studying marketing than writing code: store search, content, and even how answer engines like ChatGPT describe OverRally when someone asks about tennis tracking.

I think this is the question every founder has to face now: when anyone can build, how do you reach the players who actually need what you made, efficiently and without a big budget? I don't have the full answer yet, but it's where I'm putting my energy next.

What's next for OverRally: Tennis Watch Stats

OverRally is just getting started.

  • Capture more, with zero friction. The first goal stays the same: record as much meaningful information as possible while you play, without you ever having to think about the app. Just start, play and walk off.
  • A model that handles every game. The second is a model that holds up across more playing styles, more body types and more real match situations, so every player gets the same accuracy, not just the ones who swing like me.

My motto from day one has been simple: build the app I use myself, and have fun using it. That's how I'll keep building OverRally too.

Built With

  • flutter
  • revenuecat
  • supabase
  • swiftui
  • watchos
Share this project:

Updates

Submission history