Pay if you don’t run??
I built an app to help people overcome lack of exercise!
- Choose how much you’ll pay if you don’t run for 30 minutes within 6 days
- Select your commitment amount (¥500–¥10,000)
- Track your running distance and time using the in-app timer
- If you fail to complete the challenge in time, the selected amount is charged
- If you succeed, the payment is canceled
In other words, this app creates a financial commitment to yourself, forcing you into a situation where you have to run.
Daily Report — 2026/02/16
🎉 App Store submission completed!
- Submission date: Feb 16, 2026
- Current status: In review (usually 1–3 days)
- TestFlight: External testing ongoing
- Stripe: Switched to production mode
Progress Summary (since Feb 1)
Over the past two weeks, I moved from the final stage of MVP development to App Store submission.
✅ Major Achievements
1. Onboarding implementation (early February)
- Added 5 onboarding screens
- Pre-challenge explanations (measurement method, reducing psychological friction)
- Clear explanation of “What happens if you pay?”
- Added image assets (English & Japanese)
2. Built-in GPS workout tracking (mid-February)
- Implemented in-app running tracking
- Integrated CoreLocation + HealthKit
- Real-time display: elapsed time, distance, pace
- Automatically saves data to HealthKit after tracking
- Simple experience without external apps
3. Challenge parameter update
- Goal time: 60 minutes → 30 minutes
- Easier for beginners to complete
- Achievable with 15 minutes × 2 runs
- Challenge period remains 6 days
4. Stripe production migration (Feb 15)
- Switched from test mode to production mode
- Production API keys configured
- Edge Functions updated
- iOS publishableKey updated
Stack
- iOS: SwiftUI + HealthKit + CoreLocation
- Auth: Sign in with Apple
- Backend: Supabase (Auth, PostgreSQL, Edge Functions)
- Payments: Stripe (PaymentIntent with manual capture)
- Monthly cost: ¥0 (excluding Apple Developer Program)
Current Feature Set (v1.0)
Core Features
- Sign in with Apple authentication
- 30-minute running challenge in 6 days (fixed)
- Commitment amount selection (¥500–¥10,000)
- Built-in GPS workout tracker
- HealthKit integration (Apple Watch & other apps supported)
- Stripe pre-authorization (no charge if successful)
- Automatic charge on failure
- Early completion support
- Challenge history view
- Onboarding experience
Not included in v1.0 (future work)
- Notifications / reminders
- Custom challenge duration
- Custom goal time
- Apple Watch standalone app
- Social features
- Multi-language support (English only for now)
Roadmap
v1.1 — Improvements (after approval)
- UI/UX improvements based on feedback
- Bug fixes and crash fixes
- Performance optimization
- Notifications (reminders)
- Onboarding improvements
v1.2 — Feature expansion
- Detailed challenge history
- Stats & graphs
- Apple Watch support
- Widgets
v2.0 — Major update
- Customizable goal time
Reflections & Learnings
Changes over the past two weeks
On Feb 1, I had just started external TestFlight testing.
In two weeks, I completed:
- Onboarding (major UX improvement)
- Built-in tracking feature
- Production environment migration
- App Store submission
Decisions
Why reduce the goal?
To improve first-time user retention.
60 minutes felt like too high of a psychological barrier.
Why add built-in tracking?
External app setup was too complex for beginners.
I prioritized simplicity.
Summary
The Run or Pay MVP has finally reached App Store review.
Two weeks ago, external testing had just begun.
Since then, onboarding, built-in tracking, and production migration were completed — culminating in submission.
While waiting for review results, I’ll focus on marketing preparation and TestFlight feedback.
Next update when the review result arrives!
Top comments (0)