feat: fix travel placement bug, add theme-based alternate icons, fix animated background crash

- Fix repeat-city travel placement: use stop indices instead of global city name
  matching so Follow Team trips with repeat cities show travel correctly
- Add TravelPlacement helper and regression tests (7 tests)
- Add alternate app icons for each theme, auto-switch on theme change
- Fix index-out-of-range crash in AnimatedSportsBackground (19 configs, was iterating 20)
- Add marketing video configs, engine, and new video components
- Add docs and data exports

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-02-06 09:36:34 -06:00
parent fdcecafaa3
commit 8e937a5646
77 changed files with 143400 additions and 83 deletions

View File

@@ -0,0 +1,136 @@
# SportsTime Monday Growth Review Template
Use this every Monday. Timebox: 20-30 minutes.
## 1) Week Snapshot
`review_date:`
`review_owner:`
`week_range:`
`headline:` one sentence on how the week went.
## 2) KPI Scorecard (This Week vs Last Week vs Goal)
| Metric | This Week | Last Week | Delta | Goal | Status (Green/Yellow/Red) |
|---|---:|---:|---:|---:|---|
| Installs | | | | | |
| Cost (paid spend) | | | | | |
| CPI | | | | | |
| Activation rate (`install -> trip_saved`) | | | | | |
| Paywall view rate | | | | | |
| Paywall conversion (`paywall_view -> purchase_success`) | | | | | |
| New subscribers | | | | | |
| Weekly revenue | | | | | |
| D1 retention | | | | | |
| D7 retention | | | | | |
| D30 retention | | | | | |
| Shares per activated user | | | | | |
## 3) Funnel Breakdown
| Step | Users | Conversion from prior step | Notes |
|---|---:|---:|---|
| Installs | | | |
| First open | | | |
| Onboarding complete | | | |
| Trip options generated | | | |
| Trip saved | | | |
| Paywall viewed | | | |
| Purchase started | | | |
| Purchase success | | | |
`largest_drop_off_step:`
`suspected_cause:`
`fix_to_ship_this_week:`
## 4) Channel Performance
| Channel | Spend | Installs | CPI | Activation rate | Purchase rate | Keep / Improve / Cut |
|---|---:|---:|---:|---:|---:|---|
| App Store Organic | | | | | | |
| Apple Search Ads | | | | | | |
| TikTok Organic | | | | | | |
| TikTok Paid | | | | | | |
| Meta Paid | | | | | | |
| Reddit | | | | | | |
| Creator/Influencer | | | | | | |
| Referral/Invite | | | | | | |
## 5) Experiments Reviewed
### Experiment 1
`name:`
`hypothesis:`
`change_shipped:`
`result:`
`decision:` Ship / Iterate / Kill
### Experiment 2
`name:`
`hypothesis:`
`change_shipped:`
`result:`
`decision:` Ship / Iterate / Kill
### Experiment 3
`name:`
`hypothesis:`
`change_shipped:`
`result:`
`decision:` Ship / Iterate / Kill
## 6) Product + UX Issues
Top friction points from analytics, support, or user feedback:
1.
2.
3.
`highest_priority_fix_for_this_week:`
## 7) Content + Distribution Review
| Content Type | Published | Avg views | Avg CTR to store/site | Top performer | Next action |
|---|---:|---:|---:|---|---|
| TikTok/Reels | | | | | |
| X/Twitter | | | | | |
| Reddit posts/comments | | | | | |
| Email newsletter | | | | | |
| Creator placements | | | | | |
`winning_content_angle:`
`angle_to_drop:`
## 8) Decisions (Write Explicitly)
1.
2.
3.
## 9) This Week Plan (Top 3 Priorities Only)
1.
2.
3.
## 10) Owner + Deadline Grid
| Task | Owner | Deadline | Success metric |
|---|---|---|---|
| | | | |
| | | | |
| | | | |
## 11) Risk Watch
`biggest_risk_next_2_weeks:`
`mitigation:`
## 12) Weekly Close Checklist
- [ ] KPI table filled with real numbers
- [ ] One funnel fix selected and scheduled
- [ ] One distribution channel reduced or scaled based on data
- [ ] Three decisions documented
- [ ] Three priorities set for current week

View File

@@ -0,0 +1,138 @@
# SportsTime Monday Growth Review - Example (Week 1)
Use this as a concrete starter. Date context:
- Review date: February 9, 2026
- Week range: February 2-8, 2026
## 1) Week Snapshot
`review_date:` 2026-02-09
`review_owner:` Trey
`week_range:` 2026-02-02 to 2026-02-08
`headline:` Strong launch-week top-of-funnel; biggest gap is install-to-trip-save activation.
## 2) KPI Scorecard (This Week vs Last Week vs Goal)
| Metric | This Week | Last Week | Delta | Goal | Status (Green/Yellow/Red) |
|---|---:|---:|---:|---:|---|
| Installs | 486 | 0 | +486 | 500 | Yellow |
| Cost (paid spend) | $118 | $0 | +$118 | <= $120 | Green |
| CPI | $2.43 | $0 | n/a | <= $3.00 | Green |
| Activation rate (`install -> trip_saved`) | 16.9% | 0% | +16.9pp | 22% | Red |
| Paywall view rate | 12.4% | 0% | +12.4pp | 15% | Yellow |
| Paywall conversion (`paywall_view -> purchase_success`) | 8.3% | 0% | +8.3pp | 10% | Yellow |
| New subscribers | 5 | 0 | +5 | 8 | Yellow |
| Weekly revenue | $11.85 | $0 | +$11.85 | $20 | Yellow |
| D1 retention | 31.7% | 0% | +31.7pp | 32% | Yellow |
| D7 retention | n/a (insufficient) | 0% | n/a | 14% | Yellow |
| D30 retention | n/a | 0% | n/a | 7% | Yellow |
| Shares per activated user | 0.41 | 0 | +0.41 | 0.50 | Yellow |
## 3) Funnel Breakdown
| Step | Users | Conversion from prior step | Notes |
|---|---:|---:|---|
| Installs | 486 | - | Launch week traffic healthy |
| First open | 459 | 94.4% | Normal app install/open drop |
| Onboarding complete | 365 | 79.5% | Step completion acceptable |
| Trip options generated | 146 | 40.0% | Biggest drop starts here |
| Trip saved | 82 | 56.2% | Save intent good once options seen |
| Paywall viewed | 57 | 69.5% | Trigger points working |
| Purchase started | 12 | 21.1% | CTA can improve |
| Purchase success | 5 | 41.7% | Early conversion acceptable |
`largest_drop_off_step:` onboarding_complete -> trip_options_generated
`suspected_cause:` users not selecting enough required fields in wizard and/or route generation feels heavy before first win
`fix_to_ship_this_week:` add progress hints + "minimum required to generate first route" helper + one-tap defaults
## 4) Channel Performance
| Channel | Spend | Installs | CPI | Activation rate | Purchase rate | Keep / Improve / Cut |
|---|---:|---:|---:|---:|---:|---|
| App Store Organic | $0 | 206 | $0.00 | 18.4% | 1.3% | Improve |
| Apple Search Ads | $86 | 118 | $0.73 | 22.0% | 1.7% | Keep |
| TikTok Organic | $0 | 72 | $0.00 | 11.1% | 0.4% | Improve |
| TikTok Paid | $32 | 54 | $0.59 | 9.3% | 0.0% | Cut |
| Meta Paid | $0 | 0 | $0.00 | - | - | Not run |
| Reddit | $0 | 29 | $0.00 | 20.7% | 1.4% | Keep |
| Creator/Influencer | $0 | 7 | $0.00 | 14.3% | 0.0% | Improve |
| Referral/Invite | $0 | 0 | $0.00 | - | - | Not live yet |
## 5) Experiments Reviewed
### Experiment 1
`name:` Review prompt after second successful session
`hypothesis:` delaying prompt until post-value moment improves rating conversion
`change_shipped:` prompt gate after second session + successful route save
`result:` 9 ratings, average 4.8, no negative spike
`decision:` Ship
### Experiment 2
`name:` Launch paywall on first blocked action only
`hypothesis:` contextual paywall increases purchase start rate vs generic modal
`change_shipped:` paywall shown only on 3 blocked actions
`result:` paywall start rate 21.1%, purchase success 41.7% from starts
`decision:` Iterate (test stronger annual framing)
### Experiment 3
`name:` TikTok "3 games in 4 days" hook
`hypothesis:` challenge framing drives higher installs than static demo
`change_shipped:` 4 videos with challenge overlay
`result:` higher views, low activation quality from paid traffic
`decision:` Iterate for organic; kill paid variant
## 6) Product + UX Issues
Top friction points from analytics + qualitative feedback:
1. Too many required fields before first route output.
2. Users unclear why no routes returned in some date windows.
3. Region selection not obvious to first-time users.
`highest_priority_fix_for_this_week:` simplify first route flow and auto-fill defaults to increase `trip_options_generated`.
## 7) Content + Distribution Review
| Content Type | Published | Avg views | Avg CTR to store/site | Top performer | Next action |
|---|---:|---:|---:|---|---|
| TikTok/Reels | 7 | 2,540 | 1.8% | "Can you hit 3 NBA games in 4 days?" | Repeat challenge format with city-specific hooks |
| X/Twitter | 8 | 740 | 1.2% | Team-first route thread | Post 1 route teardown/day |
| Reddit posts/comments | 3/19 | n/a | n/a | Value post in `r/roadtrip` | Keep value-first, no direct promo tone |
| Email newsletter | 1 | n/a | 5.1% | Launch email | Send weekly route drop |
| Creator placements | 2 | 1,100 | 0.7% | MLB weekend route clip | Send 20 custom creator route DMs |
`winning_content_angle:` "Can you hit X games in Y days from [city]?"
`angle_to_drop:` generic feature walkthrough with no concrete trip scenario
## 8) Decisions (Write Explicitly)
1. Shift remaining paid budget to Apple Search Ads; pause TikTok paid for now.
2. Prioritize activation improvements before scaling top-of-funnel.
3. Launch referral loop in next sprint to increase low-cost installs.
## 9) This Week Plan (Top 3 Priorities Only)
1. Ship onboarding simplification and default route helper.
2. Implement referral/deep-link invite loop for polls and shared routes.
3. Publish 5 short videos using city + league challenge format.
## 10) Owner + Deadline Grid
| Task | Owner | Deadline | Success metric |
|---|---|---|---|
| Onboarding simplification + defaults | Trey | 2026-02-12 | `onboarding_complete -> trip_options_generated` +8pp |
| Referral/deep-link invite MVP | Trey | 2026-02-14 | 25 referred installs in first 7 days |
| Content batch (5 challenge videos) | Trey | 2026-02-15 | >= 10k total views, >= 2% CTR |
## 11) Risk Watch
`biggest_risk_next_2_weeks:` traffic quality can outpace product readiness and suppress ratings/retention
`mitigation:` keep paid spend constrained until activation and D1 retention stabilize above target
## 12) Weekly Close Checklist
- [x] KPI table filled with real numbers
- [x] One funnel fix selected and scheduled
- [x] One distribution channel reduced or scaled based on data
- [x] Three decisions documented
- [x] Three priorities set for current week

363
docs/codexMarketing.md Normal file
View File

@@ -0,0 +1,363 @@
# SportsTime iOS Launch & Growth Plan (90 Days)
Assumptions used for this plan:
- You are pre-launch on TestFlight with no meaningful existing audience.
- Budget is $500/month total.
- You can ship product changes quickly.
- US-only, iPhone-only, sports leagues are US-focused.
- Pricing is currently `$0.99/month` and `$9.99/year` (strongly recommend testing higher price points in Month 2).
Proposed 90-day targets (edit as needed):
- Baseline: `12,000 installs`, `300 paid subscribers`, `D1 32%`, `D7 14%`, `D30 7%`.
- Stretch: `30,000 installs`, `800 paid subscribers`, `D1 35%`, `D7 16%`, `D30 8%`.
- 100k installs in 90 days is only realistic if a viral loop from sharing/polls lands hard; paid media alone cannot do this on $500/mo.
## 1. Positioning & Messaging
- Core hook: “Plan multi-game sports road trips in minutes, not spreadsheets.”
- Positioning statement: SportsTime is the only iPhone app that combines real game schedules, route logic, and stadium tracking into one trip-planning flow.
- Target audience psychology: sports fans with FOMO, completionist behavior (visit all stadiums), social bragging (share routes/progress), and “planning as entertainment” during downtime.
- Why they install: they want an answer to “What games can I realistically hit in one trip?”.
- Why they pay: unlimited saved trips, group planning/polls, and stadium progress tracking are “identity” features for serious fans.
Main competitor set:
- `Roadtrippers` and `Wanderlog` for generic road-trip planning.
- `MLB Ballpark` for in-stadium check-in utility.
- `StadiumTrack` / `Stadium Rover` / `Balltrip` for stadium/fan tracking or lightweight sports-trip planning.
- `SeatGeek` as adjacent discovery/ticket competitor.
Why SportsTime wins:
- Sports-native planning modes (`by dates`, `by games`, `by route`, `follow team`, `by teams`) rather than generic POI routing.
- Cross-league coverage in one planner.
- Built-in “fan progression” layer (stadium tracking + achievements), not just itinerary.
- Group poll collaboration tied to trip options.
Tagline ideas:
- “From Couch to Kickoff.”
- “Build Your Ultimate Stadium Run.”
- “Plan the Trip. Chase the Games.”
- “See More Games. Drive Less.”
- “The Road-Trip Brain for Sports Fans.”
App Store subtitle ideas:
- “Plan Multi-Game Road Trips”
- “Sports Route + Stadium Tracker”
- “Trip Planner for Sports Fans”
- “Find Games, Build the Route”
- “Road Trips for Game Days”
## 2. Pre-Launch Plan (30-60 Days Before)
Landing page strategy:
- One CTA only: “Get your first 3-game route.”
- Inputs on page: favorite team, home city, month, max driving hours/day, email.
- Output: send a personalized sample itinerary by email within 24 hours.
- Add 3 social proof blocks from TestFlight users and one short demo video.
Waitlist strategy:
- Segment by league interest and distance willingness.
- Send weekly “Route Drop” emails: one weekend plan, one 5-day plan, one “follow-team” plan.
- Use scarcity: “Founding 500 get lifetime Founder Badge in app + 1 free pro year.”
Beta/TestFlight plan:
- Recruit 150-250 testers with high intent from fan communities.
- Use a structured mission each week: “Plan and save 1 trip” then “Share 1 trip card” then “Log 1 stadium visit.”
- Track activation target: 60% of testers reach `trip_saved`.
- Run 2 in-app surveys: after first trip save and after first week.
Community building channels:
- Reddit: `r/baseball`, `r/NBA`, `r/nfl`, `r/hockey`, `r/mls`, `r/wnba`, `r/NWSL`, `r/roadtrip`.
- TikTok/Reels: 4-5 short videos/week, each showing real route scenarios.
- X/Twitter: daily “Can this trip work?” route posts with screenshots.
How to collect emails:
- Website route generator.
- “Free printable stadium checklist” gated download.
- “Opening Week Route Pack” gated PDF.
- QR code from social video overlays to waitlist page.
How to seed early users:
- DM 100 fan creators/podcasters with a custom route built for their team.
- Offer “free pro for creators + audience code”.
- Run “First 1,000 Founders” campaign with public counter.
## 3. App Store Optimization (ASO)
Keyword strategy:
- Intent cluster A: `sports trip planner`, `stadium trip planner`, `game day trip`.
- Intent cluster B: `road trip planner`, `multi stop route planner`, `travel itinerary`.
- Intent cluster C: `MLB trip`, `NBA trip`, `NFL trip`, `NHL trip`, `MLS trip`.
- Intent cluster D: `stadium tracker`, `ballpark tracker`, `sports bucket list`.
Title/subtitle structure:
- Title format: `Brand + core intent`.
- Candidate title: `SportsTime: Stadium Trips`.
- Candidate subtitle: `Plan Multi-Game Road Trips`.
Screenshot strategy (8 screens):
- 1: “Plan by dates, games, routes, or teams.”
- 2: “See all games in your trip window.”
- 3: “Get optimized route options with drive time.”
- 4: “Compare itinerary options fast.”
- 5: “Save trips and revisit anytime.”
- 6: “Track stadiums visited across leagues.”
- 7: “Plan with friends using trip polls.”
- 8: “Share polished trip cards and PDFs.”
Preview video plan:
- Video A (15s): instant value, “from dates to route in seconds.”
- Video B (30s): real scenario, “hit 3 games in 4 days.”
- Video C (20s): stadium tracker + achievements + social sharing.
Review/rating strategy for first 100 reviews:
- Trigger `SKStoreReviewController` only after `trip_saved` + second successful session.
- Do not prompt after errors or paywall rejection.
- Send direct asks to top 100 TestFlight users with one-tap review deep link.
- In-app “Founding User” card asking for review after user shares a route.
Localization strategy:
- English (US) first.
- Spanish metadata next for US Hispanic market.
- Localize title/subtitle/keywords/screenshots before localizing full app UI.
## 4. Launch Week Strategy
| Day | Objective | Tactics | KPI |
|---|---|---|---|
| Day 1 (Mon) | Final prep | Freeze build, finalize ASO assets, schedule manual release, set analytics dashboards, queue 7 short videos | Zero blocker bugs |
| Day 2 (Tue) | Public launch burst | App Store live + Product Hunt launch + waitlist email blast + creator DMs (30) + ASA exact-match campaign start | Day-1 installs, CVR |
| Day 3 (Wed) | Reddit credibility | Post 3 value-first route breakdowns (not promo spam), reply to comments for 4 hours, publish one “how I planned this trip” thread | Saves/comments/clicks |
| Day 4 (Thu) | Short-form reach | Publish 3 TikToks/Reels showing team-specific route examples, CTA to free route planner | CTR to App Store |
| Day 5 (Fri) | Press + podcasts | Send 50 personalized pitches to sports newsletters/podcasts/blogs with team-angle hooks and demo links | Replies/bookings |
| Day 6 (Sat) | Community activation | Run “Weekend Stadium Challenge” with hashtag + share card template, repost user submissions | UGC count, shares |
| Day 7 (Sun) | Conversion optimization | Analyze funnel drop-offs, ship onboarding/paywall copy fixes, rotate ad creatives, publish launch recap thread | Activation uplift |
Product Hunt strategy:
- Launch Tuesday 12:01am PT.
- First comment must include one specific use case and roadmap.
- Ask 25 close contacts to engage in first 4 hours.
Reddit strategy:
- 70% value content, 20% discussion, 10% product mention.
- Post local/team-specific trip examples, not generic promo.
TikTok strategy:
- Repeatable content format: “Can you hit X games in Y days from [city]?”
- One visual hook in first 1.5 seconds, route reveal by second 5.
Influencer outreach:
- Target micro-creators in sports travel/fan vlog niche (`5k-100k followers`).
- Offer custom route build + 1-year pro for coverage.
Press outreach:
- Pitch angle by season moment (opening day, playoffs, rivalry weeks).
- Focus on niche sports outlets first, then broader travel tech.
Hacker News:
- Use only if you pitch technical angle: route algorithm + schedule constraints.
Paid ads in launch week:
- Spend `$120` max in week 1 for signal collection.
- Keep campaigns narrow and high-intent.
## 5. Growth Engine (Post-Launch)
Organic loops:
- Poll invite loop: each poll invite sends a deep link; recipient installs to vote.
- Share loop: route cards/PDFs include app watermark + CTA.
- Progress loop: stadium milestones create social posts (“12/30 MLB parks completed”).
Referral system:
- Give 1 month Pro for every referred user who completes first `trip_saved`.
- Cap at 12 months to avoid abuse.
Viral features to prioritize:
- Public “Team Trip Templates” share pages.
- “Weekend Route Generator” for each league.
- “Stadium Chase leaderboard” by city/team fandom.
Content strategy:
- Daily short route content tied to upcoming schedule windows.
- Weekly newsletter: “Best trips this week from [major US cities].”
SEO strategy:
- Create indexed pages: `/routes/[team]/[month]/[origin-city]`.
- Publish “best sports road trips by month” content with real route screenshots.
Community building:
- Launch a Discord with 3 channels only: `route-help`, `trip-recaps`, `feature-vote`.
- Host weekly “route office hours”.
Retention strategy:
- Push notifications on intent:
- Trigger if user planned but did not save in 24h.
- Trigger when favorite team has dense game window.
- Trigger when user is near unvisited stadium.
- Email cadence:
- Day 1: “Your first route + edit tips.”
- Day 3: “3 trips you can do from your city.”
- Day 10: “Track your first stadium visit.”
## 6. Paid Acquisition Plan (If Budget > $0)
Budget recommendation at `$500/month`:
- Apple Search Ads: `$325`
- TikTok Ads: `$125`
- Meta Ads: `$50`
- Creator seed spend: barter/free-pro only unless one creator clearly performs.
Apple Search Ads strategy:
- Campaign groups: brand, competitor, category, discovery.
- Start exact-match with high intent keywords only.
- Use CPT caps tightly; pause anything above target CPI by day 4.
TikTok ads strategy:
- Use native-style UGC clips, not polished promo ads.
- Creative angles: “I planned this Yankees trip in 30 seconds”, “3 games, 4 days challenge”.
Meta ads strategy:
- Interest stack: league fans + road trips + travel planning.
- Run one retargeting ad set once pixel audience exists.
Creator partnerships:
- Prioritize sports trip vloggers and fan podcasters.
- Give creator-specific deep links and offer their audience 30-day pro.
Expected CPI ranges (US, non-gaming guidance + practical inference):
- Apple Search Ads: roughly `$3.5-$6.0` per install.
- TikTok: roughly `$1.5-$4.0`.
- Meta: roughly `$2.0-$6.0`.
Testing plan:
- 2-week sprints.
- 3 creatives per channel minimum.
- Kill rule: pause ad after `3x target CPI` with no activation.
- Scale rule: increase 20% budget/day only on ad sets hitting activation and paywall conversion thresholds.
## 7. Analytics & Tracking Setup
Must-have tools:
- Product analytics: `PostHog` or `Amplitude`.
- Crash/perf: `Firebase Crashlytics`.
- Subscription tracking: StoreKit transaction events + server-side receipt status.
- Attribution at this budget: Apple Ads native attribution + SKAN/AdAttributionKit signals.
North-star metric:
- `Weekly Trip Saves (WTS)` and `Weekly Activated Users (WAU-Activated)`.
Core funnel:
- `install -> first_open -> onboarding_complete -> trip_options_generated -> trip_saved -> paywall_view -> purchase_success -> week1_return`.
Event schema to implement now:
- `app_first_open`
- `onboarding_started`
- `onboarding_completed`
- `planning_mode_selected`
- `sports_selected`
- `date_range_set`
- `regions_selected`
- `games_loaded`
- `trip_options_generated`
- `trip_option_viewed`
- `trip_saved`
- `trip_shared`
- `pdf_export_generated`
- `paywall_viewed`
- `paywall_cta_tapped`
- `purchase_started`
- `purchase_success`
- `purchase_failed`
- `subscription_renewed`
- `subscription_canceled`
- `poll_create_started`
- `poll_created`
- `poll_invite_sent`
- `poll_vote_submitted`
- `stadium_visit_logged`
- `achievement_unlocked`
- `push_opt_in_status_changed`
- `push_opened`
- `deeplink_opened`
- `referral_accepted`
Required event properties:
- `league`, `planning_mode`, `trip_option_count`, `trip_distance`, `trip_days`, `origin_city`, `paywall_trigger`, `product_id`, `price`, `utm_source`, `creative_id`.
Metrics to track weekly:
- Install-to-activation rate.
- Activation-to-paywall rate.
- Paywall view-to-purchase rate.
- D1/D7/D30 retention.
- ARPPU, trial-to-paid (if trials added), refund rate.
- LTV/CAC payback window by channel.
## 8. 90-Day Execution Roadmap
Week 1-2:
- Ship analytics and event taxonomy.
- Finalize ASO metadata and first 8 screenshots.
- Build waitlist landing page and route-lead magnet.
- Recruit first 150 TestFlight users.
- Publish 10 short videos before launch day.
Week 3-4:
- Launch publicly.
- Run launch week playbook.
- Collect first 50 public reviews.
- Ship onboarding and paywall copy improvements from funnel data.
- Start weekly route newsletter.
Month 2:
- Release referral loop and creator deep links.
- Add public route templates for SEO pages.
- Run 2 pricing/paywall experiments.
- Publish 20 additional short videos tied to schedule moments.
- Scale only top-performing acquisition channel.
Month 3:
- Double down on best league-specific growth channel.
- Launch “Stadium Challenge” campaign with leaderboard.
- Expand metadata localization to Spanish (US-focused).
- Add one retention feature tied to favorite teams and upcoming game clusters.
- Prepare playoff-season campaign calendar.
## 9. Aggressive Growth Ideas
1. Build “Weekend Trip Generator” web tool that creates shareable route images instantly.
2. Make first poll free (even on free tier) to maximize invite-based installs.
3. Run “30 Stadiums in 90 Days” public challenge with weekly leaderboard.
4. Auto-generate team-specific social content daily from schedule windows.
5. Offer fan podcasters a custom route segment they can run each week.
6. Launch “Founder handle” badges that appear on shared cards for status.
7. Create local city route packs (“Best Chicago-based sports trips this month”).
8. Ship one-tap “Share to Instagram Stories” templates for every saved trip.
9. Partner with sports betting/travel newsletters for co-branded route drops.
10. Build seasonal event pages around rivalry weeks and playoffs for search capture.
## 10. Biggest Mistakes to Avoid
- Keeping pricing too low for too long; it hurts perceived value and makes paid growth non-viable.
- Gating every social loop behind paywall; you need free-tier virality before monetization pressure.
- Launching without instrumentation; no event-level data means blind iteration.
- Broad targeting (“all sports fans”) instead of high-intent segments by league/team/city.
- Posting self-promo spam in Reddit communities; you will get blocked and lose your best channel.
- Ignoring retention and over-focusing on top-of-funnel installs.
- Shipping with schedule/timezone inaccuracies; trust is the product in planning apps.
- Running too many channels at once as a solo founder; pick 2 organic channels + 1 paid channel.
- Not building reusable creative systems; growth will stall if content production is ad hoc.
- Delaying referral/deep-link loops; with $500/month budget, this is your real growth lever.
## Sources
- Wanderlog App Store listing: <https://apps.apple.com/us/app/wanderlog-travel-planner/id1476732439>
- Roadtrippers App Store listing: <https://apps.apple.com/us/app/roadtrippers-trip-planner/id944060491>
- Balltrip App listing: <https://apps.apple.com/us/app/balltrip-app/id1625957435>
- StadiumTrack listing: <https://apps.apple.com/us/app/stadiumtrack/id6752205919>
- Stadium Rover listing: <https://apps.apple.com/us/app/stadium-rover/id6744362780>
- MLB Ballpark listing: <https://apps.apple.com/us/app/mlb-ballpark/id513135722>
- SeatGeek listing: <https://apps.apple.com/us/app/seatgeek-buy-event-tickets/id582790430>
- TripIt listing: <https://apps.apple.com/us/app/tripit-travel-planner/id311035142>
- AppTweak Apple Ads benchmarks (US CPI reference): <https://www.apptweak.com/en/aso-blog/apple-ads-benchmarks>
- AppsFlyer market trend references:
- <https://www.appsflyer.com/resources/reports/performance-index/>
- <https://www.appsflyer.com/resources/reports/top-5-data-trends-report/>

View File

@@ -0,0 +1,133 @@
# SportsTime 90-Day Growth Operator Checklist
Use this as a weekly execution sheet. Check every item before ending the week.
## KPI Guardrails (Track Weekly)
- [ ] Installs (weekly) hit target
- [ ] `install -> trip_saved` activation rate improves or holds
- [ ] `paywall_view -> purchase_success` conversion improves or holds
- [ ] D1 retention
- [ ] D7 retention
- [ ] Revenue and subscriber count
## Week 1
- [ ] Implement core analytics events (`first_open`, `onboarding_completed`, `trip_options_generated`, `trip_saved`, `paywall_viewed`, `purchase_success`, `trip_shared`, `poll_created`, `stadium_visit_logged`)
- [ ] Build dashboard for activation, paywall conversion, retention, revenue
- [ ] Finalize App Store title, subtitle, keywords
- [ ] Draft 8 screenshot concepts (one value message each)
- [ ] Build launch waitlist landing page with one CTA
- [ ] Add email capture with simple segmentation (league + home city)
- [ ] Create 5 short-form video scripts for launch
## Week 2
- [ ] Produce and queue at least 10 short videos
- [ ] Recruit first 150 TestFlight users (Reddit/X/DM outreach)
- [ ] Run TestFlight mission: every tester plans and saves 1 trip
- [ ] Collect and tag beta feedback (onboarding, route quality, pricing, bugs)
- [ ] Implement review prompt trigger after successful `trip_saved` + second session
- [ ] Prepare press and creator outreach list (minimum 100 contacts total)
## Week 3 (Launch Week)
- [ ] Monday: release readiness check, analytics sanity, content queue ready
- [ ] Tuesday: App Store release + Product Hunt launch
- [ ] Tuesday: send launch email to waitlist
- [ ] Tuesday: start Apple Search Ads exact-match campaign
- [ ] Wednesday: publish 3 value-first Reddit posts
- [ ] Thursday: post 3 short videos (team-specific route examples)
- [ ] Friday: send 50 personalized press/newsletter/podcast pitches
- [ ] Weekend: run user-generated “Stadium Challenge” post format
- [ ] Sunday: funnel review and quick fixes shipped
## Week 4
- [ ] Publish post-launch update with roadmap and fixes
- [ ] Optimize onboarding copy based on Week 3 drop-offs
- [ ] Optimize paywall copy and placement based on Week 3 conversion
- [ ] Refresh App Store screenshots with top-performing messaging angle
- [ ] Collect first 50 App Store reviews
- [ ] Start weekly “Route Drop” newsletter
## Week 5
- [ ] Ship referral flow (`referral_accepted` tracked)
- [ ] Ship creator deep links with source tagging
- [ ] Publish 5 new short videos tied to upcoming game windows
- [ ] Launch one “origin city -> weekend trips” content page
- [ ] Cut any paid channel/ad set above kill threshold CPI
## Week 6
- [ ] Launch first pricing/paywall test (copy, offer framing, or annual emphasis)
- [ ] Add push nudges for unfinished trip planning (24-hour trigger)
- [ ] Publish 5 route-focused short videos
- [ ] Run outreach wave #2 to 30 creators with custom team routes
- [ ] Review retention cohorts by planning mode
## Week 7
- [ ] Launch second paywall/pricing test (alternate variant)
- [ ] Ship one viral sharing improvement (better card CTA, cleaner share template, deep-link recovery)
- [ ] Publish 2 SEO pages for team/month route templates
- [ ] Run Reddit AMA-style value thread (planning workflows, not promo spam)
- [ ] Weekly KPI review and decision log updated
## Week 8
- [ ] Launch “Stadium Progress” social campaign format
- [ ] Add push trigger for favorite-team high-density game window
- [ ] Publish 5 short videos and 1 long-form walkthrough
- [ ] Expand creator program with simple affiliate-like tracking code
- [ ] Rebalance paid budget to top channel only
## Week 9
- [ ] Ship public route template library MVP
- [ ] Publish 3 new city-based route pages for SEO
- [ ] Audit funnel by source (`utm_source`, `creative_id`)
- [ ] Replace lowest-performing screenshot and subtitle variant
- [ ] Gather 10 qualitative user calls or DM interviews
## Week 10
- [ ] Launch “Challenge” feature campaign (e.g., 30 stadiums progress stories)
- [ ] Add one retention feature driven by user feedback
- [ ] Publish 5 short videos with playoff/rivalry angles
- [ ] Outreach wave #3 to niche podcasts/newsletters
- [ ] Validate CAC vs 30-day value trend
## Week 11
- [ ] Localize App Store metadata to Spanish (US-focused)
- [ ] Re-run ASO keyword refresh from actual query data
- [ ] Ship referral optimization (friction reduction + clearer reward copy)
- [ ] Run one focused promo with creator partner
- [ ] Weekly KPI review and decision log updated
## Week 12
- [ ] Prepare playoff-season campaign package (assets, routes, content calendar)
- [ ] Create best-performing content playbook from last 60 days
- [ ] Consolidate winning onboarding/paywall variants as new default
- [ ] Publish retention and win-back email sequence v2
- [ ] Collect net-new review push to pass 100 reviews total
## Week 13 (Day 85-90)
- [ ] Run full 90-day retrospective: installs, activation, retention, revenue, CAC/LTV
- [ ] Decide channel strategy for next 90 days (double down on top 1-2)
- [ ] Lock next-quarter growth bets (3 max)
- [ ] Archive failed experiments and reasons
- [ ] Publish internal growth memo with next-quarter numeric targets
## Weekly Operating Rhythm (Repeat Every Week)
- [ ] Monday: KPI review + top 3 experiments selected
- [ ] Tuesday: ship product changes tied to funnel
- [ ] Wednesday: distribution day (community + creator outreach)
- [ ] Thursday: content day (short-form + newsletter)
- [ ] Friday: experiment readout + budget reallocation
- [ ] Sunday: prepare next week assets and schedule

66
docs/reelRollOut.md Normal file
View File

@@ -0,0 +1,66 @@
# SportsTime Reels Rollout (14 Days)
Timezone: **US Eastern (ET)**
Start date: **Monday, February 9, 2026**
End date: **Sunday, February 22, 2026**
## Hashtag Sets
Use one set per post (rotate to avoid repetitive footprint).
- **Set A (General Sports Travel)**
- `#SportsTime #SportsRoadTrip #GameDay #RoadTrip #SportsFans #TravelTok #iPhoneApps #WeekendTrip`
- **Set B (Follow Team / Away Games)**
- `#SportsTime #AwayGame #FollowYourTeam #NBATok #NFLTok #MLBTok #NHLTok #SoccerTok`
- **Set C (Group Planning / Polls)**
- `#SportsTime #GroupTrip #TripPlanning #FriendGroup #SportsTrip #RoadTripIdeas #SportsTok #BucketList`
- **Set D (Stadium Tracker / Completionist)**
- `#SportsTime #StadiumTracker #StadiumChallenge #SportsBucketList #FanLife #BucketList #TravelGoals #USRoadTrip`
- **Set E (Lifestyle / Vlog)**
- `#SportsTime #WeekendVibes #RoadTripVlog #SportsTravel #CoupleTravel #FriendTrips #TravelReels #SportsReels`
## 14-Day Posting Calendar (Exact Publish Times)
| Date | Day | Time (ET) | Video ID | Title | Caption | Hashtag Set | Hook A | Hook B |
|---|---|---|---|---|---|---|---|---|
| 2026-02-09 | Mon | 12:20 PM | V01 | 3-in-4 Challenge | `3 games, 4 days, one car. No spreadsheet. Want one for your city?` | Set A | `I planned a 3-stadium weekend in 14 seconds.` | `This sports road trip looked impossible until I did this.` |
| 2026-02-09 | Mon | 8:40 PM | V02 | Fan Test | `Hot take: if youve never done an away-game road trip, youre missing out.` | Set B | `If youve never done an away-game road trip… are you even a fan?` | `Real fans do at least one away-game run a season.` |
| 2026-02-10 | Tue | 12:20 PM | V03 | "We Should Do This" | `Every group chat says "we should do a trip." Nobody plans it.` | Set C | `Group chat said “we should do this.” No one planned it.` | `Your group chat has ideas. This is how it actually happens.` |
| 2026-02-10 | Tue | 8:40 PM | V04 | Stadium Count Flex | `My friend said hes a diehard fan. I asked for his stadium count.` | Set D | `My friend: 4 stadiums. Me: 27.` | `If you dont track your stadiums, does it even count?` |
| 2026-02-11 | Wed | 12:20 PM | V06 | Date Range Tutorial | `How to build a sports trip in 3 taps.` | Set A | `How to plan a sports road trip in 3 taps.` | `Takes me less than 20 seconds to build a route now.` |
| 2026-02-11 | Wed | 8:40 PM | V07 | Follow Team Mode | `If youre obsessed with one team, this mode is unfair.` | Set B | `Want to follow your team on the road? Do this.` | `Pick your team, and it maps a real road stretch.` |
| 2026-02-12 | Thu | 12:20 PM | V08 | Route-First Planning | `Already driving? Add games on the way without blowing up the trip.` | Set A | `Driving Dallas to Atlanta? Add games on the way.` | `You can turn any long drive into a game-day run.` |
| 2026-02-12 | Thu | 8:40 PM | V09 | Must-See Games First | `I pick the matchups first. The route can figure itself out.` | Set B | `Pick the games first. Let the route figure itself out.` | `Stop planning around highways. Plan around games.` |
| 2026-02-13 | Fri | 12:20 PM | V16 | The 4 Trip Friends | `Tag your group roles right now 😂` | Set C | `Every sports trip has these 4 people.` | `One of your friends is 100% this person.` |
| 2026-02-13 | Fri | 8:40 PM | V19 | Casual Fan Take | `Hot take Friday: home-games-only fans are missing half the fun.` | Set B | `Hot take: home-games-only fans are missing half the fun.` | `Away-game runs are peak fan experience. Debate me.` |
| 2026-02-14 | Sat | 10:30 AM | V11 | 48-Hour Sports Trip | `Perfect weekend blueprint: 2 stadiums, one route, zero chaos.` | Set E | `This is what a perfect sports weekend looks like.` | `48 hours. 2 stadiums. Best weekend in months.` |
| 2026-02-14 | Sat | 7:30 PM | V12 | Date Night, But 300 Miles | `Our date nights are weird and elite.` | Set E | `Our date night is 2 games in 2 cities.` | `Couples therapy: road trip + live sports.` |
| 2026-02-15 | Sun | 11:00 AM | V13 | Squad Road Run | `4 friends, 1 car, and finally no planning meltdown.` | Set E | `4 friends, 1 car, 3 games, no planning pain.` | `What happens when your friend group actually commits.` |
| 2026-02-16 | Mon | 8:40 PM | V05 | Local Instant Trip | `Drop your city and Ill reply with a weekend game run.` | Set A | `From Chicago this weekend? You can hit these 2 games.` | `Your city has a hidden 2-game weekend route.` |
| 2026-02-17 | Tue | 8:40 PM | V10 | Polls / Group Voting | `This feature ended our 200-message argument instantly.` | Set C | `Your group can vote instead of arguing for days.` | `Group trip deadlocks are solved with one poll.` |
| 2026-02-18 | Wed | 8:40 PM | V14 | Road to All Stadiums | `Completionist fans: whats your count right now?` | Set D | `Trying to hit every stadium before 35.` | `This app turned my fandom into a mission.` |
| 2026-02-19 | Thu | 8:40 PM | V17 | Spreadsheet vs SportsTime | `My old planning method was literally 9 tabs and pain.` | Set A | `How we used to plan trips 🤡` | `Before: spreadsheets. After: one app.` |
| 2026-02-20 | Fri | 8:40 PM | V15 | Sunday Ritual (posted Friday teaser) | `Steal this weekend planning ritual before Sunday.` | Set E | `Bored Sunday? Plan your next sports weekend in 2 minutes.` | `My Sunday reset now includes locking one sports trip.` |
| 2026-02-21 | Sat | 11:00 AM | V18 | "Im Down" Friend Test | `Send this to the flaky "Im down" friend.` | Set C | `“Im down” friend when its time to pick dates…` | `If theyre really down, make them vote.` |
| 2026-02-22 | Sun | 7:30 PM | V20 | Completionist Debate | `Controversial take: no tracker = no bucket list proof.` | Set D | `You cant call it a stadium bucket list if you dont track it.` | `No scoreboard, no flex. Whats your count?` |
## Posting Ops Checklist (Per Post)
- [ ] Publish at listed ET time.
- [ ] Pin a first comment with CTA: `Search SportsTime on App Store`.
- [ ] Reply to first 10 comments within 20 minutes.
- [ ] If city is mentioned in comments, reply with `Ill build your route next.`
- [ ] Save best viewer phrases for next hook variants.
## Hook A/B Testing Rule
- First 30 minutes weak retention (<35% at 3s): re-upload next day with Hook B.
- If Hook A drives comments but weak CTR, keep hook and change caption + first comment CTA.
- Dont change both hook and caption on same retry.
## Caption Formula (Reusable)
- `Pain/identity line` + `proof line` + `comment bait`.
- Example: `Every group chat says “we should do this.” I built 3 real options in one app. Drop your city and Ill do one.`

411
docs/reels.md Normal file
View File

@@ -0,0 +1,411 @@
# SportsTime Short-Form Video Concepts (20)
These are designed for TikTok / Reels / Shorts and mapped to install intent.
## Video IDs
- V01 3-in-4 Challenge
- V02 Fan Test
- V03 "We Should Do This" Group Chat
- V04 Stadium Count Flex
- V05 Local Instant Trip
- V06 Date Range Tutorial
- V07 Follow Team Mode
- V08 Route-First Planning
- V09 Build Around Must-See Games
- V10 Stop Group Trip Deadlocks (Polls)
- V11 48-Hour Sports Trip Montage
- V12 Date Night, But 300 Miles
- V13 Squad Road Run
- V14 Road to All Stadiums
- V15 Sunday Planning Ritual
- V16 The 4 Trip Friends
- V17 Spreadsheet Era vs SportsTime Era
- V18 "Im Down" Friend Test
- V19 Casual Fan Take (Away Games)
- V20 Completionist Debate
## 1) V01 - 3-in-4 Challenge (Viral)
1. Hook: "I planned a 3-stadium weekend in 14 seconds."
2. Concept: Impossible-sounding trip planning proven live.
3. Storyboard:
- Scene 1: Face cam in car, urgent zoom.
- Scene 2: App date range + league selection.
- Scene 3: Route map auto-build.
- Scene 4: Itinerary timeline + drive segments.
- Scene 5: Save + share card preview.
4. On-screen text:
- "3 GAMES. 4 DAYS."
- "No spreadsheet"
- "Real schedules + real route"
5. VO: "Picked dates, picked leagues, and it built the trip for me."
6. Shot list: Face cam + screen recording + quick road b-roll.
7. Length: 14s
8. CTA: "Search SportsTime on App Store."
9. Why it performs: utility + challenge + fan flex.
## 2) V02 - Fan Test (Viral)
1. Hook: "If youve never done an away-game road trip… are you even a fan?"
2. Concept: Identity challenge -> Follow Team demo.
3. Storyboard:
- Scene 1: Bold face cam hot take.
- Scene 2: Follow Team mode selection.
- Scene 3: Road games surfaced.
- Scene 4: Route + itinerary shown.
- Scene 5: "This is your weekend." reaction.
4. On-screen text:
- "HOT TAKE"
- "Follow Team mode"
- "Plan it in seconds"
5. VO: "If youre obsessed, do at least one away-game run this season."
6. Shot list: Face cam + follow team screen recording.
7. Length: 18s
8. CTA: "Search SportsTime and run your teams road stretch."
9. Why it performs: debate comments + identity trigger.
## 3) V03 - "We Should Do This" Group Chat (Viral)
1. Hook: Group chat screenshot + "NOBODY planned it."
2. Concept: Group chat talk -> one person ships plan + poll.
3. Storyboard:
- Scene 1: Chaotic group text overlay.
- Scene 2: Build trip by dates.
- Scene 3: Routes generated.
- Scene 4: Create poll + share code.
- Scene 5: Votes arrive quickly.
4. On-screen text:
- "Every group chat ever"
- "All talk"
- "Poll it. Done."
5. VO: "We talked about this for months. I built it and made everyone vote."
6. Shot list: iMessage overlays + app screen recording.
7. Length: 16s
8. CTA: "If your group chat is all talk, search SportsTime."
9. Why it performs: social pain + collaboration payoff.
## 4) V04 - Stadium Count Flex (Viral)
1. Hook: "My friend: 4 stadiums. Me: 27."
2. Concept: Completionist scoreboard flex.
3. Storyboard:
- Scene 1: Friend vs me split text.
- Scene 2: Open stadium tracker.
- Scene 3: Scroll visited list.
- Scene 4: Next targets on map.
- Scene 5: "catch me at 30".
4. On-screen text:
- "STADIUM FLEX"
- "Visited: 27"
- "Track your run"
5. VO: "Once you track it, it gets addictive."
6. Shot list: tracker screen recording + optional reaction cam.
7. Length: 12s
8. CTA: "Search SportsTime if youre a completionist fan."
9. Why it performs: status + collection psychology.
## 5) V05 - Local Instant Trip (Viral)
1. Hook: "From Chicago this weekend? You can hit these 2 games."
2. Concept: Hyper-local route reveal format.
3. Storyboard:
- Scene 1: City text card.
- Scene 2: Enter start/end city.
- Scene 3: Route with game pins.
- Scene 4: Itinerary timing.
- Scene 5: Save and share.
4. On-screen text:
- "Chicago -> 2 games"
- "Drive-time checked"
- "Build yours"
5. VO: "If youre in [city], heres a legit two-game run."
6. Shot list: map-heavy screen recording + optional city b-roll.
7. Length: 13s
8. CTA: "Comment your city. Search SportsTime."
9. Why it performs: local relevance + comments.
## 6) V06 - Date Range Tutorial (Useful)
1. Hook: "How to plan a sports road trip in 3 taps."
2. Concept: Step-based quick tutorial.
3. Storyboard:
- Scene 1: Pick dates.
- Scene 2: Pick leagues.
- Scene 3: Generate routes.
- Scene 4: Compare options.
- Scene 5: Save trip.
4. On-screen text: "Step 1", "Step 2", "Step 3", "Done".
5. VO: "Dates, leagues, generate. Thats it."
6. Shot list: pure screen recording, tap circles.
7. Length: 15s
8. CTA: "Search SportsTime and test your next free weekend."
9. Why it performs: clarity lowers install friction.
## 7) V07 - Follow Team Mode (Useful)
1. Hook: "Want to follow your team on the road? Do this."
2. Concept: Team-first intent flow.
3. Storyboard:
- Scene 1: Select Follow Team.
- Scene 2: Pick team + dates.
- Scene 3: Road games list.
- Scene 4: Route generated.
- Scene 5: miles/days/games summary.
4. On-screen text:
- "Follow Team"
- "Road games only"
- "Route + schedule synced"
5. VO: "Pick your team, pick dates, get a runnable trip."
6. Shot list: app screen recording + team logo sticker.
7. Length: 17s
8. CTA: "Search SportsTime and chase the road schedule."
9. Why it performs: direct fit for team-obsessed users.
## 8) V08 - Route-First Planning (Useful)
1. Hook: "Driving Dallas -> Atlanta? Add games on the way."
2. Concept: Existing travel plus sports optimization.
3. Storyboard:
- Scene 1: Enter start/end city.
- Scene 2: Set stops and dates.
- Scene 3: Game stops inserted.
- Scene 4: Compare options A/B.
- Scene 5: Save preferred route.
4. On-screen text:
- "Start + End"
- "Add game stops"
- "Compare routes"
5. VO: "If youre already driving, this adds games without chaos."
6. Shot list: map route recording + optional steering wheel shot.
7. Length: 18s
8. CTA: "Search SportsTime before your next long drive."
9. Why it performs: practical utility for road-trippers.
## 9) V09 - Must-See Games First (Useful)
1. Hook: "Pick the games first. Let the route figure itself out."
2. Concept: Matchup-driven planning.
3. Storyboard:
- Scene 1: Open By Games.
- Scene 2: Tap 2 must-see games.
- Scene 3: Date range adapts.
- Scene 4: Route options load.
- Scene 5: Final itinerary timeline.
4. On-screen text:
- "Must-see first"
- "Route auto-built"
- "No headache"
5. VO: "I pick matchups. The app handles logistics."
6. Shot list: game card taps + route output.
7. Length: 16s
8. CTA: "Search SportsTime if you plan around big games."
9. Why it performs: emotionally-driven fan flow.
## 10) V10 - Stop Group Trip Deadlocks (Useful)
1. Hook: "Your group can vote instead of arguing for days."
2. Concept: Poll flow from route options.
3. Storyboard:
- Scene 1: Generate 3 options.
- Scene 2: Create poll.
- Scene 3: Share code to chat.
- Scene 4: Votes come in.
- Scene 5: Winner route selected.
4. On-screen text:
- "3 options"
- "Create poll"
- "Decision made"
5. VO: "This replaced 200 group chat messages."
6. Shot list: app poll + iMessage overlay.
7. Length: 20s
8. CTA: "Search SportsTime and settle your group chat."
9. Why it performs: high social relatability + clear solve.
## 11) V11 - 48-Hour Sports Trip Montage (Lifestyle)
1. Hook: "This is what a perfect sports weekend looks like."
2. Concept: Mini-vlog tied to app plan.
3. Storyboard:
- Scene 1: Packing + itinerary open.
- Scene 2: Highway sunrise + route overlay.
- Scene 3: Stadium #1 clip.
- Scene 4: Night drive + day 2 plan.
- Scene 5: Stadium #2 + completed checklist.
4. On-screen text:
- "FRI -> SUN"
- "2 stadiums"
- "0 chaos"
5. VO: "Friday we planned it, Sunday we checked two stadiums off."
6. Shot list: vlog b-roll + app overlays.
7. Length: 22s
8. CTA: "Build your next weekend in SportsTime."
9. Why it performs: aspiration + proof.
## 12) V12 - Date Night, But 300 Miles (Lifestyle)
1. Hook: "Our date night is 2 games in 2 cities."
2. Concept: Couple sports-trip format.
3. Storyboard:
- Scene 1: Couple selfie in car.
- Scene 2: Itinerary sequence screen.
- Scene 3: Stadium + food shot.
- Scene 4: Hotel + next game card.
- Scene 5: Tracker updates +2.
4. On-screen text:
- "Couple trip"
- "Game + road trip"
- "Itinerary handled"
5. VO: "We just pick dates, SportsTime does the rest."
6. Shot list: couple b-roll + app screen captures.
7. Length: 19s
8. CTA: "Search SportsTime for your next sports weekend."
9. Why it performs: relationship + travel + fandom crossover.
## 13) V13 - Squad Road Run (Lifestyle)
1. Hook: "4 friends, 1 car, 3 games, zero planning pain."
2. Concept: Group road-trip energy.
3. Storyboard:
- Scene 1: Friends pile into car.
- Scene 2: Route on phone mount.
- Scene 3: In-car energy + map progress.
- Scene 4: Stadium arrival.
- Scene 5: Next step planned.
4. On-screen text:
- "No planner friend suffering"
- "Route locked"
- "Squad weekend"
5. VO: "Usually one friend does all the work. Not this time."
6. Shot list: handheld group footage + route screen insert.
7. Length: 20s
8. CTA: "Send this to your group, then search SportsTime."
9. Why it performs: taggable friend dynamic.
## 14) V14 - Road to All Stadiums (Lifestyle)
1. Hook: "Trying to hit every stadium before 35."
2. Concept: Long-term progression narrative.
3. Storyboard:
- Scene 1: Tracker count (12/30 etc).
- Scene 2: Archive clips from past visits.
- Scene 3: Plan next route in app.
- Scene 4: New visit added.
- Scene 5: Updated count.
4. On-screen text:
- "Bucket list goal"
- "12/30 -> 13/30"
- "One by one"
5. VO: "This turned random trips into an actual mission."
6. Shot list: tracker before/after + archive b-roll.
7. Length: 18s
8. CTA: "Search SportsTime if youre on a stadium mission."
9. Why it performs: progress storytelling loop.
## 15) V15 - Sunday Planning Ritual (Lifestyle)
1. Hook: "Bored Sunday? Plan your next sports weekend in 2 minutes."
2. Concept: Planning as ritual content.
3. Storyboard:
- Scene 1: Coffee + couch reset shot.
- Scene 2: Choose dates/leagues.
- Scene 3: Route options generated.
- Scene 4: Share itinerary.
- Scene 5: Add to calendar.
4. On-screen text:
- "Sunday ritual"
- "Pick dates"
- "Weekend secured"
5. VO: "I do this every Sunday now."
6. Shot list: cozy lifestyle + over-shoulder app shots.
7. Length: 15s
8. CTA: "Search SportsTime and make this your Sunday ritual."
9. Why it performs: repeatable weekly behavior.
## 16) V16 - The 4 Trip Friends (Funny)
1. Hook: "Every sports trip has these 4 people."
2. Concept: One-person roleplay + poll solution.
3. Storyboard:
- Scene 1: The hype friend.
- Scene 2: The picky friend.
- Scene 3: The loyalist.
- Scene 4: The confused friend.
- Scene 5: Poll decides route.
4. On-screen text:
- "The hype one"
- "The picky one"
- "The confused one"
- "Poll > arguing"
5. VO: "Instead of debating for days, we voted and moved."
6. Shot list: quick costume swaps + app poll screen.
7. Length: 21s
8. CTA: "Tag your group roles. Search SportsTime."
9. Why it performs: humor + tagging behavior.
## 17) V17 - Spreadsheet Era vs SportsTime Era (Funny)
1. Hook: "How we used to plan trips 🤡"
2. Concept: before/after pain-to-relief format.
3. Storyboard:
- Scene 1: 9 tabs and notes chaos.
- Scene 2: frustrated face.
- Scene 3: hard cut to SportsTime flow.
- Scene 4: instant route and calm reaction.
4. On-screen text:
- "Before: chaos"
- "After: 1 app"
- "Same result"
5. VO: "I used to spend 2 hours; now its 2 minutes."
6. Shot list: laptop chaos + app screen capture.
7. Length: 13s
8. CTA: "Retire the spreadsheet. Search SportsTime."
9. Why it performs: pain-relief contrast.
## 18) V18 - "Im Down" Friend Test (Funny)
1. Hook: "Im down friend when its time to pick dates…"
2. Concept: flaky friend callout + poll accountability.
3. Storyboard:
- Scene 1: "Im down" text.
- Scene 2: excuse texts.
- Scene 3: poll creation in app.
- Scene 4: vote deadline.
- Scene 5: winner route.
4. On-screen text:
- "Im down starter pack"
- "No decisions"
- "Poll > excuses"
5. VO: "If youre really down, vote."
6. Shot list: message overlays + poll screen recording.
7. Length: 14s
8. CTA: "Send this to your flaky friend. Search SportsTime."
9. Why it performs: relatable social friction + taggable joke.
## 19) V19 - Casual Fan Take (Bold)
1. Hook: "Hot take: home-games-only fans are missing half the fun."
2. Concept: away-game opinion + follow-team proof.
3. Storyboard:
- Scene 1: face cam hot take.
- Scene 2: away-game benefits list.
- Scene 3: follow-team route build.
- Scene 4: itinerary with 2 away games.
- Scene 5: "debate me" end card.
4. On-screen text:
- "HOT TAKE"
- "Away games > comfort"
- "Debate below"
5. VO: "If youre serious, do one road stretch this season."
6. Shot list: face cam + follow-team app demo.
7. Length: 17s
8. CTA: "Search SportsTime for your first away-game run."
9. Why it performs: controversy + identity.
## 20) V20 - Completionist Debate (Bold)
1. Hook: "You cant call it a stadium bucket list if you dont track it."
2. Concept: status challenge using tracker proof.
3. Storyboard:
- Scene 1: "prove it" face cam.
- Scene 2: tracker milestones.
- Scene 3: next targets map.
- Scene 4: "drop your count" challenge.
- Scene 5: clean progress UI outro.
4. On-screen text:
- "No tracking = no scoreboard"
- "Drop your number"
5. VO: "Everyone says theyre doing the bucket list. Whats your count?"
6. Shot list: face cam + tracker screen recording.
7. Length: 12s
8. CTA: "Search SportsTime and start your real count."
9. Why it performs: competitive status challenge.
## Batch Production Plan (One Week)
- Day 1: Capture all app screen recordings.
- Day 2: Film all face-cam hooks in one session.
- Day 3: Capture road/stadium/lifestyle b-roll.
- Day 4: Edit and export first 10 videos.
- Day 5: Edit and export final 10 videos.