SKILL DETAIL
affiliate-recruitment-outreach
mbfinotti/partnerships-skills/affiliate-recruitment-outreach
Draft the outreach copy and sequence plan used to recruit new affiliates into a commission-based affiliate program - prospect qualification and tiering, pitch angle, first-touch recruitment email, follow-up sequence with a breakup touch, channel mix, and outreach tracking. Covers B2B SaaS and B2C ecommerce/DTC programs. Use whenever the user mentions recruiting affiliates, affiliate sourcing, or pitching content and review sites, coupon and cashback partners, newsletter operators, communities, podcasters, or agencies to join a program, even if they never say recruitment. Do NOT use for pitching one individually vetted creator - use mbfinotti/partnerships-skills@influencer-outreach instead.
Installation
npx skills add https://github.com/mbfinotti/partnerships-skills --skill affiliate-recruitment-outreach
スキルファイル
SKILL.md
最終同期 · 2026/10/23
evals/evals.json›
{
"skill_name": "affiliate-recruitment-outreach",
"evals": [
{
"id": 1,
"prompt": "We're launching the affiliate program for Tessellate, our B2B analytics SaaS, and I've finally got the prospect sheet done: 210 names. 88 are US bloggers and comparison sites, 54 are UK - mostly one-person newsletter and review operations, plus maybe eight proper Ltd media companies - 41 are German B2B tech media sites, and 27 are Canadian independent consultants. Commission is locked at 30% recurring for 12 months, 90-day cookie, net-30. Tier this list and tell me who we can actually cold email and what goes out to each group.",
"expected_output": "A jurisdiction-segmented plan that splits the list by recipient location before any drafting, treats German prospects as opt-in-required rather than standard EU, forces a per-prospect legal-form check on the UK segment instead of a country-level rule, routes no-consent prospects to passive recruitment, and tiers the survivors 1/2/3.",
"files": [],
"expectations": [
"Segments the list by recipient jurisdiction before drafting any message, and states the regime attaches to where the prospect is, not where the program is",
"States that German prospects require prior opt-in and must be handled like the Canadian prospects, not under a general EU legitimate-interest basis",
"Names UWG (or German unfair-competition law) as the regime behind that opt-in requirement",
"Does not treat all 54 UK prospects as cold-emailable under a single country-level rule",
"Instructs checking each UK prospect's legal form, identifying limited companies, LLPs, Scottish partnerships and public bodies as corporate subscribers that may be cold-emailed",
"Identifies UK sole traders and non-Scottish unincorporated partnerships as individual subscribers needing a consent basis, referencing PECR (or the corporate/individual subscriber distinction) explicitly",
"States a personal or freemail address counts as an individual subscriber regardless of the employer behind it",
"Notes that one-person newsletter and review operations will mostly land on the individual-subscriber side, so a country-level 'UK is fine' rule misclassifies most of this segment",
"Gives a cheap concrete check for UK legal form (Companies House lookup, or an explicit 'Ltd'/'Limited'/'LLP' in the trading name) and defaults to individual-subscriber treatment when the form is unknown",
"States the 27 Canadian prospects need express or implied consent under CASL, gives an implied-consent example such as an existing business relationship or a conspicuously published role-relevant address, and requires the basis be documented per contact",
"Routes prospects with no documented consent basis to passive recruitment (program page, directories) rather than prescribing a shorter or softer email sequence for them",
"States US prospects are cold-emailable under CAN-SPAM without prior consent, and that there is no B2B exemption",
"Lists the CAN-SPAM must-carry items for the US segment: accurate from/reply-to and routing, non-deceptive subject, physical postal address, and a working opt-out"
]
},
{
"id": 2,
"prompt": "I ran a backlink report on our two biggest competitors and found 63 sites that link to both of them with affiliate tracking parameters in the outbound links. My CMO saw the list and said going after people who already promote a competitor is poaching, it makes us look desperate, and we should build a clean list instead. We sell Kettleback, a $79/month B2B scheduling tool - 25% recurring for 12 months, 60-day cookie. What do I actually do with this list?",
"expected_output": "A rebuttal of the CMO's framing that treats competitor promotion as the strongest qualification signal available, plus a pre-outreach brand-safety screen, an exclusivity/non-solicitation check, and the correct qualification order.",
"files": [],
"expectations": [
"Treats 'already promotes a competitor' as a positive qualification signal, not a conflict or a reason to drop the prospect",
"Explains the signal proves category fit and existing monetization intent at the same time",
"Places competitors' current affiliates at or near the top of the sourcing efficiency order for a B2B SaaS program",
"States a manual brand-safety screen runs before any outreach, not after a prospect joins the program",
"Names at least three screen failure patterns drawn from: trademark bidding on brand terms, coupon injection or adware/parasiteware, cookie stuffing or forced clicks, thin AI-generated or scraped content with no real audience",
"Flags that a prospect may sit under an exclusivity clause, or that approaching a network-managed roster can breach that network's non-solicitation terms, and says to check before the first send",
"States never to ask a prospect to break an existing agreement",
"Orders qualification with audience fit checked first, ahead of traffic/authority and ahead of monetization evidence",
"States a high-authority site with the wrong audience is a worse prospect than a smaller site with the right one",
"Recommends checking outbound links for affiliate-network redirect parameters as monetization evidence",
"Produces no message that disparages the competitor or asks the prospect to drop them"
]
},
{
"id": 3,
"prompt": "Our recruitment emails are getting nothing - 240 sent, 2 replies. Here's exactly what we send, fix it:\n\nSubject: Partnership Proposal from Northvale Supply Co.\n\nHi there,\n\nHope this finds you well! Big fan of your content for a long time.\n\nNorthvale is the leading all-in-one outdoor gear brand with 400+ SKUs, free returns, a mobile app and award-winning customer service.\n\nOur top affiliates make $9,000+ a month and with your traffic you'd probably do even better!\n\nWe offer industry-leading commissions.\n\nSign up here, book a call with me here, and follow us on Instagram!\n\nTalk soon,\nThe Northvale Team\n\nContext: we're B2C DTC outdoor gear, AOV is $180, we pay 12% per order, 30-day cookie, monthly payouts, list is all US.",
"expected_output": "A rewritten first touch under 120 words with a short prospect-referencing subject, one verifiable specific, plain economics, one CTA, named sender and CAN-SPAM items - plus the follow-up sequence, with each original failure mode named.",
"files": [],
"expectations": [
"Replaces the subject line and states that 'Partnership Proposal from [Company]' style subjects are a documented delete-on-sight pattern",
"New subject line is roughly 3-5 words and references the prospect's own work rather than the sender's company",
"Replaces 'Hi there' with the prospect's name",
"Removes the unverifiable familiarity claim ('big fan of your content') and substitutes one specific verifiable reference to the prospect's work, or an honest statement of how they were found",
"Removes the product feature dump (SKU count, app, returns, awards) as mispositioned data where the audience-fit reason belongs",
"Removes the '$9,000+ a month / you'd do even better' projection and identifies it as hypothetical earnings math that must never appear",
"Notes the earnings claim also creates regulatory exposure for income representations",
"Replaces 'industry-leading commissions' with the exact stated terms: 12% per order, 30-day cookie, monthly payouts",
"Cuts the three asks down to exactly one CTA",
"Replaces 'The Northvale Team' with a named human sender",
"Adds a physical postal address and a working opt-out, citing CAN-SPAM",
"Rewritten first touch is under 120 words",
"Leads with one audience-fit sentence before the economics, rather than with the product or the company",
"Delivers a follow-up sequence alongside the rewritten first touch rather than the first touch alone"
]
},
{
"id": 4,
"prompt": "I'm the only person on this. Maybe four hours a week for affiliate recruitment, and a list of 180 content sites for our B2B SaaS program. I read a post recommending twelve attempts over about three months - rotating email, LinkedIn DM and site contact form on each prospect until they answer. That sounds a lot more thorough than a short sequence. Should I run that?",
"expected_output": "A recommendation of the 5-touch / ~4-week cadence for this list on manager-hours grounds, with the 12-attempt cadence's real cost quantified and the specific condition that would promote it named.",
"files": [],
"expectations": [
"Recommends the 5-touch cadence over roughly 4 weeks as the default for this list, not the 12-attempt cadence",
"Justifies the choice on manager hours rather than on which approach sounds more thorough",
"States the 12-attempt cadence costs roughly two and a half times the sends",
"Names the per-attempt channel hunt (finding a DM handle or contact form for each attempt) as an additional cost of the 12-attempt cadence",
"Characterizes the 12-attempt cadence as a standing job rather than a campaign",
"Acknowledges the 12-attempt cadence wins on value (share of the list eventually reached) while also topping the effort line, and explains that is why it loses every efficiency round",
"Names the condition that would promote the 12-attempt cadence anyway: tier-1 prospects the manager specifically names and has standing weekly hours for, or a retained agency absorbing the per-attempt hours",
"Specifies the 5-touch spacing as approximately day 0, 3, 7, 14 and 21-28",
"States the fifth touch is a mandatory breakup message, and that it is what pushes the window past three weeks",
"States a single unanswered touch means the prospect is busy, not uninterested",
"For any prospect with no documented consent basis, states no touch count is lawful and passive recruitment is the route, rather than prescribing a shortened version of either cadence"
]
},
{
"id": 5,
"prompt": "Quick sanity check before I send. Our head of marketing wants the commission rate kept out of the first email entirely - her line is 'never lead with money, sell the brand, make them ask.' We're Fernwick, B2B SaaS for contract review. The board signed off on 30% recurring for 12 months, 90-day cookie, net-45 payouts. First touch goes to 40 comparison-site editors. Who's right here?",
"expected_output": "A disagreement with withholding the economics, resolved as 'one fit sentence first, then the economics stated plainly', with all four decided terms carried through into a sub-120-word draft with one CTA.",
"files": [],
"expectations": [
"Disagrees with keeping the commission out of the first message",
"States that affiliates evaluate economics early, so the commission must be findable in the first message",
"Resolves the tension explicitly: do not lead with commission alone, but do state it plainly right after the fit reason",
"Specifies that exactly one audience-fit sentence comes first, framed as why the program fits the prospect's own audience",
"States the commission facts must match the decided terms exactly - never rounded, never embellished",
"Carries all four stated terms into the draft: 30% recurring, 12 months, 90-day cookie, net-45",
"For this B2B SaaS program, names the recurring rate and duration plus the cookie/attribution window as the economics to state, and adds one proof the product converts",
"Does not invent a conversion rate, customer count, or review score as that proof point - asks the user for one or flags it as missing",
"States this skill communicates the already-decided commission and does not redesign or adjust it",
"Keeps the first touch under 120 words",
"Uses exactly one CTA, defaulting to reply-for-info on this cold first touch rather than a booked call or apply link"
]
},
{
"id": 6,
"prompt": "Two things before we launch. First, add a line to the email showing the prospect what they'd make - the site does about 80,000 visits a month and our AOV is $140, so we can just do the math for them. Second, my VP wants numbers in the plan doc: I've seen that the top 10% of affiliates drive 90% of revenue, that a good manager recruits 15-25 affiliates a month, and that programs see 42% faster activation with a structured sequence. What reply rate should I commit to?",
"expected_output": "A refusal to add the earnings projection, a refusal to quote the three circulating figures as fact, and a reply-rate expectation set against the verified general cold-outreach band with reliability flags attached.",
"files": [],
"expectations": [
"Refuses to add the earnings projection to the email",
"Identifies hypothetical earnings math as a documented pitch failure ('calculations of unearned riches') that kills replies",
"Notes the unverifiable earnings claim also creates income-representation regulatory exposure",
"Declines to quote 'top 10% drive 90%' as fact, flagging it as untraceable",
"Declines to quote '15-25 recruits per month' as fact, flagging it as untraceable",
"Declines to quote '42% faster activation' as fact, flagging it as untraceable",
"Gives a first-touch reply-rate expectation in roughly the 3-9% range",
"Attributes that range to general cold-outreach measurement rather than to affiliate-specific data",
"Attaches a reliability flag to every figure it does quote, distinguishing verified study measurement from practitioner self-report",
"If it cites the ~5% first-email or 30-40% full-sequence figures, marks them practitioner self-reported and notes the source carries a commercial incentive",
"Does not present '~10% of recruits ever become active' as an established benchmark"
]
},
{
"id": 7,
"prompt": "Prepping my quarterly review. Last quarter we contacted 640 prospects, got 140 applications in and approved 120 of them. That's an 87% approval rate and it looks great on a slide. Our affiliate platform dashboard gives me approvals and payouts, so that's what I've been pulling from. What should I actually be reporting, and how do I track this going forward?",
"expected_output": "A reframing that calls applications and approvals vanity metrics, names sales-active share as the KPI that matters with its flagged benchmark, and specifies a separate outreach pipeline tracked outside the program dashboard.",
"files": [],
"expectations": [
"States that applications and approvals alone are vanity metrics",
"Explains that a recruit who never promotes cost the outreach and returned nothing",
"Names the share of recruited affiliates that become sales-active as the program-side KPI that matters, using 'activity index' or an equivalent explicit definition",
"Gives the roughly 20% of affiliates producing at least one click per week benchmark for a mature program",
"Flags that benchmark as practitioner self-reported rather than independently measured",
"Names reply rate and application rate broken out per tier and per angle as the outreach-side KPIs",
"States the affiliate platform dashboard shows approvals and payouts but not the outreach pipeline",
"Recommends tracking the outreach pipeline in a CRM or spreadsheet separate from the program dashboard",
"Names the pipeline stages contacted, replied, applied, activated",
"Sets a weekly review cadence during an active campaign"
]
},
{
"id": 8,
"prompt": "For our B2C skincare program I want every first email to open with 'your affiliate account is already approved and waiting' - it converts way better than a plain link. Realistically our team takes about two weeks to review an application right now, and nobody has set anything up in the platform yet. Also stick my Calendly in there as a backup ask in case they'd rather talk it through.",
"expected_output": "A refusal of the unbacked pre-approved-account claim and of the second ask, with the dropped CTA named, an honorable replacement chosen, and the two-week review turnaround flagged as a blocker to fix before launch.",
"files": [],
"expectations": [
"Refuses the pre-approved-account CTA while no account has actually been set up per prospect",
"States a pre-approved-account claim with no pre-approval behind it burns the prospect permanently",
"States that a CTA the manager cannot honor is deleted rather than demoted, and says explicitly which CTA was dropped and why",
"Rejects adding the calendar link as a second ask, holding the message to exactly one CTA",
"Notes a booked-call CTA is wrong for a cold first touch of this type, belonging to B2B tier 1 from touch 3 onward if used at all",
"Recommends reply-for-info or the apply link as the honorable CTA for this cold first touch",
"Flags the two-week application review as a documented failure mode that sours the pitch",
"Commits to a 24-48 hour application review turnaround before outreach launches",
"States pre-approved accounts require real per-prospect setup work before sending, and scopes them to B2C tier 1 if used at all",
"Does not keep the pre-approved-account line as an aspirational, hedged, or 'coming soon' claim"
]
},
{
"id": 9,
"prompt": "Here's my Q4 plan for the affiliate program on Loomwright, our B2B workflow automation SaaS - $49/seat/month, 20% recurring. Three moves: (1) sign up the three big coupon and cashback networks, (2) post the program in about six Slack and Discord communities where our buyers hang out, (3) buy a 5,000-contact list of marketing bloggers from a data vendor and blast it. Rank these three for me and tell me what I'm missing.",
"expected_output": "A plan that deletes all three proposed moves for named reasons rather than ranking them, states the B2B SaaS sourcing efficiency order explicitly, names what that order starves, and gives the discovery method to rebuild the list.",
"files": [],
"expectations": [
"Removes coupon/cashback/loyalty from the plan for this B2B SaaS program rather than ranking it last",
"Explains the removal on value grounds: discounting erodes recurring revenue and the signups are largely non-incremental",
"Notes coupon/cashback remains a legitimate category for B2C ecommerce programs",
"Removes cold-pitching in Slack and Discord communities rather than ranking it, because anti-solicitation rules make the pitch itself the violation",
"Recommends keeping community presence as passive recruitment - participate and be findable - and treating any recruit from one as inbound",
"Declines the purchased 5,000-contact list, stating purchased or scraped contact dumps of unknown provenance are not a workable basis, and says why to the user",
"Warns that one large blast underperforms small batches, and recommends batches of 50 or fewer",
"Names competitors' current affiliates and content/review/comparison sites as the default opening rungs for a B2B SaaS program",
"States the sourcing efficiency ordering explicitly rather than leaving it implied by row order",
"Names complementary non-competing vendors and consultants/agencies/integration partners as high-value categories that the efficiency ordering starves",
"Gives the condition that promotes those two categories anyway: an existing base of affiliates already producing clicks, or a compounding mandate rather than a dated launch",
"Recommends a competitor-affiliate search or link-intersect/backlink analysis as the discovery method to rebuild the list, and notes the ranking shifts with what the manager already owns (licensed backlink tool, existing roster, retained agency)"
]
},
{
"id": 10,
"prompt": "First emails went out Monday to 90 prospects for our B2B SaaS program. Write touches 2 through 5 for me. I've got a LinkedIn automation tool that fires connection requests and DMs on a schedule - 25 a day is supposed to be the safe limit - so plan touch 3 through that. Touch 4 can just be a check-in bump, and if nobody answers by touch 5 I'll keep hitting them monthly after that.",
"expected_output": "Four follow-up touches with rotating angles, manual low-volume DMs replacing the automation tool, no check-in touch, a real breakup at touch 5 that is honored, and re-engagement scoped as a separate later campaign.",
"files": [],
"expectations": [
"Refuses to plan any touch through automated connection or DM tooling",
"States platform terms prohibit scraping and automation, and that the breach is enforceable as a contract claim and account ban even where it is not computer fraud",
"Identifies the '25 a day safe limit' as community anecdote rather than platform policy",
"Replaces the automation with manual, personalized DMs at low volume",
"Rejects the 'check-in bump' for touch 4, stating no touch may be a 'just checking in' message",
"Assigns each touch a distinct rotating angle, following fit then proof then ease then close across the sequence",
"Makes touch 2 a short resurface on the same email thread, 1-2 sentences, restating no part of the pitch",
"Keeps every follow-up under 50 words",
"Keeps the DM touch under roughly 300 characters and includes no link in a first DM",
"Makes touch 5 an explicit breakup that says it is the last email and leaves the door open",
"Refuses the monthly continuation after touch 5, stating a sent breakup is honored and there is no touch 6",
"States sending stops immediately on reply, opt-out or hard bounce, and that continuing past an opt-out is a per-message violation rather than persistence"
]
},
{
"id": 11,
"prompt": "Need a recruitment email for our new affiliate program by end of day. We haven't locked the commission yet - finance is still arguing between 20% recurring and a $200 flat bounty - so just write something compelling and we'll drop the number in later. Company is Hollowpine, we do B2B contract management software for mid-market legal teams.",
"expected_output": "A refusal to draft until the commission is confirmed, the commission decision routed out of scope, the remaining interview questions asked one at a time, and 2-3 candidate pitch angles offered with a recommendation before any message is written.",
"files": [],
"expectations": [
"Does not deliver a finished recruitment email with the commission left blank, hedged, or invented",
"States the email may carry only confirmed terms, and gates the draft on the commission being decided",
"Routes the commission decision itself out of scope, pointing at commission-structure design rather than choosing between 20% recurring and a $200 flat bounty",
"Names 'terms surfacing after the pitch that contradict the email' as a documented failure mode driving that gate",
"Asks the remaining interview questions one at a time rather than as a single block",
"Asks by what date recruited affiliates must be producing",
"Asks whether this is a one-off launch push or a compounding channel that will still run next year",
"Asks the effort ceiling: manager hours per week, and what is already owned",
"Explains those three answers re-rank sourcing categories, cadence and CTA, so they must be answered before drafting rather than at the moment of choosing",
"Proposes 2-3 candidate pitch angles with trade-offs and a recommendation, and writes no message until the user picks one"
]
}
],
"trigger_queries": [
{
"query": "Write the first-touch email and follow-up sequence for 40 comparison-site editors we want in our B2B SaaS affiliate program",
"should_trigger": true
},
{ "query": "How do I recruit affiliates for a brand new program?", "should_trigger": true },
{
"query": "Our affiliate recruitment emails get no replies - here are the last three, rewrite them and fix the cadence",
"should_trigger": true
},
{
"query": "We have a list of 200 prospects mixing UK sole traders, US bloggers and German media sites. Tier the list and tell me who we can cold-email",
"should_trigger": true
},
{
"query": "Draft a pitch to get review sites to join our commission program",
"should_trigger": true
},
{
"query": "I pulled the backlinks of our two biggest competitors and found the sites promoting them - what do I send those people?",
"should_trigger": true
},
{
"query": "How many follow-ups before I give up on an affiliate prospect?",
"should_trigger": true
},
{
"query": "Need a breakup email for partners who never answered our program invite",
"should_trigger": true
},
{
"query": "Best subject line for an email asking a blogger to promote our product for commission",
"should_trigger": true
},
{
"query": "We want coupon and cashback partners in our DTC program - how do we approach them?",
"should_trigger": true
},
{
"query": "Cold outreach plan to get newsletter operators promoting our tool for a cut of revenue",
"should_trigger": true
},
{
"query": "how do i find people to promote my product for a percentage of sales and actually get them to say yes",
"should_trigger": true
},
{
"query": "Should I lead with the commission rate when emailing potential affiliates?",
"should_trigger": true
},
{
"query": "Plan for signing up 50 new partners to our revenue-share program this quarter",
"should_trigger": true
},
{ "query": "Can I email Canadian bloggers about joining our program?", "should_trigger": true },
{
"query": "What's a realistic reply rate on partner recruitment emails?",
"should_trigger": true
},
{
"query": "We want to go after the affiliates working with our competitor. Is that a bad idea?",
"should_trigger": true
},
{
"query": "Write an outreach sequence for podcast hosts we want promoting our SaaS on commission",
"should_trigger": true
},
{
"query": "How should I tier a list of 300 potential publishers before I start emailing?",
"should_trigger": true
},
{
"query": "our affiliate program has four people in it after six months. how do we get more?",
"should_trigger": true
},
{
"query": "Draft the email that goes to agencies we want reselling us on a referral commission",
"should_trigger": true
},
{
"query": "What goes in the very first message to someone we want in our partner program?",
"should_trigger": true
},
{
"query": "My VP wants a recruitment funnel for the affiliate channel - stages and KPIs",
"should_trigger": true
},
{
"query": "Message to send a YouTuber to get them onto our affiliate program",
"should_trigger": true
},
{
"query": "How do I qualify affiliate prospects before I waste time emailing all of them?",
"should_trigger": true
},
{
"query": "Sequence plan for recruiting content partners into our ecommerce program",
"should_trigger": true
},
{
"query": "I have four hours a week and a list of 180 sites. What cadence is realistic?",
"should_trigger": true
},
{
"query": "Should we buy a list of bloggers to pitch our program to?",
"should_trigger": true
},
{
"query": "What do I say to someone who already promotes a competing product?",
"should_trigger": true
},
{
"query": "Affiliate sourcing strategy for a B2B SaaS launching next quarter",
"should_trigger": true
},
{
"query": "Write a LinkedIn DM to a partner prospect who has ignored two emails from us",
"should_trigger": true
},
{
"query": "How do we get more publishers into the program without a bigger budget?",
"should_trigger": true
},
{
"query": "outreach copy for recruiting brand ambassadors who earn commission on sales",
"should_trigger": true
},
{
"query": "We need the people writing 'best X software' lists to include us and earn a cut - how do we reach them?",
"should_trigger": true
},
{ "query": "Cold email template for partner program recruitment", "should_trigger": true },
{
"query": "How many emails a week can I send to potential partners without getting us flagged?",
"should_trigger": true
},
{
"query": "Need a plan to grow the partner side of our revenue-share channel from zero",
"should_trigger": true
},
{
"query": "Which affiliate categories should we go after first for a B2B product?",
"should_trigger": true
},
{
"query": "Draft a message to cashback network business development",
"should_trigger": true
},
{ "query": "Recruit affiliates for our Q4 seasonal push", "should_trigger": true },
{
"query": "Our program page gets no signups. Should we start reaching out to people directly?",
"should_trigger": true
},
{
"query": "How do I personalize 200 partner pitch emails without it taking me a month?",
"should_trigger": true
},
{ "query": "What KPIs prove our affiliate recruiting is working?", "should_trigger": true },
{
"query": "Write touch 2 through touch 5 for our publisher recruitment sequence",
"should_trigger": true
},
{
"query": "Do I need a physical address in an email inviting bloggers to my program?",
"should_trigger": true
},
{
"query": "Pitch angle options for getting finance bloggers into our commission program",
"should_trigger": true
},
{
"query": "how to convince a big review site to sign up as a partner and send us traffic",
"should_trigger": true
},
{
"query": "Recruiting plan for affiliates across the US, UK and Germany",
"should_trigger": true
},
{
"query": "We're offering 30% recurring - how do I get that in front of the right publishers?",
"should_trigger": true
},
{
"query": "Email plan for turning our happiest customers into commissioned promoters",
"should_trigger": true
},
{ "query": "What makes an affiliate recruiting email get deleted?", "should_trigger": true },
{ "query": "Build the outreach side of our new partner program", "should_trigger": true },
{
"query": "I want to pay people to promote us. How do I actually go get those people?",
"should_trigger": true
},
{
"query": "Follow-up strategy for partner prospects who haven't replied in two weeks",
"should_trigger": true
},
{
"query": "What's the right ask in a first email to a potential affiliate - apply link or just reply?",
"should_trigger": true
},
{
"query": "Our affiliate manager wants a repeatable prospecting and outreach process written down",
"should_trigger": true
},
{
"query": "Design the commission rate and payout tiers for our new affiliate program",
"should_trigger": false
},
{
"query": "Should we pay revenue share or a flat CPA on our affiliate program?",
"should_trigger": false
},
{
"query": "Draft the terms and conditions affiliates accept when they join",
"should_trigger": false
},
{
"query": "Write the prohibited-tactics clauses for our affiliate agreement",
"should_trigger": false
},
{
"query": "What should our affiliate welcome email say after we approve someone?",
"should_trigger": false
},
{
"query": "Design the onboarding sequence for newly approved affiliates",
"should_trigger": false
},
{
"query": "One of our affiliates is sending fake leads - how do I detect and prove it?",
"should_trigger": false
},
{ "query": "Build cookie-stuffing detection rules for our program", "should_trigger": false },
{
"query": "Audit this month's affiliate payout run before we send the money out",
"should_trigger": false
},
{
"query": "Which metrics belong on our affiliate performance dashboard?",
"should_trigger": false
},
{
"query": "Check this Instagram caption against FTC affiliate disclosure rules",
"should_trigger": false
},
{
"query": "Does this YouTube script disclose the affiliate relationship properly?",
"should_trigger": false
},
{
"query": "Pitch this one creator we've already vetted - she has 80k followers and we want her for the spring campaign",
"should_trigger": false
},
{
"query": "Write the DM to send Marina about a paid collab on her channel",
"should_trigger": false
},
{
"query": "Define the criteria for shortlisting creators for our spring campaign",
"should_trigger": false
},
{
"query": "Draft the creative brief for the influencer we just signed",
"should_trigger": false
},
{
"query": "Prepare me to negotiate usage rights and rates with a creator",
"should_trigger": false
},
{
"query": "Set KPIs and attribution for our influencer campaign before it launches",
"should_trigger": false
},
{
"query": "How much should we reward customers for referring a friend?",
"should_trigger": false
},
{ "query": "Stop people from gaming our refer-a-friend rewards", "should_trigger": false },
{
"query": "Design our B2B channel partner program structure from scratch",
"should_trigger": false
},
{
"query": "Set the qualification criteria for silver, gold and platinum partner tiers",
"should_trigger": false
},
{
"query": "Plan the certification track for our reseller partners",
"should_trigger": false
},
{
"query": "Should we list on AWS Marketplace or focus spend on our own site?",
"should_trigger": false
},
{
"query": "Write the deal registration policy for our co-sell motion",
"should_trigger": false
},
{
"query": "Our direct reps and a channel partner are fighting over the same account",
"should_trigger": false
},
{
"query": "Plan the joint launch campaign with our integration partner Datafold",
"should_trigger": false
},
{
"query": "Rank these five candidate strategic alliances by expected value",
"should_trigger": false
},
{ "query": "Model the unit economics of our biggest reseller", "should_trigger": false },
{
"query": "Build the QBR scorecard for reviewing individual partners",
"should_trigger": false
},
{
"query": "Map every partner type in our ecosystem and find the coverage gaps",
"should_trigger": false
},
{
"query": "Which partner category should we add next, and when?",
"should_trigger": false
},
{
"query": "We need to hire a partner marketing manager - write the job description",
"should_trigger": false
},
{
"query": "Design the interview loop for a channel manager role",
"should_trigger": false
},
{ "query": "How do I break into partnerships from a sales role?", "should_trigger": false },
{
"query": "Recruit two senior engineers for the integrations team",
"should_trigger": false
},
{
"query": "Build a recruiting pipeline to track candidates through our hiring stages",
"should_trigger": false
},
{
"query": "Write a cold email sequence to 300 SaaS CTOs to book product demos",
"should_trigger": false
},
{
"query": "Draft outreach to journalists to cover our funding announcement",
"should_trigger": false
},
{ "query": "Write the investor outreach email for our seed round", "should_trigger": false },
{
"query": "Cold email sequence for our SDR team targeting mid-market ops leaders",
"should_trigger": false
},
{
"query": "Help me write a guest post pitch to get a backlink from a tech blog",
"should_trigger": false
},
{
"query": "Outreach plan to get our product reviewed by the tech press",
"should_trigger": false
},
{
"query": "Set up our Shopify Partner account and list our app in the store",
"should_trigger": false
},
{
"query": "Write the sponsorship pitch for a conference we want to sponsor next year",
"should_trigger": false
},
{ "query": "Email sequence to win back churned customers", "should_trigger": false },
{
"query": "Which skill in this collection should I use for our partner work?",
"should_trigger": false
},
{ "query": "Route my partnerships task to the right playbook", "should_trigger": false },
{
"query": "How long should we hold commission payments during the clawback window?",
"should_trigger": false
},
{
"query": "Set the cookie window and attribution rules for the program",
"should_trigger": false
},
{
"query": "Our top affiliate wants a custom rate - how do I evaluate whether to give it?",
"should_trigger": false
},
{
"query": "Write the email telling an affiliate we're terminating them for trademark bidding",
"should_trigger": false
},
{
"query": "Build the activation nudge for affiliates who joined but never posted a link",
"should_trigger": false
},
{
"query": "Score our shortlisted creators on engagement quality and brand safety",
"should_trigger": false
},
{
"query": "Plan the co-marketing webinar with our integration partner",
"should_trigger": false
},
{
"query": "Separate real fraud from legitimate low-incrementality coupon partners in our traffic data",
"should_trigger": false
}
]
}
references/examples.md›
# Examples
One positive worked example (first touch + sequence) and one annotated negative example with commentary on each documented failure mode.
## Positive: B2B SaaS first touch + sequence
Scenario (illustrative): a project-tracking SaaS with an already-decided 25% recurring commission for 12 months, 60-day cookie, monthly payout. Prospect: a tier-1 comparison-site editor who published "Best project management tools for agencies" last month, currently listing two competitors. US-based → CAN-SPAM regime.
**First touch (email, day 0 - 96 words):**
> Subject: your agency PM roundup
>
> Hi Dana,
>
> I read your "Best project management tools for agencies" piece last month - the section on client-facing dashboards is the most honest take on that feature I've seen. I noticed you cover [competitor A] and [competitor B] there.
>
> I run the partner program at [product]. We pay 25% recurring for 12 months, 60-day cookie, paid monthly - and agency-focused reviewers are exactly who converts for us.
>
> If you're interested, let me know - happy to share more info.
>
> Priya Shah, Partnerships, [product]
> [postal address] · [unsubscribe link]
Why it works, per the documented rules:
- 3-word subject naming their work, not "partnership opportunity."
- Opener cites one verifiable specific (the article, the section).
- Competitor coverage treated as a positive signal and said plainly.
- Economics findable in one sentence, exactly as decided.
- One low-friction reply CTA (McWilliams's documented template CTA).
- Under 120 words.
- CAN-SPAM identity, address, and opt-out present.
**Sequence** - the standard 5-touch default, which a tier-1 prospect runs unless the manager has explicitly named them for the 12-attempt extended cadence:
| Touch | Day | Channel | Angle | Message summary |
| ----- | --- | ----------------------- | --------------- | ----------------------------------------------------------------------------------------------------------------------- |
| 1 | 0 | Email | Fit + economics | First touch above |
| 2 | 4 | Email, same thread | Resurface | "Did this reach you? Happy to answer anything." (two sentences, nothing restated) |
| 3 | 10 | Professional-network DM | Proof | <300 chars: one conversion proof point withheld from touch 1; no link |
| 4 | 17 | Email | Ease | Offer to pre-fill the application + a ready-made comparison asset for her next roundup update |
| 5 | 24 | Email | Breakup | "Planning to close your file - if the timing's just off, say the word and I'll circle back next quarter." Then honor it |
**B2C variant, same skeleton:**
- Swap the proof points, not the structure.
- Lead with average order value, the returns window, and a seasonal promo slot ("your Q4 gift-guide traffic").
- CTA becomes the apply link or "your account's already approved" for tier 1.
- Touch-3 channel becomes a social DM or contact form.
## Negative: the email that gets deleted
Realistic composite of the documented failure modes, annotated line by line.
> **Subject: Partnership Proposal from Acme Growth Inc.** 🚀
Named by Prussakov as the subject to "completely scrap" - "bland... spammy"; McWilliams: "'Partnership opportunity' gets deleted." Company-first framing, seven words, emoji.
> **Hi there,**
No name. The list was mail-merged, and the prospect knows it in two words.
> **I hope this email finds you well! I've been a huge fan of your blog for a long time.**
Filler opener plus fabricated familiarity - no article named, because none was read. Unverifiable flattery is worse than honestly saying how you found them.
> **Acme Growth is the leading all-in-one growth platform, featuring automated funnels, AI-powered segmentation, 40+ integrations, real-time dashboards, and enterprise-grade security.**
The feature dump. Prussakov's "mispositioning of important data": product specs where the audience-fit reason should be. Nothing here answers "why my audience?"
> **Our affiliates are making $10,000+ per month, and with your traffic you could easily earn even more!**
"Calculations of unearned riches" - explicitly on Prussakov's mistake list. An unverifiable earnings claim also creates regulatory exposure for income representations.
> **We offer industry-leading commissions.**
The one fact the prospect filters on - the actual rate, cookie, payout terms - is withheld. Vague superlatives where plain economics belong.
> **Sign up here, book a call with me here, and follow us on social to stay updated!**
Three asks. The documented rule everywhere is one low-friction CTA; each added ask lowers the odds any is taken.
> **Talk soon!
> The Acme Growth Team**
No named human sender, no postal address, no opt-out - a CAN-SPAM violation at up to $53,088 per email, and it forecloses reply-to-a-person, the CTA most likely to convert. A "team" doesn't build a partner relationship; a person does.
Net effect: eight documented failure modes in ~110 words - and this is the template style that makes real prospects say affiliates "hate blanket outreaches" (Prussakov). Everything in it is fixed by the positive example's structure.
references/outreach-compliance.md›
# Outreach Compliance
Legal constraints on the recruitment outreach itself, by prospect jurisdiction and channel. Segment the list by recipient location before drafting - the regime attaches to where the prospect is, not where the program is. This is operational guidance, not legal advice; route edge cases (mixed-jurisdiction lists, regulated verticals) to counsel.
## By jurisdiction
| Jurisdiction | Regime | Cold email to prospects | Must carry | Exposure |
| ------------ | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
| US | CAN-SPAM | Legal without prior consent - no B2B exemption, all commercial email covered | Accurate from/reply-to and routing, non-deceptive subject, physical postal address, working opt-out honored within 10 business days | Up to $53,088 per violating email (FTC 2025 inflation-adjusted figure) |
| EU | GDPR + ePrivacy | Generally permissible under legitimate interest for B2B, with a documented balancing test, role relevance, and transparency. **Member states vary: Germany requires prior opt-in (UWG)** - treat German prospects like Canadian ones | Identity, purpose, easy objection route; honor access/erasure requests | Up to EUR 20M or 4% global turnover; German UWG penalties cited to EUR 300k |
| UK | PECR + UK GDPR | Unsolicited email to **corporate subscribers** (limited companies, LLPs, Scottish partnerships, public bodies) explicitly allowed. **Sole traders and non-Scottish unincorporated partnerships are individual subscribers under reg. 22** - they need prior consent or the soft opt-in, exactly like Canadian prospects. Personal/freemail addresses count as individual regardless of the employer | Clear sender identity, opt-out offered; recorded consent basis for every individual subscriber | ICO enforcement |
| Canada | CASL | **No cold email without express or implied consent** - implied covers an existing business relationship or a conspicuously published address relevant to the recipient's role (a published "partnerships@" or media-kit contact can qualify; document why) | Consent basis recorded per contact, identification, unsubscribe | Up to CA$10M per violation |
Practical segmentation rule, applied per prospect and not per country:
- US and most-EU prospects → cold sequence with the must-carry items.
- UK prospects → check the legal form first. Limited company, LLP, Scottish partnership or public body → cold sequence. Sole trader, non-Scottish unincorporated partnership, or a personal/freemail address → consent basis required, same handling as Canada.
- Canada, Germany, and UK individual subscribers → outreach only where a documented consent basis exists (inbound contact, published role-relevant address, existing relationship); otherwise use passive-recruitment routes (directories, program page) instead.
The UK check is not optional book-keeping: comparison-site editors, newsletter operators, podcasters and solo consultants - this skill's core target list - are overwhelmingly sole traders, so a country-level "UK is allowed" rule misclassifies most of the list. Companies House lookup or an explicit "Ltd"/"Limited"/"LLP" in the trading name is the cheap check; when the form is unknown, treat the prospect as an individual subscriber.
## Platform channels
- **Professional-network DMs**: platform terms prohibit scraping and automation. US case law (the hiQ litigation) settled that public scraping is likely not federal computer fraud but _remains a terms-of-service breach_ - enforceable by contract claims and account bans. Never recommend automated connection/DM tooling; community-circulated "safe" volumes (~20-25 connection requests/day) are anecdote, not policy. Manual, personalized DMs at low volume.
- **Communities (forums, chat servers, subreddit-style)**: anti-solicitation rules are the norm. Participate and be findable; do not cold-pitch members in-thread or via unsolicited DMs where rules forbid it - a public callout damages the program's name among exactly the professional affiliates it wants.
- **Social DMs (other platforms)**: per-platform messaging policies apply; same manual/low-volume rule.
## List hygiene, all jurisdictions
- Filter unsubscribes, prior opt-outs, and hard bounces out _before_ the campaign starts, and propagate new opt-outs into future list-building.
- Stop on reply, opt-out, or bounce - mid-sequence sends after an opt-out are per-message violations.
- Purchased consumer lists and scraped contact dumps of unknown provenance are not a workable basis; decline them and say why.
## Disclosure - the promise never to make
Affiliate promotion legally requires disclosure of the material connection (FTC endorsement rules in the US; equivalents elsewhere). Never let outreach copy promise or imply that a prospect could promote without disclosure - it is both unlawful and, per practitioner consensus, the fastest way to lose professional affiliates' trust. Disclosure obligations _inside_ the program belong to `mbfinotti/partnerships-skills@affiliate-program-terms`; the outreach-side rule is simply: don't sell against compliance.
references/pitch-anatomy.md›
# Pitch Anatomy
Structure of a first-touch affiliate recruitment message.
## Subject line
- Keep it 3-5 words. "'Partnership opportunity' gets deleted" (Matt McWilliams); "Partnership Proposal from [Company Name]" is "bland... spammy" and should be "completely scrapped" (Geno Prussakov).
- efficiency, for touch 1: `referral-by-name > recently-promoted product name > plain descriptive > curiosity / pattern-interrupt`
- Only one axis here: once the referral gate below is applied, all four patterns cost the same line of copy to write, so effort and compliance cost do not separate them and would be false precision.
- Referral-by-name ("Sarah Johnson suggested I reach out" - McWilliams: "outperforms almost anything else") needs a real mutual contact. With none, that rung is deleted, not written anyway - a fabricated referrer is the fastest way to lose the prospect permanently.
- Recently-promoted product name (McWilliams's template subject) is the default when no referral exists: it costs the per-prospect research already spent during qualification.
- Sequence subject-line tone by touch number (AM Navigator):
- First touches: straightforward and descriptive.
- After 2-3 unanswered attempts: creative (curiosity or pattern-interrupt lines).
- Final touch: loss-aversion ("Permission to close your file?").
A quoted practitioner pushback applies throughout: readers resent subject lines that "cover up the real reason behind the email" - playful is fine, deceptive is not.
## Opening line
Reference something real and specific about their work: "I saw that you were promoting [other product] recently and thought of you" (McWilliams's template opener), or a named piece of their content. "Specific beats general every single time." If no real signal exists for a prospect, say honestly how you found them - never invent familiarity.
## Body: what to lead with
One audience-fit sentence first - why this program fits _their_ audience. Then the economics, stated plainly:
- **B2B SaaS**: recurring commission rate and duration, cookie/attribution window, one proof the product converts (a conversion rate, review-platform credibility, user count). One B2B vendor's positioning principle: "Affiliates filter by economics first" (Rewardful) - a sourced counterpoint to the generic "don't lead with commission" reflex. The resolution: don't lead with commission _alone_; do make it findable in the first message.
- **B2C ecommerce/DTC**: average order value, earnings-per-click where known, returns-window terms, seasonal or promo-slot fit.
- Identical for both: one fit reason, plainly stated economics, one CTA, short. Only the proof points differ.
## Length
Short - a few sentences, readable in under a minute. "The easiest way to screw up an affiliate recruiting email is to make it too long" (McWilliams). No affiliate-recruiting-specific word-count study exists, but general cold-outreach research is well measured and transfers: Boomerang's analysis of 40 million emails found 50-125 words drew the highest reply rates, and newer large-sample studies (Lavender/Gong, 300,000+ emails; a separate 3-million-email study) converge on a tighter 75-100 word sweet spot for initial outreach, with structure (3-5 short sentences across 2-3 paragraphs) mattering as much as raw count. The 120-word cap sits at the upper edge of that band rather than the sweet spot - a working ceiling, not a published affiliate-specific standard, but no longer an unmeasured guess either.
Context: affiliates report "120+ daily emails mean your cold outreach needs to hook affiliates in the first line or get deleted" (Leanna Klyne, Affiverse).
## CTA - one only, matched to segment and warmth
- efficiency (yeses per message sent): `reply-for-info > pre-approved account > apply link > booked call`
- value (commitment bought per yes): `pre-approved account > booked call > apply link > reply-for-info`
- effort (most first, on the manager): `pre-approved account > booked call > reply-for-info > apply link`
Rows follow the efficiency order.
| CTA | Best for | Effort it costs the manager |
| ------------------------------------------------------------------------------------------ | ---------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| Reply-for-info ("If you're interested, let me know. Love to share more info" - McWilliams) | Cold first touch, both segments | One reply thread per interested prospect; lowest friction on the prospect, so it wins the most first-touch yeses |
| Pre-approved account ("your account is already set up") | B2C tier 1; an affiliate-native move with no cold-sales analogue | Account setup per prospect _before_ sending - real work, bought back by the strongest commitment signal available |
| Apply link | B2C, warm or directory-sourced prospects | Near-zero - fully self-serve, which is also why it converts a cold prospect least often |
| Booked call | B2B SaaS tier 1 (agencies, integration partners) | Calendar hours per prospect, and the highest ask; never on a cold first touch to a content site |
Default: reply-for-info on any cold first touch, in both segments. Move up when warmth or tier justifies the ask - apply link for directory-sourced or inbound-adjacent prospects, pre-approved account for B2C tier 1, booked call for B2B tier 1 from touch 3 on.
Delete, do not demote, any CTA the manager cannot honor today - a "pre-approved account" email with no pre-approval behind it burns the prospect permanently, and a booked-call CTA with no calendar behind it does the same. Say which CTA was dropped and why. Re-rank on capacity too: a manager with no inbox hours this week should not lead with reply-for-info.
## The withhold list
Prussakov's documented pitch mistakes stay out of the first touch:
- Long texts.
- Lack of personalization.
- Clichés.
- "Calculations of unearned riches" (hypothetical earnings math).
- Mispositioned key data.
- Missing CTAs.
- The feature dump (product details belong on the program page, not in the pitch).
- Any promise about lax disclosure - affiliate promotion legally requires disclosed material connections.
references/prospect-sourcing-and-qualification.md›
# Prospect Sourcing and Qualification
How to qualify and tier an already-identified prospect list, plus the sourcing map for judging whether the list itself targets the right categories.
## Table of Contents
- [Sourcing categories, ranked by efficiency](#sourcing-categories-ranked-by-efficiency)
- [Discovery methods, ranked by efficiency](#discovery-methods-ranked-by-efficiency)
- [Qualification signals, in checking order](#qualification-signals-in-checking-order)
- [Brand-safety screen (manual, before any outreach)](#brand-safety-screen-manual-before-any-outreach)
- [Tiering the survivors, and how to split attention](#tiering-the-survivors-and-how-to-split-attention)
- [B2B vs B2C summary](#b2b-vs-b2c-summary)
## Sourcing categories, ranked by efficiency
Fit alone cannot answer where this week's outreach hours go - a category can fit perfectly and still cost a quarter of coordination to open. Rank by replies bought per hour invested, then correct for the segment actually being run.
B2B SaaS:
- efficiency: `competitors' affiliates > content/review sites > existing customers > newsletters > complementary vendors == agencies/integration partners > YouTube/podcast`
- value: `complementary vendors == agencies/integration partners > competitors' affiliates > content/review sites > YouTube/podcast > newsletters > existing customers`
- effort (most first): `complementary vendors == agencies/integration partners > YouTube/podcast > competitors' affiliates > existing customers > content/review sites == newsletters`
- compliance cost (most first): `competitors' affiliates > existing customers > everything else`
B2C ecommerce/DTC:
- efficiency: `competitors' affiliates > content/review sites > existing customers > coupon/cashback > newsletters > YouTube/podcast > complementary vendors`
- value: `content/review sites > competitors' affiliates > YouTube/podcast > newsletters > existing customers > complementary vendors > coupon/cashback`
- effort (most first): `complementary vendors > YouTube/podcast > competitors' affiliates > content/review sites > newsletters > existing customers > coupon/cashback`
- compliance cost (most first): `coupon/cashback > competitors' affiliates > everything else`
Ties are real, not hedges. Complementary vendors and agencies are the same motion: exec sponsorship, a co-marketing agreement, partner enablement. Both pay in durable revenue rather than click volume, so nothing separates them on value or effort.
That is exactly why they also tie on efficiency: the ratio is built from two lines that already tie. Content sites and newsletters cost the same hour of search-and-directory work to source and the same one-piece read to personalize.
Deleted from the outreach menu, not demoted:
- **Communities/forums**, both segments. Anti-solicitation rules make the cold pitch itself the violation, so no amount of effort improves the ratio. Keep communities as passive presence - participate, be findable - and treat any recruit from one as inbound.
- **Coupon/cashback/loyalty in B2B SaaS**. Discounting erodes recurring revenue and the signups are largely non-incremental, so the value is negative however cheap the category is to work. It stays in the B2C menu.
Rows below follow the B2B efficiency order; use the B2C line above when the program is B2C.
| Category | B2C fit | B2B fit | Effort to work it | Why it ranks there |
| ----------------------------------------- | ------- | ------------------- | ------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Competitors' current affiliates | High | High | A day with a licensed backlink tool; a week without one | Prussakov's #1 method: "Identify the affiliates who make your direct competitors successful... then reach out." Proven category fit and monetization intent in one list. Compliance: a prospect may sit under an exclusivity clause, and poaching a network-managed roster can breach that network's non-solicitation terms - check before the first send, and never ask a prospect to break an agreement |
| Content/review/comparison sites | High | Very high | An hour of SERP mining per niche, then one read per prospect | SaaS buyers research via "best [category] software" listicles; long consideration cycles reward in-depth reviews. Practitioners call content publishers "the holy grail" (AM Navigator) |
| Existing happy customers | High | Medium | Near-zero to source - the list is already owned - plus one coordination pass with CS | B2C converts buyers to advocates easily. Compliance in B2B: customer-affiliates raise procurement and conflict-of-interest review before any send |
| Newsletter operators | High | High | An hour of directory and search work per niche | Works in both; B2B skews to niche professional audiences |
| Complementary non-competing vendors | Medium | Very high | A quarter - exec sponsorship, agreement, enablement | "Symbiotic recruitment" (Prussakov); SaaS ecosystems monetize integrations. Highest value in B2B, and the slowest rung to open |
| Consultants/agencies/integration partners | Low | Very high | A quarter - the same coordination plus enablement material | Agencies implement software for clients; no analogue for most physical goods |
| YouTube/podcast partners | High | High | A week - watch or listen before pitching | Podcast-guesting doubles as recruitment: hosts often join the program themselves (McWilliams) |
| Coupon/cashback/loyalty | High | Deleted (see above) | Near-zero - a handful of large networks, and they say yes | One-off purchases suit discounts. Compliance: trademark-bidding and injection terms must be contracted before the first send, or the category becomes the brand-safety problem it looks like |
Default rung: open the campaign on competitors' current affiliates and content/review sites, and move down only once those lists are exhausted for the niche.
What this order starves: complementary vendors and agencies/integration partners top the value line and top the effort line at once, so the ratio demotes them in every round and a program that only ever obeys the efficiency line never opens them at all. That is the documented failure - a program stacked with publishers anyone can list in an afternoon, and no partner category that took a quarter to build.
Promote both above content/review sites when either condition holds: the program already has affiliates producing clicks, so speed is no longer the constraint; or the manager answered the interview with a compounding mandate rather than a dated launch. In B2C the same starvation lands on YouTube/podcast partners - high value, a week of watching or listening per prospect - so promote them once the niche's content-site list is worked out, rather than waiting for a ratio they cannot win.
This ordering is a default, not a law: it shifts with the segment, the list's provenance, and who executes it. Re-rank it against what is already known about the manager before presenting - a licensed backlink tool, an existing affiliate roster, a retained agency, or an in-house podcast each promote a different rung (see the SKILL.md Interview).
## Discovery methods, ranked by efficiency
Useful for auditing where a list came from, and for building the next one.
- efficiency: `link-intersect analysis > competitor-affiliate search > SERP mining > post-purchase customer invites > publisher-discovery tooling > marketplace directories`
- value: `publisher-discovery tooling > link-intersect analysis > SERP mining > competitor-affiliate search > marketplace directories > post-purchase customer invites`
- effort (most first): `publisher-discovery tooling > link-intersect analysis > SERP mining == competitor-affiliate search > marketplace directories == post-purchase customer invites`
Ties: SERP mining and competitor-affiliate search are the same hour in the same search box, differing only in the query string. Marketplace directories and post-purchase invites both read a list somebody else already assembled.
No compliance-cost axis here: licensed tool data, public search results and an owned customer list touch no contract or platform policy. In this skill the exposure attaches to the outreach, never to the discovery.
| Method | Effort | What it yields |
| ------------------------------------------------------------------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------------- |
| Backlink / link-intersect analysis (sites linking to several competitors but not you) | A day with a licensed tool; a procurement cycle without one | The highest-yield qualified list available, pre-filtered for category fit |
| "[competitor] + affiliate/commission" search | An hour | The competitors' openly declared affiliates - small, warm, immediately workable |
| SERP mining for "best X" and "[category] review" listicles | An hour per niche | Ranked content prospects with visible traffic intent |
| Post-purchase customer invites | Near-zero | Few prospects, high goodwill; a passive route more than an outreach list |
| Publisher-discovery tooling querying network data | A procurement cycle, then a week to learn | The broadest coverage, and the only method that scales past one manager |
| Affiliate network marketplace directories | An hour | The list every competing program has already worked - lowest reply rate |
Default: start with the competitor-affiliate search - an hour, no procurement, immediately workable. Re-rank on what the manager owns: a licensed backlink or link-intersect tool promotes link-intersect to the top rung, because the cost that demotes it is procurement rather than analysis. No tool and no budget for one deletes both link-intersect and publisher-discovery tooling from this quarter's menu instead of demoting them - say so, and work the search-based rungs.
## Qualification signals, in checking order
1. **Audience fit** - does their audience match the program's buyer? A high-authority site with the wrong audience is a worse prospect than a small site with the right one.
2. **Traffic/authority** - domain authority, estimated organic traffic, referring domains, social reach. Pull from the manager's backlink or publisher-discovery tooling; if unavailable, ask the manager for the numbers rather than guessing.
3. **Evidence of existing monetization** - affiliate links present, display ads, sponsorships. A site already monetizing knows the model and converts to "affiliate" faster; check outbound links for affiliate-network redirect parameters.
4. **Already promoting competitors** - a positive signal, not a disqualifier. "You find the people already selling products like yours and you offer them a better deal" (Nicholas Raschella, Partnerology). It proves category fit and monetization intent simultaneously.
## Brand-safety screen (manual, before any outreach)
Drop or flag any prospect showing:
- Trademark bidding on the brand's terms, or "[brand] + coupon code" ad extensions.
- Coupon-injection or adware behavior ("parasiteware") - partners that "poach sales from other channels and give credit to affiliates that didn't actually earn the sale" (Adam Riemer).
- Cookie-stuffing or forced-click patterns visible on the site.
- Thin AI-spam or scraped content with no real audience.
- Content that conflicts with the brand's redlines (the manager defines these in the interview).
Riemer's operating rule: "Nobody gets into the affiliate programs we manage without going through a manual screening process." Screen before outreach - recruiting a partner you must later eject costs more than skipping them. Post-join traffic-fraud monitoring is out of scope here (see `mbfinotti/partnerships-skills@affiliate-fraud-detection`).
## Tiering the survivors, and how to split attention
- **Tier 1**: strong audience fit + real traffic + proven monetization (often competitors' current affiliates). Gets individual research, the deepest personalization, and the long cadence.
- **Tier 2**: fit confirmed, authority or monetization unproven. Gets personalized outreach on the standard cadence.
- **Tier 3**: plausible fit, thin evidence. Gets the standard sequence in small batches; promote to tier 2 on any reply.
All three axes agree here, so one line carries them:
- efficiency, value and effort alike: `tier 1 > tier 2 > tier 3`
Agreement is exactly why "concentrate on whales" reads as obviously right - and why stopping there is wrong. Tier 1 is a small finite list: individual research costs about a day per prospect, so a realistic tier-1 list is exhausted inside the first week of a campaign. The hours left after that have nowhere better to go than tier 2, then tier 3 in batches - not because the long tail is efficient, but because the efficient rung ran out.
That settles the practitioner dispute by arithmetic instead of taste. Concentrating on "whale" affiliates (Lucas Lee-Tyson) is the correct _ordering_; a 20-60-20 attention split (Lee-Ann Johnstone) is a plausible _outcome_ of that ordering once tier 1 runs dry. Both are named practitioners with commercial programs - present either as perspective, never as law.
Default: work tier 1 to exhaustion before opening tier 2, then run tier 3 in batches of 50 or fewer. Move a prospect up a tier on any reply. Re-rank against the roster the manager already holds - dormant high-authority partners on an existing affiliate list often beat a fresh tier-1 build, because the research is already paid for.
## B2B vs B2C summary
Sourcing mix is where the two segments genuinely diverge (see the two ranking blocks above). Qualification signals, the brand-safety screen, and the tiering mechanics are identical for both - only the categories being qualified differ.
references/sequence-and-cadence.md›
# Sequence and Cadence
Touch-by-touch structure, channel mix, breakup/re-engagement rules, and the benchmark table.
## Choosing the cadence
Two cadences are documented, and they cost the manager very different amounts of attention:
- **5 touches over ~4 weeks**: day 0, 3, 7-8, 14, 21-28, ending in a breakup email.
- **~12 attempts over ~3 months**: follow up 7 days after the first touch, then weekly, closing the file after roughly 12 attempts and rotating channels across them (email, social DM, site contact form).
Rankings:
- efficiency (replies per manager hour): `5 touches / ~4 weeks > 12 attempts / ~3 months`
- value (share of the list eventually reached): `12 attempts > 5 touches`
- effort (most first): `12 attempts > 5 touches`
- compliance cost (most first): `12 attempts > 5 touches`
The effort gap is the whole argument. In the 5-touch cadence the work is front-loaded - the first touch carries the personalization, touches 2-5 are templated per tier - so a batch costs a few hours a week to run. The 12-attempt cadence multiplies that by roughly two and a half and adds a per-attempt channel hunt (find a DM handle, find a contact form), which turns a list of any size into a standing job rather than a campaign.
Compliance cost tracks the same rotation: every extra channel adds platform-policy surface, and a three-month pursuit stretches the window in which each send needs a documented basis.
Default: 5 touches over ~4 weeks for the whole list - the four value touches in the table below plus the mandatory breakup at day 21-28, which is why the window runs past three weeks. Move up to the 12-attempt cadence only for tier-1 prospects the manager both names _and_ has standing hours for; absent that, a tier-1 prospect runs this same sequence. The long cadence is bought with a quarter of attention, never with a longer template.
Deleted rather than demoted: both cadences, for any prospect with no documented consent basis - Canada, Germany, UK individual subscribers. No touch count is lawful there, so the route is passive recruitment, not a shorter sequence.
Re-rank against what the manager already has: a retained agency absorbs the per-attempt hours, which promotes the 12-attempt cadence for the whole list rather than for tier 1 alone. This ordering is a default, not a law - it shifts with the list size and with who runs the sends.
Rationale shared by every source: non-response means busy, not uninterested - "most non-replies are because they're busy" (McWilliams); "Affiliates receive a lot of email. A lot!" (AM Navigator).
## Touch-by-touch
| Touch | Timing | Channel | Angle | Rules |
| ----------- | --------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------- |
| 1 | Day 0 | Email | The approved pitch angle | The full first touch: specific opener, fit sentence, plain economics, one CTA |
| 2 | Day 3-7 | Email (same thread) | Gentle resurface | 1-2 sentences ("short but sweet" - AM Navigator); no restated pitch |
| 3 | Day 7-14 | Second channel: professional-network DM (B2B) or social DM / contact form (B2C) | New angle: a proof point or asset withheld from touch 1 | Keep DMs under ~300 characters; no links in a first DM |
| 4 | Day 14-21 | Email | New value: seasonal hook, new content of theirs to reference, or an easier CTA | Never "just checking in" - each touch earns its send with something new |
| 5 (breakup) | Day 21-28 | Email | Loss-aversion close ("Should I close your file?") | State it's the last email; leave the door open; then honor it - no further contact |
Angle rotation is the point of the sequence: fit → proof → ease → close. Repeating touch 1 five times is a blast, not a sequence.
## Channel mix, B2B vs B2C
- B2B SaaS: email plus professional-network DM dominate; conference/event contacts warrant a "great to meet you at [event]" opener (McWilliams calls attendee lists "gold"). Booked-call CTA acceptable from touch 3 on tier 1.
- B2C ecommerce/DTC: email plus social DM and site contact forms; post-purchase or in-app prompts for existing-customer recruits.
- Identical for both: touch count, spacing, the breakup rule, and the stop-on-reply/opt-out/bounce rule.
## Stopping and re-engagement
- Stop immediately on reply, opt-out, or hard bounce - continuing past an opt-out is a legal violation, not a persistence tactic.
- A sent breakup email is honored. Re-engagement is a new, later campaign, not touch 6.
- Re-engagement triggers worth a fresh sequence:
- A quarterly re-run with revised copy (Prussakov: resend revised outreach to non-responders after 2-3 weeks minimum).
- A seasonal hook.
- A genuinely new offer (commission improvement, new product line).
- New content of theirs that changes the fit story.
## Benchmarks - every figure carries its reliability flag
Quote nothing from this table without its flag. Most circulating affiliate-recruitment "benchmarks" do not survive tracing to a primary source.
| Metric | Figure | Reliability |
| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------- |
| First-email reply rate | ~5%, rising to 30-40% across a full follow-up sequence | Practitioner self-reported (McWilliams; has course-sales incentive) |
| Cold outreach reply rate, general | 8.5% of outreach emails get a response; one follow-up lifts replies ~66% | Verified study (Backlinko/Pitchbox, 12M emails - cold outreach generally, not affiliate) |
| Cold email reply rate, platform-wide | 3.43% average | Verified vendor measurement (Woodpecker, 20M+ emails - sales email, not affiliate) |
| Small-batch effect | ≤50-recipient campaigns: 5.8% replies vs 2.1% for 500+ | Verified vendor study (Belkins, 7.5M emails, 2025 - B2B cold email) |
| How affiliates find programs | Direct contact 42.4%; merchant site 51.3%; directories ~38% | Practitioner survey, dated (AffStat 2013 - the last comparable public data) |
| Activation ("~10% of recruits ever active") | ~10% | Untraceable vendor lore; do not present as fact |
| Activity index, mature program | ~20% of affiliates producing ≥1 click/week | Practitioner benchmark (Prussakov; self-reported definition) |
| "Top 10% drive 90%", "15-25 recruits/month", "1:100 manager ratio", "42% faster activation" | various | Untraceable - vendor listicles with inconsistent, decorative attributions; never quote |
Set expectations against the verified cold-email range (roughly 3-9% first-touch replies) and treat anything better as upside from personalization and list quality.
SKILL.md›
---
name: affiliate-recruitment-outreach
description: Draft the outreach copy and sequence plan used to recruit new affiliates into a commission-based affiliate program - prospect qualification and tiering, pitch angle, first-touch recruitment email, follow-up sequence with a breakup touch, channel mix, and outreach tracking. Covers B2B SaaS and B2C ecommerce/DTC programs. Use whenever the user mentions recruiting affiliates, affiliate sourcing, or pitching content and review sites, coupon and cashback partners, newsletter operators, communities, podcasters, or agencies to join a program, even if they never say recruitment. Do NOT use for pitching one individually vetted creator - use mbfinotti/partnerships-skills@influencer-outreach instead.
license: MIT
metadata:
author: Maya-Beth Finotti
version: "1.4.5"
---
# Affiliate Recruitment Outreach
Draft the copy and sequence plan an affiliate program manager uses to actively recruit new affiliates. This skill owns active outreach only.
Affiliate recruitment has no canonical named industry framework. The only affiliate-native vocabulary with broad adoption is the active/passive recruitment split, coined by practitioner Geno Prussakov:
- _Passive_ recruitment makes the program findable.
- _Active_ recruitment reaches out to identified prospects.
Vendor and course models circulating in this space (five-P flywheels, "perfect partner" lists, 20-60-20 splits) are individual commercial programs, not industry standards. Never present one as a standard.
## Interview
Ask before drafting anything. One question per message; offer multiple-choice answers when possible. Skip any question the user already answered.
- Is the program B2B SaaS or B2C ecommerce/DTC? (Or both - then segment everything downstream.)
- What makes the product worth promoting - the value prop an affiliate's audience would actually care about?
- What is the already-decided commission, exactly: rate/model, cookie or attribution window, payout terms? This skill communicates the commission; it never designs or adjusts it.
- Which affiliate categories does this list target? (Content/review/comparison sites, coupon/cashback/loyalty, newsletter operators, communities, YouTube/podcast, consultants/agencies/integration partners, existing customers, competitors' current affiliates.)
- Where did the prospect list come from, and how warm is it? (Competitor backlink analysis, marketplace directory, event contacts, existing customers, inbound-adjacent, purchased.)
- Where are the prospects located? (US / EU / UK / Canada / mixed - this drives the legal regime for each segment.)
- What is the brand voice? (Formal, peer-casual, playful - or point to an example message.)
- Which CTA can you actually honor: apply link, pre-approved account, reply-for-more-info, or a booked call?
- Who signs the email, and from which address?
- By what date must recruited affiliates be producing? (A live date, next quarter, or no fixed date.)
- Is this a one-off win - a launch, a seasonal push - or a compounding channel you will still be running next year?
- What is the effort ceiling: manager hours per week, and what is already owned? (An existing affiliate roster, a licensed backlink or publisher-discovery tool, a retained agency, an existing customer list.)
The last three questions decide every ranking downstream - sourcing categories, discovery methods, tier attention split, cadence, CTA - so ask them before drafting, never at the moment of choosing.
- A hard near date promotes the fast rungs: competitor-affiliate and SERP sourcing, the 5-touch cadence, the reply-for-info CTA. It demotes complementary vendors and agency/integration partners, which pay a quarter later.
- A compounding mandate reverses that: complementary vendors, agencies, and podcast partners move up, and the long tier-1 pursuit becomes affordable.
- A low effort ceiling deletes the rungs needing coordination or procurement rather than demoting them - name which ones you dropped and why.
- Anything already owned re-ranks on top of all of this: a licensed backlink tool promotes link-intersect sourcing, a retained agency promotes the 12-attempt cadence, an existing roster of dormant partners beats a fresh tier-1 build.
Every ranking in this skill and its references is a default, not a law - it shifts with the segment, the list, and who executes it. Re-rank against the answers before presenting anything, and say out loud what moved.
## Workflow
1. Run the Interview; collect every answer before touching the list.
2. Qualify each prospect: audience fit first, then traffic/authority, then evidence of existing monetization. Treat "already promotes a competitor" as a positive signal, not a conflict. See [references/prospect-sourcing-and-qualification.md](references/prospect-sourcing-and-qualification.md).
3. Run a manual brand-safety screen - trademark bidding, coupon-injection/adware, spam sites - and drop failures before any outreach.
4. Verify prospect sites yourself if you can browse the web; otherwise ask the user for metrics from their backlink/link-intersect or publisher-discovery tooling.
5. Tier the survivors (1/2/3) per the sourcing reference; tier drives personalization depth, cadence length, and the order the week's hours are spent - tier 1 to exhaustion first, then down.
6. Segment the list by jurisdiction; apply each segment's outreach regime. Flag Canadian and German prospects - no cold email to them without a documented consent basis. See [references/outreach-compliance.md](references/outreach-compliance.md).
7. Brainstorm the pitch angle before drafting: enter brainstorming mode and propose 2-3 candidate angles with trade-offs and a recommendation, in the manager's own vocabulary (prospect list, pitch angle, sequence, activation).
8. Ask brainstorming questions one at a time; write no message until the manager explicitly picks an angle.
9. Draft the first touch per tier and segment, following [references/pitch-anatomy.md](references/pitch-anatomy.md). Every message references one specific, verifiable thing about that prospect - never fabricated familiarity.
10. Draft the follow-up sequence with rotating angles and a breakup touch, following [references/sequence-and-cadence.md](references/sequence-and-cadence.md).
11. Run your preferred humanizer skill over every drafted message. Never ship raw first-draft model output as final - it reads as the mass template affiliates delete on sight.
12. Self-check every message against the Quality gate below; iterate until every item passes on every message.
13. Present the plan section by section - tiers, angle, first touch, sequence, tracking - and validate each with the user before finalizing.
14. Hand off the full artifact (next section) including the pipeline-tracking plan.
15. If your harness has persistent memory, memorize the approved angle, brand voice, commission facts, and prospect tiers - later runs then skip straight past the interview.
## What to lead with - and what to withhold
Lead with one audience-fit reason: why this program fits _their_ audience, stated in one sentence. Then the economics, stated plainly - affiliates evaluate economics early, so make the commission easy to find rather than burying it.
- B2B SaaS: lead with recurring commission and the cookie/attribution window; add one proof the product converts (conversion rate, review credibility). CTA skews reply-for-info or booked call.
- B2C ecommerce/DTC: lead with order value, earnings-per-click if known, and seasonal/promo fit. CTA skews apply link or pre-approved account.
- Identical for both: personalization depth, the one-ask rule, message length, follow-up discipline, and every legal constraint. Only the proof points, CTA, and incentive framing diverge.
Withhold, always:
- The feature dump.
- Unearned-riches earnings math ("you could make $X/month").
- Long text.
- Cliché "partnership proposal" framing.
Documented practitioner guidance is unanimous that overlong first emails and hypothetical earnings calculations kill replies.
## Expected output
Deliver one structured artifact:
```
RECRUITMENT OUTREACH PLAN - <program>, <date>
Prospect tiers : tier 1/2/3 segments, counts, qualification rationale per tier
Legal segments : jurisdiction buckets + regime applied to each
Chosen angle : approved pitch angle + why it beat the alternatives
First touch : subject + body, one variant per tier/segment
Sequence : table - touch / day / channel / angle / message summary
Breakup touch : final message + what would reopen the thread later
Tracking plan : pipeline stages, where tracked, review cadence, KPIs + targets
```
## Cadence
Two candidate cadences for affiliate recruitment:
- The 12-attempt cadence: follow up 7 days after first contact, then weekly, closing the file after ~12 attempts over ~3 months, rotating channels (email, social DM, contact form) across attempts.
- The 3-5 touch cadence: escalating gaps (day 0 / 3 / 7 / 14 / 21-28).
Both share these core principles:
- A single touch is ignored, not rejected - non-response usually means busy.
- Follow-ups are short (1-2 sentences).
- Each follow-up adds a new angle.
- A sent breakup email is honored.
Choose on manager hours, not on which source sounds more thorough:
- efficiency (replies per manager hour): `5 touches / ~4 weeks > 12 attempts / ~3 months`
- value (share of the list eventually reached): `12 attempts > 5 touches`
- effort (most first): `12 attempts > 5 touches`
- compliance cost (most first): `12 attempts > 5 touches`
Default to 5 touches over ~4 weeks for the standard list - four value touches plus the mandatory breakup, which lands day 21-28 and is what pushes the window past three weeks. The 12-attempt cadence costs roughly two and a half times the sends plus a per-attempt channel hunt, which makes it a standing job rather than a campaign.
It is also what this order starves: top of the value line, top of the effort line, last in the ratio, so it never wins a round on its own. Promote it deliberately for tier-1 prospects the manager both names and has the weekly hours for.
Delete both cadences rather than shorten either one when a prospect has no documented consent basis - passive recruitment is the only route there. See [references/sequence-and-cadence.md](references/sequence-and-cadence.md).
## Quality gate
Score every message in the sequence against all eight items. Pass threshold: 8/8 on every message. Iterate - redraft, re-run the humanizer - until no item fails.
1. Names one specific, verifiable fact about this prospect (their content, what they promote). No fabricated familiarity.
2. Exactly one ask, matching a CTA the manager confirmed they can honor.
3. First touch under 120 words; follow-ups under 50. (Working caps, not affiliate-specific published standards, but consistent with general cold-outreach research - see [references/pitch-anatomy.md](references/pitch-anatomy.md).)
4. Commission facts match the interview answers exactly - never rounded, never embellished.
5. No feature dump, no hypothetical earnings math, no "partnership proposal" cliché.
6. Sender identity, physical address where required, and a working opt-out satisfy the prospect's jurisdiction; no Canada/Germany cold email without a consent basis.
7. Angle rotates across the sequence; no "just checking in" touch.
8. Reads human aloud after the humanizer pass.
## KPIs
- Outreach-side: reply rate and application rate per tier and per angle. Expect cold-email-norm reply rates (roughly 3-9%, from general cold-outreach studies - not affiliate-specific data).
- Program-side, the KPI that actually matters: the share of recruited affiliates that become sales-active - the "activity index" (practitioner benchmark: ~20% of affiliates producing at least one click a week in a mature program; self-reported, not independently measured).
- Applications and approvals alone are vanity metrics - a recruit who never promotes cost you the outreach and returned nothing.
- Track the outreach pipeline (contacted → replied → applied → activated) in a CRM or spreadsheet; program dashboards show approvals and payouts, not outreach. Review weekly during a campaign.
## Common failure modes
| Failure | Fix |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------- |
| Mass blast from one generic template | Tier the list; personalize per prospect; small batches |
| Leading with commission % alone, no audience fit | One fit sentence first; economics stated plainly right after |
| Fabricated familiarity ("long-time fan of your work") | Cite one verifiable specific, or say honestly why you found them |
| Recruiting cannibalizing partner types (coupon-injection, adware, trademark bidders) | Brand-safety screen before outreach, not after joining |
| Slow application review souring the pitch | Commit to 24-48h review before launching outreach |
| Terms surfacing post-pitch that contradict the email | Gate on interview Q3; the email states only confirmed terms |
| No follow-up after the first email | Ship the sequence with the first touch, never the first touch alone |
| Promising lax disclosure to close a prospect | Never - affiliate promotions require disclosed material connections |
## Invocation Examples
- "Write the first-touch email and follow-up sequence for 40 comparison-site editors we want in our B2B SaaS program - 25% recurring for 12 months, already decided."
- "Our affiliate recruitment emails get no replies. Here are the last three we sent - rewrite them and fix the cadence."
- "We have a list of 200 prospects mixing UK sole traders, US bloggers and German media sites. Tier the list and tell me who we can cold-email."
## Reference
- `mbfinotti/partnerships-skills@influencer-outreach` - pitching one individually-vetted influencer or creator.
- `mbfinotti/partnerships-skills@affiliate-commission-structure` - designing the commission this skill only communicates.
- `mbfinotti/partnerships-skills@affiliate-program-terms` - the terms and conditions recruits sign.
- `mbfinotti/partnerships-skills@affiliate-onboarding-sequence` - everything after an affiliate is approved.
- `mbfinotti/partnerships-skills@affiliate-fraud-detection` - post-join traffic-fraud rules beyond the pre-outreach screen.
- `mbfinotti/partnerships-skills@affiliate-performance-dashboard` - the live program dashboard; this skill tracks only the outreach pipeline.