Verifying admin access...
Dashboard
Overview of your organization's key metrics and recent activity.
Loading stats...
Coaches
Add and manage coaches for your organization.
Loading coaches...
Admins
Manage who has admin access to this portal.
Loading admins...
All Users
Browse and search all registered users in your organization.
Loading users...
Player Assignments
Coordinate coach assignments with clear status signals, focused filters, and bulk actions.
Loading players...
Season Schedule
Automatic generation runs in the background. Use Run Now when you need immediate updates.
Run Season Practice Generation
Background automation keeps future events filled. Use Run Now to apply changes immediately.
Upcoming Schedule Workspace
Review all upcoming practice, tournament, tryout, and training events.
Loading practices...
Registrations
Manage current and past registrations. Filter by location, season, age group, gender, and status. Process Stripe refunds directly.
Loading registrations...
Announcements
Publish public updates and questionnaires for your organization.
Create or Edit
Loading announcements...
Loading store…
Photos
Manage your organization's public photo gallery — create categories and upload photos.
Categories
Photos in —
No photos in this category yet. Upload some above.
Surveys
Create surveys, target recipients, send email notifications, and review responses.
Create or Edit
Recipients
Survey Analytics
Loading surveys...
Insights & Reporting
Explore your data with presets or build custom reports.
⚙️ Advanced Report Builder
▼Loading reporting workspace...
Season Configuration
Manage locations, seasons, schedules, prices, and program setup.
Restore any item without leaving this page. Restored items come back disabled so you can review before re-enabling.
📊 Season Timeline
📅 Season Dates
When does this season run?
🔗 Registration Window — optional
Controls when this season appears in the public registration form. Leave empty to use season dates.
👁️ Visibility
Age groups define age ranges for your programs. They appear in registration forms and schedule filters.
CoachMate uses a fixed platform-wide set: Male, Female, and Male & Female. These apply to schedules, registrations, tryouts, tournaments, and training. They cannot be added or removed per organization.
Schedule Configuration Workspace
Create, filter, and maintain schedules with warnings and bulk tools.
Program Scope
Time & Date Window
Select multiple days to create one schedule per day with the same time slot.
Advanced Filters
Create tournaments with location, schedule, price, teams, and coach assignments. Set age group and gender per event.
Tryouts appear on the register page alongside seasons and tournaments.
Create standalone sessions with date, time, pricing, and capacity. Parents can purchase multiple sessions at checkout; you can track purchases and attendance.
Create internal scrimmage offerings with location, age group, dates, and pricing.
Set a member price for returning participants. Leave blank to use the same price for everyone.
One price row is created per selected age group.
Communications
Send branded emails to your audience. Choose recipients, pick a template or compose your own, preview, and send.
{{parent_name}} to personalize per recipient. Defaults to "Dear [name],"{{parent_name}} resolves per-recipient automatically. Use the image button to upload directly.Confirm Send
Saved Templates
Branding & Settings
Manage your organization's identity, communications, registration, policies, and billing.
Organization Identity
Your display name and tagline appear in headers, emails, and across all portals.
Shown below your name in portal headers.
Preview: https://your-name.coachmatesports.com
Changing your subdomain may affect links you already shared. Existing query-param links will continue to work.
Visual Assets
Your logo, desktop and mobile backgrounds, and loading images used across all portals.
PNG with transparent background, 500x500px or larger recommended.
Formats: PNG, JPG, or WEBP. Recommended 800x800px+ (minimum 400x400px). Max 2MB.
Displayed behind all tenant pages. Use Portal Behavior below to choose subtle/faint or full-page display mode.
Formats: PNG, JPG, or WEBP. Recommended 1920x1080px+ for best clarity. Max 5MB.
Shown on phones and narrow windows (about 900px wide and below). If omitted, the desktop background above is used everywhere.
Formats: PNG, JPG, or WEBP. Portrait or tall crops work well (e.g. 1080×1920). Max 5MB.
Custom spinning animation shown during loading states. Square PNG with transparent background, 200x200px+ recommended.
Formats: PNG, JPG, or WEBP. Best as a square image (200x200px+). Max 2MB.
Portal Behavior
Control how tenant pages look and behave for your members.
Where users go when clicking your logo in the header. Leave blank for the default My Account page.
Color Scheme
Pick a preset or customize individual colors. Changes preview in real time.
Custom Colors
Advanced Colors (optional overrides)
Leave blank to auto-derive from your core palette.
Extracts dominant colors from your uploaded logo to build a matching palette.
Live Preview
Preview
See how your colors look together
Email Sending
Configure SendGrid so your organization can send registration confirmations, reminders, and notifications.
From SendGrid Dashboard → Settings → API Keys. Encrypted at rest.
Must be verified in SendGrid.
Checkout Options
Control what parents see during checkout — jerseys, payment plans, and donations.
Check the sizes you offer. Leave quantity blank for unlimited stock.
Optional overrides. If a location is disabled, parents can’t add jerseys for registrations at that location.
Recurring payment-plan invoices will bill on this day each month.
This appears directly in checkout when parents select offline payment.
Comma-separated USD amounts.
Prorated Pricing
Automatically adjust registration fees based on remaining practices in the season. Parents registering mid-season pay only for the practices that haven't happened yet.
Proration is calculated from your generated practice schedule. Only non-canceled practice events are counted. Practices scheduled on the day of registration are counted as remaining. Jerseys, donations, and add-ons are never prorated. Coupon codes are applied after proration.
Controls what happens when a season has no generated practice schedule. "Auto" charges the full price as a safe fallback. "Strict" prevents registration until a schedule is created.
Program Visibility
Hide entire program types from the public registration page. Useful when your academy doesn't run a specific program type and you don't want it cluttering parent-facing dropdowns.
Multi-Child Discount
Automatically discount the 2nd+ participant's registration fee (jersey and donations excluded).
Member Pricing Eligibility
Members get the lower "member price" on all programs that have one. Eligibility is automatic: a registrant qualifies if they have a paid practice registration in a season that is currently active.
Terms Mode
Choose whether to use CoachMate's standard templates or write your own. Placeholders like ORGANIZATION and EMAIL are auto-replaced.
Replaces the EMAIL placeholder in default templates. Falls back to your org contact email if blank.
Policy Documents
Customize the text for each policy shown during registration. Leave blank to use defaults.
CoachMate is software-only and not an event operator. This clause is always appended to participation waivers and cannot be removed.
Waiver Packet Composition
Choose which sections parents must sign during registration. Platform-required sections are always included.
Auto-Pay only appears when payment plans are relevant at checkout.
Advanced: Raw Waiver Packet JSON
Optional override. Toggle buttons above are the primary control.
Organization Home Page
Create a public home page for your organization. Use it for announcements, welcome messages, schedules, and images.
Tip: This page is public. Include welcome text, highlights, and images.
Email Automations
Control which automated emails your organization sends. All require a configured SendGrid sender.
Stripe Connect
Connect your Stripe account to accept payments. CoachMate takes a small platform fee per transaction.
Connect Stripe to start accepting payments. Setup takes about 5 minutes.
Coupon Codes
Create and manage promotion codes. Restrict to specific products, usage limits, or expiration dates.
Leave unchecked to apply to all products.
Stripe Product Sync
Generate Stripe products and prices from your active practice tiers and jersey settings.
Fee Settings
Control how processing fees are handled at checkout. Fee rates are managed by the platform.
Contacts & Clients
Manage contacts, track leads, and follow up on registrations.
Loading contacts...
Contact Details
Add Contact
📥 Import Preview
Review the data below before importing.
🔗 Duplicate Contacts
Contacts sharing the same email address. Select the primary contact for each group to merge.
Edit Season
📋 Basic Info
📅 Season Dates
🔗 Registration Window — optional
Controls when this season appears in the public registration form.
👁️ Visibility
Add custom questions that registrants must answer when signing up for this season.
No questions yet.
Usage & Limits
View your current plan usage, limits, and subscription details.
Loading usage statistics...
Revenue Analytics
Track revenue, fees, expenses, and profit across locations, seasons, and event types.
Expense Categories
Monthly Revenue vs Expenses
Loading revenue data...
Expense Tracker
Track operational costs by category, location, and season. Expenses apply to current filters.