Getting Started with GP3MixMedia TrailMix
Welcome! This quick-start guide will help you get up and running with the GP3MixMedia TrailMix platform in just a few minutes.
What You'll Learn
- Log in and access your campaigns
- Navigate around the platform
- View analytics and understand key metrics
- Find key features like Matrix, Deduplication, and Exports
- Next steps for deeper learning
Step 1: Log In
First-Time Login
| Step | Action |
|---|---|
| 1 | Go to the platform URL (provided by your admin) |
| 2 | Click "Sign in with Google" |
| 3 | Select your work email account |
| 4 | Grant permissions when prompted |
| 5 | You're in! |
Don't have an account yet? Contact your organization's administrator to get access.
Step 2: Navigate to Your Campaign
After logging in, you'll see the Home page with a table of all campaigns you have access to.
Finding Your Campaign
- Browse the campaign table (sortable by name, spend, last ingestion, etc.)
- Search using the search box if you have many campaigns
- Click on a campaign name to open it
Don't see any campaigns? You may not have been granted access yet. Contact your admin with the campaign name you need.
Step 3: Explore the Campaign
Once you're in a campaign, you'll land on the Overview page showing basic campaign info, candidate details, and a spending summary.
Campaign Navigation
The platform organizes campaign work into two main hubs:
Input Hub (data coming in):
- Ingestion - View all incoming data from all sources
- Buy Lines - Individual media placements
- Pending Assignment - Buy lines awaiting analyst review
- Dedupe - Review and resolve duplicate records
- Exceptions - Data quality issues to address
- Manual Input - Upload files and manage data feeds
- Pre-Buy Alerts - Early detection of upcoming ad buys
- FEC Spending - Federal campaign finance disbursements
Output Hub (data going out):
- Matrix - The main spend data table (editable, filterable, exportable)
- Analytics - Charts, metrics, and spending analysis
- Email - Email distribution and delivery logs
Step 4: View Analytics
Navigate to the Output Hub and select the Analytics tab to see campaign spending analysis.
Analytics Overview
| Area | What It Shows |
|---|---|
| Metric Cards (top) | Total Spend, Total GRPs (if available), Total Impressions (if available), Avg Weekly Spend |
| Party Spending Summary | Side-by-side DEM / Total / GOP spend comparison |
| Advertiser Spending Chart | Bar chart of spending ranked by advertiser |
| Spend Over Time | Weekly spending trend with date range presets (4w, 8w, 12w, 26w, all time, future only) |
| Share by Medium | Pie chart showing spend distribution by media type |
Media Types
The platform tracks spending across these categories:
| Category | Includes |
|---|---|
| Broadcast | Network TV, Radio |
| Cable | Cable TV networks |
| CTV | Connected TV, Streaming (Hulu, Roku, etc.) |
| Digital | Online display, Social media, Programmatic |
| Other | Direct mail, Phone/SMS |
Try This Now
- Check total spend in the metric cards at the top
- Review the Share by Medium chart - which media type is your biggest investment?
- Look at Spend Over Time - are you ramping up or down?
Step 5: Understand Your Data in the Matrix
The Matrix is where all your detailed spending data lives.
Accessing the Matrix
- Go to the Output Hub tab
- Select Matrix - you'll see a table with all your media buys
Matrix Columns
Each row represents one media buy for one week:
| Column | Description |
|---|---|
| Market | Geographic area (DMA) |
| Medium | Type of media (Broadcast, Cable, CTV, Digital, Other) |
| Station | Specific outlet running the ad |
| Week | Start date (always a Monday) |
| Spend | Dollar amount |
| GRP | Reach metric (for broadcast) |
| Impressions | How many times the ad was seen/heard |
Filtering Your Data
Use the dropdowns at the top to focus on specific:
- Markets - filter by city/DMA
- Media types - filter by Broadcast, Cable, CTV, etc.
- Date ranges - focus on specific time periods
Pro tip: Filters make large campaigns much easier to navigate!
Step 6: Check for Duplicates
When data comes from multiple sources (FCC, AdImpact, Meta Ads, Google Political Ads, etc.), the same ad buy might appear twice. The platform helps you find and fix these.
Accessing Deduplication
- Go to the Input Hub tab
- Select the Dedupe section
- You'll see groups of potential duplicates with confidence scores
- Click on a group to see the details and field-level differences
Actions You Can Take
| Action | When to Use |
|---|---|
| Combine | Records are duplicates - merge them |
| Skip | Records are separate - not duplicates |
| Flag for Review | You're not sure - mark for later |
Don't worry! You can undo merges using the undo token provided after each merge.
Step 7: Learn Your Role
Your account has one of three roles:
| Role | Permissions |
|---|---|
| Viewer | View dashboards, export data. Cannot edit or merge. |
| Analyst | Everything Viewers can do, plus: edit data, resolve duplicates, upload files. |
| Admin | Everything Analysts can do, plus: create campaigns, configure data sources, send alerts, manage users. |
Check Your Role
Click your profile icon (top right corner) - your role is shown under your email address.
Step 8: Essential Features to Know
Upload a File
Have a spreadsheet with media spending data?
- Go to the Input Hub → Manual Input section
- Upload your file (Rep Sheet, AdImpact Export, FCC order PDF, etc.)
- The system will parse and extract the data into your campaign
Export Data
Need to share data with your team?
| Step | Action |
|---|---|
| 1 | Go to the Matrix or Analytics tab |
| 2 | Click the "Export" button |
| 3 | Choose format (see below) |
| 4 | File downloads automatically |
Export Formats:
| Format | Best For |
|---|---|
| CSV | Data analysis in Excel/Sheets |
| XLSX | Formatted Excel files |
| Static reports with charts |
Common Tasks Quick Reference
| Task | Where to Go | How |
|---|---|---|
| View overall spending | Output Hub → Analytics | Overview tab shows metric cards |
| See detailed data | Output Hub → Matrix | Full spending table with filters |
| Find duplicates | Input Hub → Dedupe | Review and resolve duplicate groups |
| Upload spending data | Input Hub → Manual Input | Upload files for parsing |
| Export to Excel | Output Hub → Matrix | Export button → Choose XLSX |
| Check data quality issues | Input Hub → Exceptions | Review and resolve flagged records |
| View ingestion status | Input Hub → Ingestion | See all incoming data from all sources |
| Manage creatives | Campaign Overview → Creatives | View video/audio ad assets |
Platform Navigation Overview
Global Navigation (top sidebar)
- Home: Campaign list with spend summaries and ingestion status
- Campaigns: Browse and manage all campaigns
- Ingestion: System-wide feed monitoring and control
- Alert Center: View and manage alerts across campaigns
- Creative Library: Browse ad creatives across campaigns
Campaign Navigation (within a campaign)
- Overview: Campaign info, candidates, keywords, contacts, spending summary
- Settings: Campaign configuration (Configs tab, Changelog tab)
- Input Hub: All data coming into the campaign (9 tabs — see above)
- Output Hub: All data going out (Matrix, Analytics, Email)
Admin Navigation (Admin/Developer roles)
- Users: Manage user accounts and permissions
- Archives: View and restore deleted data
- System: System health and configuration (developer only)
Getting Help
Documentation
- User Guide - Complete feature documentation
- Glossary - Terms like GRP, DMA, impressions
- FAQ - Common questions answered
- Troubleshooting - Fix common issues
Support
- Your Admin: Can grant access and help with configuration
- Your Team: Other users can share tips and best practices
- This Documentation: Start with the FAQ for quick answers
Key Terms to Know
Campaign: Container for all media tracking for a specific race
DMA: Designated Market Area - geographic region (e.g., "New York, NY")
GRP: Gross Rating Points - measure of ad reach for broadcast media
Deduplication: Process of finding and merging duplicate records
Matrix: The main data table showing all media spending detail
Ingestion: Automated data collection from external sources (FCC, AdImpact, OpenFEC, Meta Ads Library, Google Political Ads, etc.)
Exception: Data quality issue flagged by the system
Input Hub: Where all incoming data is managed (ingestion, buy lines, dedupe, exceptions)
Output Hub: Where processed data is viewed and exported (Matrix, Analytics, Email)
For more definitions, see the Glossary.
Next Steps
Once you're comfortable with the basics:
- Read the full User Guide - Deep dive into each feature
- Review deduplication regularly - Keep data clean
- Set up automated reports - Keep your team informed
- Explore advanced filters - Find exactly what you need
Quick Tips
- Filters are your friend: Use them to make large campaigns manageable
- Export often: Keep local copies of important data
- Add notes: Document unusual entries for your team
- Check duplicates weekly: Don't let them pile up
- Ask questions: Your admin and team are there to help
Still Have Questions?
Check the FAQ for answers to common questions like:
- How often does data update?
- Can I undo a merge?
- What if I upload the wrong file?
- How do I get access to another campaign?
- And many more...
Welcome to GP3MixMedia TrailMix! You're now ready to start tracking and analyzing your campaign's media spending.
Developer Setup
If you're a developer setting up the platform for the first time, see the Developer Quick Reference for:
- Local development setup (prerequisites, install, database)
- All environment variables (required secrets, defaults, optional)
- External dependency configuration (Fly.io, Redis, S3, Gmail API)
- Meta Ads Library feed setup instructions
- Cron job schedules and worker configuration
- Deployment commands and troubleshooting
Quick Local Start
# 1. Clone and install
git clone <repo-url> && cd gp3mixmedia/gp3mixmedia-web
npm install
# 2. Set up environment
cp .env.example .env
# Edit .env: set DATABASE_URL, NEXTAUTH_SECRET, AUTH_GOOGLE_CLIENT_ID/SECRET
# 3. Set up database
npx prisma migrate deploy
npx prisma generate
# 4. Start development
npm run dev # Next.js dev server on :3000
npm run ingest # Background workers (separate terminal)
Key Environment Variables
At minimum, you need:
| Variable | Purpose |
|---|---|
DATABASE_URL | MySQL connection (mysql://user:pass@host:port/db) |
NEXTAUTH_SECRET | Session encryption (openssl rand -base64 32) |
AUTH_GOOGLE_CLIENT_ID | Google OAuth for login |
AUTH_GOOGLE_CLIENT_SECRET | Google OAuth secret |
See the full list of 300+ environment variables in the Developer Quick Reference.
Last Updated: March 2026
Was this helpful? If you have feedback or questions, please contact your administrator.