Install
$ agentstack add skill-aaron-he-zhu-aaron-marketing-skills-fit-scorer ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Fit Scorer
This skill helps you objectively evaluate how well an influencer matches your brand by scoring them across multiple dimensions. It turns subjective "gut feel" into data-driven partnership decisions.
Quick Start
Shortest invocation — score one influencer:
Score @[handle] for [brand/campaign] and tell me if they're a good fit
Common scenario — compare and rank a shortlist:
Compare and rank these influencers for [campaign]:
- @influencer1
- @influencer2
- @influencer3
Skill Contract
- Reads: brand/campaign context, target audience definition, campaign goal, and a shortlist of influencer handles (supplied by the user or carried over from
influencer-discovery). Optional prior audience profiles frommemory/influencer/audience-analyzer/and competitor partner benchmarks frommemory/influencer/competitor-tracker/. - Writes: a fit-score report (per-dimension raw scores, weighted totals, verdict, ranked comparison) to
memory/influencer/fit-scorer/YYYY-MM-DD-.md. - Promotes: top-ranked handles, final scores, and the go/pass verdict to
memory/hot-cache.mdso downstream skills pick the right targets. - Done when:
- Every shortlisted influencer has a weighted total score on the 1-5 scale with per-dimension justifications.
- A ranked comparison and an explicit verdict (Highly Recommended / Recommended / Consider / Pass) exist for each candidate.
- The report is saved to the family memory path and top picks are promoted to the hot cache.
- Primary next skill: [competitor-tracker](../../map/competitor-tracker/SKILL.md) — benchmark your top-scored picks against the creators competitors already partner with.
Handoff Summary
> Emit the standard shape from [skill-contract.md §Handoff Summary Format](../../references/skill-contract.md).
Data Sources
This family needs no live integrations (Tier 1). Fit Scorer works end to end by asking the user for the inputs it scores — handles, audience targets, brand values, and any metrics they have. Where a connector is available it sharpens the numbers, but none is required.
~~influencer database— pull follower counts, audience demographics, and partnership history instead of asking the user to paste them.~~social platform analytics— engagement rate, comment quality samples, posting cadence, and growth trend for authenticity checks.~~audience intelligence— real-vs-bot follower estimates and audience overlap with your target.~~CRM— prior contact, response reputation, and delivery history for the partnership-potential dimension.
With zero integrations, ask the user to supply each value the scoring tables request; the framework and weighting still produce a defensible ranking. See [CONNECTORS.md](../../CONNECTORS.md) for the free/keyless recipe per category.
Instructions
When a user requests influencer scoring:
- Define Scoring Framework
```markdown ### Scoring Framework
Brand/Campaign: [name] Campaign Goal: [awareness/consideration/conversion] Target Audience: [description]
### Scoring Dimensions
| Dimension | Weight | Description | |-----------|--------|-------------| | Audience Match | [%] | How well their audience matches target | | Content Quality | [%] | Production value and consistency | | Brand Alignment | [%] | Values, aesthetic, messaging fit | | Engagement Quality | [%] | Authenticity and depth of engagement | | Partnership Potential | [%] | Professionalism, history, availability | | Total | 100% | |
Scoring Scale: 1-5 (1=Poor, 2=Below Average, 3=Average, 4=Good, 5=Excellent) ```
C³ ACE alignment & veto gate. This skill is the C³ Creator scorer ([ACE](../../references/c3/ace-creator-benchmark.md)). Map the dimensions onto ACE: Audience Match → Audience; Engagement Quality → Engagement; and the Brand Safety sub-check (below) → Credibility (C1). Note: the value/aesthetic/messaging-fit part of Brand Alignment is creator × brand fit, which C³ scores in ROI.Orchestration (O1), not in ACE — ACE is brand-independent, so keep brand-fit out of the Credibility dimension. Before ranking, screen every creator against the three ACE veto items; any failure is disqualifying → verdict PASS (do not partner) AND cap the numeric Final Rating at the Poor / Below-Average band (≤ 2.9 / 5, i.e. ACE ≤ 59/100) so the score never contradicts the decline verdict. State the veto ID + evidence:
| Veto | Item | Fail condition | |------|------|----------------| | A2 | Real-Follower Rate | < 70% real followers, or audit refused (follower fraud) | | C1 | Brand Safety | disqualifying content / active scandal | | E2 | Engagement Authenticity | pod / bought engagement (see Engagement Quality below) |
- Score Audience Match
```markdown ## Audience Match Score
Influencer: @[handle]
### Target vs. Actual Comparison
| Attribute | Target | Influencer's Audience | Match | |-----------|--------|----------------------|-------| | Age | [target] | [actual] | ✅/⚠️/❌ | | Gender | [target] | [actual] | ✅/⚠️/❌ | | Location | [target] | [actual] | ✅/⚠️/❌ | | Interests | [target] | [actual] | ✅/⚠️/❌ | | Income/Purchasing | [target] | [actual] | ✅/⚠️/❌ |
### Audience Quality Assessment
| Metric | Value | Assessment | |--------|-------|------------| | Real follower % | [%] | [Good/Concerning] | | Active follower % | [%] | [Good/Concerning] | | Bot/spam % | [%] | [Good/Concerning] | | Audience growth | [trend] | [Organic/Suspicious] |
### Audience Match Score: [X/5]
Justification: [explanation]
Weighted Score: [X] × [weight%] = [weighted points] ```
- Score Content Quality
```markdown ## Content Quality Score
Influencer: @[handle]
### Production Quality
| Factor | Rating | Notes | |--------|--------|-------| | Visual quality | [1-5] | [notes] | | Audio quality (if video) | [1-5] | [notes] | | Editing skill | [1-5] | [notes] | | Creativity | [1-5] | [notes] | | Consistency | [1-5] | [notes] |
### Content Analysis
Posting Frequency: [X posts/week] Content Mix: [types and %] Caption Quality: [assessment] Hashtag Strategy: [assessment]
### Best Content Examples
- [Content 1]: [why it's good]
- [Content 2]: [why it's good]
### Content Concerns
- [Concern 1 if any]
- [Concern 2 if any]
### Content Quality Score: [X/5]
Justification: [explanation]
Weighted Score: [X] × [weight%] = [weighted points] ```
- Score Brand Alignment
```markdown ## Brand Alignment Score
Influencer: @[handle]
### Value Alignment
| Brand Value | Influencer Alignment | Evidence | |-------------|---------------------|----------| | [Value 1] | ✅/⚠️/❌ | [example from content] | | [Value 2] | ✅/⚠️/❌ | [example from content] | | [Value 3] | ✅/⚠️/❌ | [example from content] |
### Aesthetic Alignment
| Element | Brand Style | Influencer Style | Match | |---------|-------------|------------------|-------| | Colors | [brand] | [influencer] | [%] | | Tone | [brand] | [influencer] | [%] | | Visual style | [brand] | [influencer] | [%] |
### Messaging Fit
- Voice compatibility: [assessment]
- Topic relevance: [assessment]
- Audience overlap: [assessment]
### Brand Safety Check
| Risk Category | Assessment | Notes | |---------------|------------|-------| | Political content | [Low/Medium/High] | [notes] | | Controversial opinions | [Low/Medium/High] | [notes] | | Competitor mentions | [Low/Medium/High] | [notes] | | Adult content | [Low/Medium/High] | [notes] | | Legal/regulatory | [Low/Medium/High] | [notes] |
Overall Brand Safety: [Safe/Proceed with caution/Risk]
### Brand Alignment Score: [X/5]
Justification: [explanation]
Weighted Score: [X] × [weight%] = [weighted points] ```
- Score Engagement Quality
```markdown ## Engagement Quality Score
Influencer: @[handle]
### Engagement Metrics
| Platform | Followers | Eng. Rate | Industry Avg | vs. Avg | |----------|-----------|-----------|--------------|---------| | [Platform 1] | [count] | [%] | [%] | [+/-] | | [Platform 2] | [count] | [%] | [%] | [+/-] |
### Engagement Authenticity
| Indicator | Assessment | Evidence | |-----------|------------|----------| | Comment quality | [1-5] | [sample comments] | | Comment diversity | [1-5] | [unique commenters] | | Like/comment ratio | [ratio] | [normal/abnormal] | | Engagement timing | [pattern] | [organic/suspicious] | | Follower engagement % | [%] | [good/poor] |
### Engagement Pods/Buying Signs
- [ ] Sudden follower spikes
- [ ] Engagement from unrelated accounts
- [ ] Generic/emoji-only comments
- [ ] Inconsistent engagement patterns
- [ ] Follower/following ratio red flags
Authenticity Assessment: [Authentic/Some concerns/Suspicious]
### Response & Interaction
- Responds to comments: [Yes/Sometimes/Rarely]
- Community building: [Strong/Average/Weak]
- Two-way engagement: [assessment]
### Engagement Quality Score: [X/5]
Justification: [explanation]
Weighted Score: [X] × [weight%] = [weighted points] ```
- Score Partnership Potential
```markdown ## Partnership Potential Score
Influencer: @[handle]
### Partnership History
| Brand | Recency | Content Quality | Disclosure | Notes | |-------|---------|-----------------|------------|-------| | [Brand 1] | [date] | [rating] | [✅/❌] | [notes] | | [Brand 2] | [date] | [rating] | [✅/❌] | [notes] |
Observations:
- Partnership frequency: [X per month]
- Brand category mix: [categories]
- Competitor partnerships: [details]
### Professionalism Indicators
| Factor | Assessment | Evidence | |--------|------------|----------| | Contact availability | [Easy/Moderate/Difficult] | [contact info] | | Response reputation | [Responsive/Mixed/Unresponsive] | [if known] | | Content delivery | [On time/Variable/Problematic] | [if known] | | Creative quality in ads | [Strong/Average/Weak] | [examples] | | Disclosure compliance | [Always/Usually/Sometimes] | [examples] |
### Exclusivity & Availability
- Category exclusivity: [Yes/No - details]
- Competitor restrictions: [details]
- Upcoming availability: [if known]
### Estimated Value
| Metric | Estimate | Notes | |--------|----------|-------| | Estimated rate | [range] | Based on [followers/engagement] | | CPM estimate | [$X] | Industry average: [$X] | | Value assessment | [Good/Fair/Premium] | |
### Partnership Potential Score: [X/5]
Justification: [explanation]
Weighted Score: [X] × [weight%] = [weighted points] ```
- Calculate Final Score
```markdown ## Final Fit Score
Influencer: @[handle]
### Score Summary
| Dimension | Raw Score | Weight | Weighted Score | |-----------|-----------|--------|----------------| | Audience Match | [X/5] | [%] | [points] | | Content Quality | [X/5] | [%] | [points] | | Brand Alignment | [X/5] | [%] | [points] | | Engagement Quality | [X/5] | [%] | [points] | | Partnership Potential | [X/5] | [%] | [points] | | Total | | 100% | [X/5.00] |
### Score Interpretation
| Score Range | Rating | Recommendation | |-------------|--------|----------------| | 4.5-5.0 | Excellent | Priority partner | | 4.0-4.4 | Very Good | Strong candidate | | 3.5-3.9 | Good | Worth pursuing | | 3.0-3.4 | Average | Consider with caveats | | 2.5-2.9 | Below Average | Proceed with caution | | <2.5 | Poor | Not recommended |
### Final Rating: [X/5] - [Rating]
### Recommendation
Verdict: [Highly Recommended / Recommended / Consider / Pass]
Key Strengths:
- [Strength 1]
- [Strength 2]
- [Strength 3]
Key Concerns:
- [Concern 1]
- [Concern 2]
Best Use Case: [what type of campaign/content]
Expected Performance:
- Estimated reach: [X]
- Estimated engagement: [X]
- Cost estimate: [$X]
- Projected CPE: [$X]
```
- For Multiple Influencers - Comparison
```markdown # Influencer Comparison Report
Campaign: [name] Date: [date] Influencers Evaluated: [count]
## Ranking Summary
| Rank | Influencer | Platform | Followers | Final Score | Rating | |------|------------|----------|-----------|-------------|--------| | 1 | @[handle] | [platform] | [count] | [X/5] | ⭐⭐⭐⭐⭐ | | 2 | @[handle] | [platform] | [count] | [X/5] | ⭐⭐⭐⭐ | | 3 | @[handle] | [platform] | [count] | [X/5] | ⭐⭐⭐⭐ |
## Detailed Comparison
| Dimension | @[handle1] | @[handle2] | @[handle3] | |-----------|------------|------------|------------| | Audience Match | [X/5] | [X/5] | [X/5] | | Content Quality | [X/5] | [X/5] | [X/5] | | Brand Alignment | [X/5] | [X/5] | [X/5] | | Engagement Quality | [X/5] | [X/5] | [X/5] | | Partnership Potential | [X/5] | [X/5] | [X/5] | | Final Score | [X/5] | [X/5] | [X/5] |
## Visual Comparison
`` Audience Match |████████░░| |██████░░░░| |████████░░| Content Quality |██████░░░░| |████████░░| |██████░░░░| Brand Alignment |████████░░| |██████░░░░| |████████░░| Engagement |██████░░░░| |████████░░| |████████░░| Partnership |████████░░| |██████░░░░| |██████░░░░| @handle1 @handle2 @handle3 ``
## Recommendation
For this campaign, prioritize:
- @[handle] - [reason]
- @[handle] - [reason]
Consider combining:
- [Influencer A] for [purpose] + [Influencer B] for [purpose]
Pass on:
- @[handle]: [reason]
```
Example
User: "Compare these 3 influencers for our sustainable fashion brand: @ecofashionista, @greenwardrobe, @sustainablesarah"
Output: [Detailed comparison with scores, leading to clear recommendations with @sustainablesarah ranked #1 due to highest audience match and engagement authenticity]
Custom Weighting
Adjust weights based on campaign goals:
| Campaign Goal | Audience | Content | Brand | Engagement | Partnership | |---------------|----------|---------|-------|------------|-------------| | Awareness | 30% | 25% | 15% | 20% | 10% | | Engagement | 20% | 20% | 15% | 35% | 10% | | Conversion | 35% | 15% | 20% | 20% | 10% | | Brand Building | 20% | 25% | 30% | 15% | 10% | | Long-term | 25% | 20% | 25% | 15% | 15% |
Tips for Success
- Be consistent - Use same criteria for all influencers
- Gather data - More data = more accurate scores
- Consider context - Scores are relative to campaign needs
- Update regularly - Influencer quality changes over time
- Trust but verify - Spot-check high scores before outreach
Reference Materials
- [skill-contract.md](../../references/skill-contract.md) — shared contract and handoff summary format.
- [state-model.md](../../references/state-model.md) — memory tiers and save-path conventions.
- [CONNECTORS.md](../../CONNECTORS.md) — free/keyless data recipe per connector category.
- Scoring rubric: the C³ benchmark — [c3-benchmark.md](../../references/c3-benchmark.md) (CVI rollup), [c3/ace-creator-benchmark.md](../../references/c3/ace-creator-benchmark.md) (the ACE Creator rubric this skill emits, incl. the A2/C1/E2 veto items applied above), and [c3/scoring-architecture.md](
…
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: aaron-he-zhu
- Source: aaron-he-zhu/aaron-marketing-skills
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.