Blog
8 min read

Migrate from FirstPromoter to TrackRev: A Step-by-Step Checklist

FirstPromoter's $89/mo Starter caps at 200 affiliates and jumps to $249/mo for 2,000. Programs squeezed between those tiers typically cut tooling cost 30–40% and improve attribution accuracy on TrackRev's server-side stack.

TrackRev

Migrate from FirstPromoter to TrackRev: A Step-by-Step Checklist

FirstPromoter's $89/mo Starter caps at 200 affiliates and jumps to $249/mo for 2,000. Programs squeezed between those tiers typically cut tooling cost 30–40% and improve attribution accuracy on TrackRev's server-side stack.

On this page
  1. 01Why teams migrate from FirstPromoter to TrackRev
  2. 02What you'll preserve from FirstPromoter
  3. 03What you can't directly migrate
  4. 04Pre-migration checklist
  5. 05Step 1: Export your data from FirstPromoter
  6. 06Step 2: Set up your TrackRev workspace
  7. 07Step 3: Import affiliates and links
  8. 08Step 4: Configure attribution and commissions
  9. 09Step 5: Switch tracking script and notify affiliates
  10. 10Step 6: Run both in parallel for 14 days
  11. 11Step 7: Decommission FirstPromoter
  12. 12FirstPromoter vs TrackRev: feature and pricing comparison
  13. 13Common gotchas specific to FirstPromoter migrations
  14. 14Migration timeline
  15. 15Why TrackRev for Stripe-native programs

FirstPromoter's tier structure has a hard step that catches programs at a predictable moment: the Starter plan at $89/mo caps at 200 affiliates, and the next tier is $249/mo for 2,000 affiliates. Programs sitting at 250–500 affiliates pay for 1,500+ unused capacity. The 1.0-to-2.0 pricing transition added a second pain point — teams grandfathered on legacy rates feel the gap acutely. For programs in either bucket, a Stripe-native rebuild on TrackRev typically cuts costs 30–40% and improves attribution accuracy by adding server-side fallback to a stack that has been mostly client-side.

This guide is the operational checklist: every export menu path, the CSV reshaping required for TrackRev's import format, the JS namespace swap, the parallel-run protocol, and the affiliate notification email. The migration takes 3–5 working days for a typical 200–500 affiliate program.

Key takeaway

The largest tracking gap when migrating off FirstPromoter is the client-side-only attribution model. Roughly 10–15% of conversions silently disappear under Safari ITP and ad-blockers. Server-side fallback recovers them, which is why parallel runs typically show TrackRev with slightly higher conversion counts — not a bug, more accurate attribution.

Why teams migrate from FirstPromoter to TrackRev

Four specific reasons drive most FirstPromoter migrations. Identify which apply before starting — they determine which parts of this checklist matter most for your case.

  • Tier sizing. Starter at $89/mo caps at 200 affiliates; the next tier at $249/mo is 2,000 affiliates. Programs in the 200–500 range pay for 1,500+ unused slots. TrackRev's pricing doesn't ladder on affiliate count.
  • Server-side attribution. FirstPromoter is largely client-side with a JS snippet. Safari ITP and ad-blockers eat 10–15% of conversions. TrackRev's server-side fallback recovers that gap by default — see server-side vs client-side click tracking.
  • Channel attribution beyond affiliates. FirstPromoter focuses on affiliates and refer-a-friend; non-affiliate channels (newsletters, paid, organic) need a separate tool. TrackRev unifies them on the same Stripe pipeline.
  • Legacy pricing transitions. Teams who lived through the FirstPromoter 1.0-to-2.0 pricing shift often re-evaluate the relationship — a clean migration is cheaper than negotiating grandfathered terms forever.

What you'll preserve from FirstPromoter

Substantial. FirstPromoter's data model maps to TrackRev's with few surprises.

  • Promoter (affiliate) accounts — email, name, custom slug, commission tier, payout details.
  • Referral link slugs — re-issue identical slugs so existing creator content still resolves.
  • Conversion records — past conversions imported as historical entries for affiliate-side trust.
  • Payout history — lifetime-paid totals carried over so dashboard balances stay continuous.
  • Commission structures — flat, tiered, recurring, lifetime-window commissions all translate one-to-one.

What you can't directly migrate

Be explicit with affiliates about the few things that don't carry across. FirstPromoter has some platform-specific concepts that need translation rather than direct import.

  • FirstPromoter "Promotions". Their Promotion entity bundles a campaign + commission rule + landing page. TrackRev splits these into Campaign + Commission Rule. Map each Promotion to one Campaign in the import.
  • Double-commission on referred-referrals (MLM-style). FirstPromoter supports two-tier commission natively; TrackRev supports it too but with a different configuration model. Document the tree before exporting, then rebuild it manually in TrackRev.
  • Promo-code-only affiliates. Affiliates promoted only via coupon code (not link click) need their codes mapped to TrackRev's promo-code attribution flow. Pull the code-to-affiliate mapping from FirstPromoter's coupons report before cancellation.
  • Multi-language affiliate dashboard translations. FirstPromoter offers ~10 affiliate-facing UI languages. TrackRev's affiliate dashboard is English-default. If multi-language is a hard requirement, evaluate that gap before committing.

Don't disable FirstPromoter before parallel verification ends

Run both platforms for 14 days minimum. The most common migration disaster is a tracking gap during the cutover week — affiliates send traffic and conversions don't attribute. FirstPromoter's pixel and TrackRev's snippet don't collide; you can run both without conflict until verification confirms TrackRev matches Stripe's own conversion ledger.

Pre-migration checklist

Bookkeeping and risk reduction. Half is data export, half is communication prep.

  • Export the promoter list (Account → Settings → Export Data → Promoters CSV).
  • Export conversions (Account → Settings → Export Data → Conversions CSV).
  • Export the payout ledger (Account → Settings → Export Data → Payouts CSV).
  • Screenshot the Promotions configuration page — it doesn't fully serialise into the export.
  • Map promo-code-only affiliates if you have any. Pull their code from the Coupons section.
  • Identify your tracking subdomain (e.g. go.yourdomain.com) and current DNS provider.
  • Decide your attribution window and document it. FirstPromoter defaults vary by plan; TrackRev defaults to 90 days.
  • Pick the cutover date. Right after a payout run is ideal — affiliates are checking dashboards least.
  • Draft the affiliate notification email (template below) and queue it for cutover day.

Step 1: Export your data from FirstPromoter

FirstPromoter's exports live under Account → Settings → Export Data. There is no per-section CSV button on the listing pages — everything comes from the central export tool.

  • Promoters CSV: includes email, name, custom slug, commission tier, signup date, payout method.
  • Conversions CSV: full conversion history with Stripe customer ID, promoter ID, commission amount, status.
  • Payouts CSV: lifetime-paid totals per promoter.
  • Promotions config: not fully in the CSV — screenshot the Promotions page and note each Promotion's commission rule.
  • If your program has more than ~5,000 conversions, use FirstPromoter's API export instead of the UI export — the UI tool times out on large datasets.

Step 2: Set up your TrackRev workspace

Two integrations get attribution working end to end.

  • Create a TrackRev workspace and connect Stripe with a restricted API key scoped to read charges, customers, and subscriptions.
  • Set the attribution window in workspace settings. Use FirstPromoter's prior window for parallel-running so the comparison is apples-to-apples.
  • Add your tracking subdomain. TrackRev provides the CNAME target — point it at a second subdomain (e.g. go2.yourdomain.com) during parallel-running so FirstPromoter's redirects stay alive.
  • Recreate each FirstPromoter Promotion as a TrackRev Campaign + Commission Rule pair. Use the screenshots from Step 1.

Reshape FirstPromoter's Promoters CSV into TrackRev's import format. The schema is similar but with different column names.

TrackRev affiliate import CSV (mapped from FirstPromoter)
email,first_name,last_name,custom_slug,commission_tier,recurring,payout_method,payout_email
sam@example.com,Sam,Patel,sam-p,25,true,paypal,sam@example.com
casey@example.com,Casey,Wu,casey,30,true,wise,casey@example.com

Re-issue every promoter's existing slug. FirstPromoter's promoter.cust_id column becomes TrackRev's custom_slug. Anything that already works in a YouTube description or blog post must still resolve after cutover — slug continuity is non-negotiable for low-friction migrations.

Step 4: Configure attribution and commissions

Rebuild the commission structure exactly. Affiliates compare numbers between dashboards within the first 24 hours; mismatches generate support load.

  • Recreate each commission tier under Workspace → Commissions.
  • Set the same minimum payout threshold (FirstPromoter typically defaults to $25; mirror your current setting).
  • Configure the same cookie window for new clicks.
  • For two-tier (sub-affiliate) commissions, configure TrackRev's tier-2 rule with the same percentage FirstPromoter used (e.g. 10% on referred-referral revenue).
  • For promo-code-only affiliates, map each code to its affiliate in TrackRev's promo-code attribution settings.

Step 5: Switch tracking script and notify affiliates

Swap FirstPromoter's $FPROM / fpr() snippet for TrackRev's. The namespaces don't collide, so both can run during parallel verification. Then send the announcement email immediately — affiliates check the new dashboard on day one to verify their balance.

Affiliate notification email
Subject: We're upgrading the affiliate platform — your account is ready Hi {{first_name}}, We're moving the affiliate program to a new platform with fasterreal-time attribution and a cleaner dashboard. What stays the same:- Your referral link: {{old_short_link}}- Your commission rate: {{commission_rate}}%- Your lifetime balance: ${{lifetime_balance}} What's new:- Dashboard login: {{trackrev_login_url}}- We've already created your account — use {{affiliate_email}}  to set a password.- Old FirstPromoter dashboard stays accessible read-only for 30  days at {{old_dashboard_url}}. You don't need to update any links you've shared. ExistingYouTube descriptions, blog posts, and emails continue to work. Questions? Reply to this email — we'll respond same day. Thanks for being part of the program.

Step 6: Run both in parallel for 14 days

FirstPromoter migrations especially benefit from a full 14-day parallel run because client-side-only tracking has more edge cases than server-augmented tracking. The delta you observe between platforms is itself useful data — it tells you exactly how much ITP and ad-blocker traffic FirstPromoter was missing.

  • Daily: compare conversion counts. Expect TrackRev to run 5–15% higher because server-side fallback catches conversions FirstPromoter missed.
  • Day 7: reconcile 20 random conversions against Stripe charges by hand. Both should match Stripe; if either drifts, fix before continuing.
  • Day 14: review the parallel-run report. If TrackRev's count is in the expected 5–15% above range and affiliate balances match within tolerance, proceed to decommission.

Step 7: Decommission FirstPromoter

Confirm three things before cancelling the FirstPromoter subscription. Historical raw data isn't re-exportable after account closure.

  • Archive the final Promoters, Conversions, and Payouts CSVs (12-month dispute window cover).
  • Remove FirstPromoter's webhook from Stripe (Developers → Webhooks). Leaving it logs harmless errors but adds noise.
  • Strip FirstPromoter's fpr JavaScript snippet from the site. Keep TrackRev's.
  • Hold the FirstPromoter account in read-only mode for 30 days before full cancellation — affiliates use the buffer to cross-check balances.

FirstPromoter vs TrackRev: feature and pricing comparison

Honest comparison. FirstPromoter has a richer multi-language affiliate dashboard and longer history in the e-commerce affiliate niche; TrackRev's strengths are server-side tracking, flat pricing, and channel unification.

CapabilityFirstPromoterTrackRev
Stripe-native attributionYesYes
Recurring commissionsYesYes
Two-tier / MLM commissionsYesYes
Multi-language affiliate UI~10 languagesEnglish (more in roadmap)
Promo-code attributionYesYes
Server-side tracking fallbackLimitedYes (default)
Channel attribution beyond affiliatesNoYes
Custom branded domainYes (paid tiers)Yes (all paid plans)
Public API + webhooksYesYes
Pricing — Starter$89/mo, 200 affiliatesFlat per-event tier
Pricing — next tier$249/mo, 2,000 affiliatesNo affiliate-count scaling
Cost at 300 affiliates$249/mo (over Starter cap)Flat tier covers it

Comparison based on public FirstPromoter pricing pages and TrackRev workspace defaults, mid-2026. Confirm both vendors' current pricing before final commit.

Migrate the week after payouts

Affiliates check dashboards least in the 5–7 days after a payout run. That window is your verification quiet zone — affiliates won't be flagging small discrepancies while you're still tuning the parallel run.

Common gotchas specific to FirstPromoter migrations

Four issues account for most support load. Address them in the import phase, not after cutover.

Promotion-to-Campaign mapping

FirstPromoter's Promotion entity bundles three things TrackRev models separately: a campaign, a commission rule, and a landing page. The naive 1:1 import puts everything into one Campaign and loses the commission rule context. Map each Promotion to a Campaign + a named Commission Rule; this also makes future commission changes cleaner.

Two-tier commission tree continuity

If you use FirstPromoter's referred-referral commissions, the affiliate tree (who referred whom) isn't in the standard export. Pull the relationships from the API endpoint /affiliates/{id}/referrals before cancellation; otherwise the tree resets at TrackRev cutover and tier-2 commissions stop calculating retroactively.

Promo-code-only affiliates

Affiliates who only promote via coupon code (no clicked link) are a special case. Their conversions in FirstPromoter are attributed via Stripe's coupon field. In TrackRev, map each code to its affiliate under Promo Code Attribution; otherwise their conversions land unattributed after cutover and they notice within hours.

Dashboard language expectations

If your program has a meaningful non-English affiliate base, FirstPromoter's multi-language affiliate dashboard is a real feature TrackRev doesn't yet match. Communicate this explicitly in the affiliate notification email — affiliates who relied on a localised UI need to know what's changing.

Migration timeline

For programs at the Starter cap (around 200 affiliates), 3–5 working days end-to-end. For 200–500 affiliates squeezed at the next-tier mark, the same 3–5 days but with more time spent on Promotion-to-Campaign mapping. Above 1,000 affiliates, 7–10 working days with a phased CSV import.

Why TrackRev for Stripe-native programs

TrackRev runs server-side attribution by default, which closes the 10–15% gap FirstPromoter's client-only stack leaves on the table. The same Stripe pipeline that handles affiliates also attributes every other marketing channel, so the affiliate platform isn't a separate spreadsheet exercise from the rest of your channel reporting. See Stripe affiliate tracking for the affiliate side, payouts for the disbursement side, analytics for reporting, and our FirstPromoter alternative writeup for the feature-by-feature head-to-head. Free tier at /pricing, setup walkthrough at /how-it-works, start at /signup.

Found this useful? Share it.

PostLinkedIn

Frequently asked questions

How long does a FirstPromoter to TrackRev migration take?
For a 200–500 affiliate program (the most common FirstPromoter migration size), 3–5 working days end-to-end, with 14 days of parallel-running on top before final decommission. Larger programs (1,000+ affiliates) typically run 7–10 working days with a phased CSV import. The bottleneck above 1,000 affiliates is usually communication, not technical setup.
Will affiliates need to update their referral links?
No, if you re-issue identical slugs on TrackRev under the same custom tracking subdomain. Continuity is the entire reason to preserve slugs — every YouTube description, blog post, and email footer that worked under FirstPromoter keeps working after cutover. The migration should be operationally invisible to affiliates whose links still resolve.
Why does TrackRev show more conversions than FirstPromoter during the parallel run?
TrackRev runs server-side attribution as a fallback to client-side tracking. FirstPromoter is largely client-side. Safari Intelligent Tracking Prevention and ad-blockers eat 10–15% of client-side conversions silently. The parallel run typically shows TrackRev with 5–15% higher conversion counts — that's recovered attribution, not over-counting. Verify against Stripe's own charge ledger if you want third-party confirmation.
What happens to my two-tier (referred-referral) commission tree?
Export the affiliate-to-affiliate relationship tree from FirstPromoter's API before cancelling — it's not in the standard CSV export. Use the <code>/affiliates/{id}/referrals</code> endpoint to pull the tree, then rebuild the structure in TrackRev's two-tier commission settings. Without this step, tier-2 commissions calculate from scratch and historical tree relationships are lost.
How does TrackRev handle promo-code-only affiliates?
Map each promo code to its affiliate under TrackRev's Promo Code Attribution settings. Stripe surfaces the coupon code on each charge, and TrackRev's commission engine attributes the conversion to the mapped affiliate without requiring a clicked link. The mapping is one-time at migration; new codes added after cutover are configured in the same dashboard.
Does TrackRev support the multi-language affiliate dashboard FirstPromoter offers?
Not currently to the same depth — TrackRev's affiliate dashboard is English-default with additional languages on the roadmap. If your program has a meaningful non-English affiliate base, evaluate this gap before committing. The administrative side (your own team's TrackRev workspace) is the same regardless; the gap is specifically on the affiliate-facing portal.
Muzahid Maruf — Founder of TrackRev.io

Written by

Muzahid Maruf, Founder, TrackRev.io & Contant.io

Muzahid Maruf is the founder of TrackRev.io and Contant.io. He writes about marketing attribution, link tracking, and revenue analytics for SaaS teams.

Keep reading

Related articles from the TrackRev blog.

Stop guessing where your revenue comes from.

Set up TrackRev in 5 minutes. Free tier covers 1,000 events / month.