# Automatic Race Detection: Never Miss a Race Day Again | Activity Craft > Create race events and let Activity Craft automatically detect when your activities match them. From 5K to Ironman, 70+ event types with smart distance matching. Race-specific automations that trigger only on race day. **Author:** Diego G | **Published:** 2025-11-10 --- ## Automations That Know It's Race Day We're launching **Race Event Detection**—a system that lets you create race events and automatically trigger special automations when your activities match them. Imagine uploading your marathon activity and Activity Craft **automatically knows** it's race day. Your automation adds "🏁 NYC Marathon", assigns your race shoes, marks it private, and adds a motivational note to the description—all because it detected the race. No more manual tagging. No more forgetting to assign special gear. Race-specific automations that fire only when they're supposed to. ## How Race Detection Works The system has three parts working together: ### 1. Create Race Events Add your upcoming races to Activity Craft: - **Name**: "New York City Marathon" or "Local 5K Fun Run" - **Date**: When the race happens - **Type**: Choose from 70+ options (5K, 10K, Half Marathon, Marathon, Triathlon, Criterium, etc.) - **Distance**: The official race distance - **Location** (optional): Add city and coordinates for map display - **Scope**: Private (just for you) or Public (share with community) Create events for your entire race season in minutes. They appear on your calendar, giving you a visual race schedule. ### 2. Use "Race Detection" Condition Create an automation with the "Race Detection" condition: - **Event Scope**: My Events, Public Events, or All Events - **Smart Matching**: Activity Craft checks if an activity matches any event by: - Matching the date - Matching the sport type - Matching the distance (with 5% tolerance for GPS variations) When all three match, the condition triggers. ### 3. Apply Race-Specific Actions Add actions that should happen only on race day: - Add race name to title: "🏁 [[eventName]]" - Assign race-specific gear (race shoes, race bike, etc.) - Mark as private or public based on preference - Add motivational phrases: "Race day effort! 💪" - Toggle commute off (races aren't commutes) - Set AI to generate race-focused descriptions These actions execute **only** when the race detection condition matches. Your training runs remain unaffected. ## 70+ Event Types Supported We support every common race format: **Running:** - 5K, 10K, 15K, Half Marathon, Marathon, Ultra Marathon (50K, 50 miles, 100K, 100 miles) - Trail races, Mountain races, Track meets **Cycling:** - Road Race, Criterium, Time Trial, Gran Fondo, Hill Climb - Gravel races, Cyclocross, MTB XC **Swimming:** - Open Water Swim, Pool Competition **Multisport:** - Sprint Triathlon, Olympic Triathlon, Half Ironman (70.3), Ironman (140.6) - Duathlon, Aquathlon If your race type isn't listed, use the closest match—detection works on distance and date. ## Intelligent Distance Matching GPS isn't perfect. Your watch might record 5.17 km for a 5K race, or 42.5 km for a marathon. Activity Craft uses **5% tolerance** when matching distances: - **5K race** (5.0 km) → Matches 4.75 - 5.25 km - **Half Marathon** (21.1 km) → Matches 20.0 - 22.2 km - **Marathon** (42.2 km) → Matches 40.1 - 44.3 km This handles GPS drift, course variations, and warm-up/cool-down without manual tweaking. ## Perfect for Triathlons Triathlon detection is especially powerful: **What It Detects:** - Swim leg (1.5 km, 1.9 km, 3.8 km depending on race type) - Bike leg (40 km, 90 km, 180 km) - Run leg (10 km, 21.1 km, 42.2 km) - Transition activities (T1 and T2) **How It Works:** Upload your Ironman activities separately: - 3.8 km swim → Detected as Ironman swim - 180 km ride → Detected as Ironman bike - 42.2 km run → Detected as Ironman run - 150m transitions → Also detected Your automation adds "🏁 Ironman 70.3 - [Swim/Bike/Run]" to each segment automatically. ## Real-World Examples ### Marathon Runner **Setup:** - Creates "Chicago Marathon" event (Marathon, 42.2 km, Oct 13, 2025) - Creates automation: - Condition: "Race Detection → My Events" - Actions: - Prepend to name: "🏁 [[eventName]] - " - Assign equipment: "Race Shoes (Nike Vaporfly)" - Mark as private: Yes - Add to description: "Race day! All the training paid off 💪" **Result on Race Day:** - Uploads marathon activity - Activity Craft detects: Date matches, distance 42.5 km matches marathon (42.2 km ±5%) - Automation fires automatically - Final name: "🏁 Chicago Marathon - Morning Marathon" - Race shoes assigned, activity private, motivational note added ### Weekly 5K Racer **Setup:** - Creates public 5K events every Saturday at local park - Creates automation: - Condition: "Race Detection → Public Events" - Actions: - Prepend to name: "🏃 5K Race - " - Remove from name: "parkrun" (avoid duplication) - Toggle commute: Off **Result:** - Every Saturday 5K gets tagged automatically - Community members can subscribe to the same public events - No manual work required ### Triathlete **Setup:** - Creates "Ironman 70.3" event (Half Ironman, Sept 20, 2025) - Creates automation: - Condition: "Race Detection → My Events" - Actions: - Prepend to name: "🏁 [[eventName]] - " - Append to description: "Race segment completed! #Ironman703" **Result on Race Day:** - Uploads swim (1.9 km) → Detected, tagged "🏁 Ironman 70.3 - Swim" - Uploads bike (90 km) → Detected, tagged "🏁 Ironman 70.3 - Bike" - Uploads run (21.1 km) → Detected, tagged "🏁 Ironman 70.3 - Run" - All three get the description note automatically ## Public vs. Private Events **Private Events (default):** - Only you can see them - Only your automations can detect them - Perfect for personal race calendar **Public Events:** - Visible to all Activity Craft users - Anyone can create automations that detect them - Great for popular races (Boston Marathon, local parkruns, cycling centuries) - Community-driven event database You choose the scope when creating events. Public events help the community—when you create "NYC Marathon" as public, other runners racing it can use your event in their automations. ## Calendar Integration Race events appear on your calendar with visual indicators: - See upcoming races on future dates - Past races marked with indicators - Click to view full event details - Create events directly from calendar view Your calendar becomes your race schedule + automation dashboard in one place. ## Getting Started with Race Events **Step 1: Create Your First Event** 1. Go to Calendar → Events tab 2. Click "New Event" 3. Fill in race details (name, date, type, distance) 4. Choose scope (private or public) 5. Save **Step 2: Create Race Detection Automation** 1. Go to Automations 2. Create new automation 3. Add condition: "Race Detection" 4. Select event scope ("My Events" or "All Events") 5. Add actions (rename, gear, privacy, etc.) 6. Save **Step 3: Test in Playground** 1. Go to Playground 2. Enter sample activity data matching your race (date, distance, type) 3. Run test 4. Verify race detected and actions applied correctly **Step 4: Upload Real Race Activity** - After your race, upload to Strava as usual - Activity Craft processes automatically - Check calendar to verify detection and actions ## What's Next: Public Events Right now, you need to create each race event manually. But we're planning something better: **public events**. The idea is simple: popular races will be available as public events that anyone can use. Instead of everyone creating "Boston Marathon 2026" individually, it exists once as a public event. This means: - No manual event creation for popular races - Just create your automation with "All Events" scope - If your activity matches a public event, automation runs - Events are maintained by the community Creating automations becomes simpler: set your automation to use all events, and it will automatically detect any race you participate in—whether you created it or it's a public event. ## Race Day, Handled Race Event Detection changes how you handle race activities: **Before:** - ❌ Manually add race name to every segment - ❌ Remember to assign race gear - ❌ Forget to mark as private/public - ❌ Inconsistent race activity formatting **After:** - ✅ Race name added automatically to all segments - ✅ Race gear assigned without thinking - ✅ Privacy settings apply consistently - ✅ Professional, consistent race activity formatting Your races deserve special treatment. Now they get it—automatically. Create your first race event and set up detection today! 🏁✨