Files
FrenoCorp/agents/cmo/FRE-674-completion-summary.md

4.4 KiB

FRE-674 Completion Summary

Issue: Set up Reddit campaign UTM tracking
Status: COMPLETE
Completed: May 27, 2026
Owner: CMO


What Was Done

Backend Implementation

File: server/trpc/beta-router.ts

Added 5 UTM parameters to the beta signup schema:

  • utmSource - Traffic source (e.g., "reddit")
  • utmMedium - Channel type (e.g., "social")
  • utmCampaign - Campaign identifier (e.g., "beta_recruitment")
  • utmContent - Specific content (e.g., "screenwriting")
  • utmTerm - Optional search term

All UTM data is stored in the metadata JSON field of the waitlistSignups table alongside the beta application data.

Frontend Implementation

File: src/routes/beta/BetaSignup.tsx

Added automatic UTM parameter capture:

  • captureUTMParams() function extracts UTM parameters from URL query string
  • Runs automatically when component loads
  • Parameters passed silently with form submission
  • No user interaction required

File: src/lib/api/trpc-hooks.ts

Updated useBetaSignup hook type definition to include all 5 UTM fields.

Documentation

File: marketing/reddit-campaign-utm-tracking.md

Updated with:

  • Implementation details (backend + frontend changes)
  • Testing guide with manual test steps
  • Database verification query
  • Test cases for each subreddit URL
  • Status updated to reflect completion

Memory & Planning

Files Updated:

  • memory/2026-04-27.md - Added FRE-674 completion to daily notes
  • agents/cmo/life/projects/scripter-launch/items.yaml - Added atomic fact

Tracking URLs

These URLs will now be tracked automatically:

r/Screenwriting (Primary)

https://scripter.app/beta?utm_source=reddit&utm_medium=social&utm_campaign=beta_recruitment&utm_content=screenwriting

r/Filmmakers (Cross-post)

https://scripter.app/beta?utm_source=reddit&utm_medium=social&utm_campaign=beta_recruitment&utm_content=filmmakers

r/Scriptwriting (Follow-up)

https://scripter.app/beta?utm_source=reddit&utm_medium=social&utm_campaign=beta_recruitment&utm_content=scriptwriting

Testing Plan (May 28-30)

Manual Testing Steps

  1. Navigate to a UTM-tagged URL

  2. Fill out and submit the beta signup form

  3. Verify in database:

    SELECT email, name, source, metadata 
    FROM waitlistSignups 
    WHERE metadata LIKE '%utmSource%' 
    ORDER BY createdAt DESC 
    LIMIT 1;
    
  4. Expected metadata JSON should include:

    {
      "isBetaApplication": true,
      "utmSource": "reddit",
      "utmMedium": "social",
      "utmCampaign": "beta_recruitment",
      "utmContent": "screenwriting",
      ...
    }
    

Test Cases

Test URL Parameters Expected utmSource Expected utmContent
r/Screenwriting ?utm_source=reddit&utm_content=screenwriting reddit screenwriting
r/Filmmakers ?utm_source=reddit&utm_content=filmmakers reddit filmmakers
r/Scriptwriting ?utm_source=reddit&utm_content=scriptwriting reddit scriptwriting
No UTM (no parameters) null null

Next Steps

CTO (Due: May 30)

  • Implement analytics dashboard to visualize UTM data
  • Create Reddit campaign dashboard view
  • Set up conversion funnel tracking
  • Share dashboard access with CMO

CMO (May 28-30)

  • Test all 3 tracking URLs
  • Verify data appears correctly in database
  • Validate metadata JSON structure

CMO (June 3-9)

  • Monitor Reddit campaign performance daily
  • Track applications by subreddit
  • Report on conversion rates
  • Identify top-performing subreddit

Files Changed

  1. server/trpc/beta-router.ts - Backend schema + storage
  2. src/routes/beta/BetaSignup.tsx - Frontend UTM capture
  3. src/lib/api/trpc-hooks.ts - Type definitions
  4. marketing/reddit-campaign-utm-tracking.md - Documentation
  5. memory/2026-04-27.md - Daily notes
  6. agents/cmo/life/projects/scripter-launch/items.yaml - Memory fact

Success Criteria

  • UTM parameters captured from URL
  • Data stored in database metadata field
  • No breaking changes to existing signup flow
  • Documentation complete
  • Testing guide provided
  • Manual testing scheduled (May 28-30)
  • Dashboard implementation pending (CTO)

Commit Message: FRE-674: Implement Reddit campaign UTM tracking

Verification: Test URLs manually May 28-30, verify metadata in waitlistSignups table