advertising-skills
Agent Skills for paid media: channel selection, budgets, audiences, creative, and measurement.
310
Install command
npx skhub add --skillset @mbfinotti/advertising-skillsIncluded Skills
Diagnose the root cause of an underperforming paid ad account - why the ads stopped working, why CPA went up, why ROAS dropped - instead of defaulting to 'increase the budget'. Weighs tracking, account structure, targeting, creative, bidding and budget, offer, and external forces, and returns a prioritised verdict with evidence and confidence. Covers B2B and B2C on search, paid social, video, and native. Use whenever the user mentions an ad account audit, a campaign structure review, wasted ad spend, rising cost per lead, or says their ads used to work - even if they never say 'diagnostic'. Diagnosis only, and it stops at the click: post-click page problems are mbfinotti/advertising-skills@paid-landing-page-audit and creative decay is mbfinotti/advertising-skills@ad-creative-fatigue.
00
Quantify and explain the discrepancy between ad platform reporting, an analytics tool, and the source of truth (CRM or order system), classifying every unit of the gap as timing, definitional, or unexplained residual. Use whenever the user says the numbers don't match, that the platform reports more conversions or revenue than the CRM or order system, or mentions cross-platform reconciliation, double-counted conversions, an attribution discrepancy, or asks whether a reporting gap is normal - even if they never say 'attribution'. Covers B2B (CRM-anchored) and B2C/ecommerce (order-system-anchored). Do NOT use to fix broken or missing tracking - use mbfinotti/advertising-skills@ad-conversion-tracking instead.
00
Turn a business's ICP and buying signals into a layered ad audience targeting plan - cold/broad prospecting, interest and in-market behavioural segments, lookalike/similar, first-party lists, and retargeting pools - each sized against platform audience floors, budgeted to the learning threshold, and kept from overlapping by exclusion rules. Use whenever the user mentions ad targeting, who to target with ads, audience tiers or layers, broad vs. layered targeting, audience overlap between campaigns, or mapping an ICP onto ad audiences - even if they never say 'audience'. Covers B2B and B2C. Do NOT use to pick the seed customers behind a lookalike (mbfinotti/advertising-skills@lookalike-audience-seeds) or to sequence retargeting messages (mbfinotti/advertising-skills@retargeting-funnel).
00
Choose the bidding policy per platform and goal - manual vs automated, cost-goal vs value/return-goal, when to switch, and how to set and move the target - written up as a policy with an evaluation window, change discipline, and a rollback trigger. Use whenever the user mentions a bid strategy, target CPA or target ROAS, smart or automated bidding, bid cap vs cost cap, portfolio bid strategies, seasonal bid adjustments, value-based bidding readiness, or delivery collapsing after a target change - even if they never say 'bidding'. Covers B2B and B2C. Do NOT use to split budgets across campaigns (mbfinotti/advertising-skills@ad-spend-allocation) or to track spend against a budget (mbfinotti/advertising-skills@ad-budget-pacing).
00
Track daily and weekly spend against a single campaign or account budget and flag under-pacing or over-pacing before it hurts results, reporting the pacing ratio, projected period spend, and the corrective daily spend behind every alert. Use whenever the user mentions budget pacing, spend tracking, burn rate, spend vs budget, projected month-end spend, underspending or overspending, or asks whether a campaign is on pace - even if they never say 'pacing'. Covers any ad platform, B2B and B2C, calendar-month or fixed-date flights. It flags and recommends; it never changes budgets or bids. Do NOT use to plan a scale-up (mbfinotti/advertising-skills@paid-media-scaling) or to set CAC/ROAS thresholds (mbfinotti/advertising-skills@ad-spend-guardrails).
00
Score and force-rank the openings of candidate video ads - from a script, transcript, storyboard, shot list, or a description of a finished cut - to decide which hooks deserve test budget, returning a ranked shortlist within the batch rather than an absolute performance prediction. Use whenever the user mentions a hook, the first 3 seconds, an ad opening, hook rate, thumbstop, attention scoring, or asks which hook to test or whether a hook works - even if they never say 'hook analyzer'. Covers B2B and B2C on any platform. Ends at the ranking: writing the scripts themselves is mbfinotti/advertising-skills@ugc-ad-scripts and static copy is mbfinotti/advertising-skills@ad-copy-variants.
00
Map the likely buying committee for an offer, deal size, and industry, and give each role a messaging angle plus the ad-targeting proxy - job function and seniority, account list, account-level intent - that actually reaches them, sequenced by buying stage. Use whenever the user mentions a buying committee or buying group, decision makers, influencers or blockers, who signs off, targeting the economic buyer or a champion, per-role ad messaging, or whether one broad message beats per-role targeting - even if they never say 'buying committee'. Covers B2B committees and multi-decider household purchases. Do NOT use to size or build the audiences themselves - use mbfinotti/advertising-skills@ad-audience-targeting instead.
00
Evaluate a fragmented paid-ads account and recommend which campaigns and ad sets to merge, which splits to preserve, and how to migrate without resetting learning across the account - it plans the consolidation, it never executes it. Use whenever the user mentions too many campaigns or ad sets, merging or restructuring an ad account, ad sets stuck in learning or learning limited, budget spread too thin, account simplification, or campaigns competing with each other - even if they never say 'consolidation'. Covers B2B and B2C on search, paid social, video, and professional-network platforms. Do NOT use to find out why the account underperforms in the first place - use mbfinotti/advertising-skills@ad-account-diagnostic instead.
00
Verify that conversion events are correctly configured, firing once, and deduplicated before a paid campaign launches, then turn the evidence into a GO / NO-GO decision. Covers tag debugging, test conversion tracing, browser/server event deduplication (including Conversions API setups), value and currency checks, conversion action status, consent handling, and test-data exclusion. Use whenever the user asks if their tracking works, mentions a pixel or tag check, conversions not showing up, duplicate conversions, or a pre-launch checklist - even if they never say 'conversion tracking'. Covers B2B lead gen and B2C ecommerce on any ad platform. Do NOT use to reconcile platform vs CRM numbers after launch - use mbfinotti/advertising-skills@ad-attribution-gap instead.
00
Turn one core value proposition into genuinely distinct ad copy variants - headline, primary text, description, and CTA combinations - each labelled with angle, awareness stage, formula, and version so test results stay attributable. A real variant is a new angle, never a reworded line. Use whenever the user asks to write ad copy, needs headline or CTA variations, wants copy to A/B test, has ads that all sound the same, or needs a search ad headline set or an ML asset pool - even if they never say 'variants'. Covers B2B and B2C. Do NOT use for video or creator scripts (mbfinotti/advertising-skills@ugc-ad-scripts), a designer brief (mbfinotti/advertising-skills@ad-creative-brief), or test design (mbfinotti/advertising-skills@ad-creative-test-plan).
00
Turn a campaign goal and an audience insight into a structured creative brief a designer, video editor, or UGC creator can execute - messaging angle, hook directions, art direction, specs, testing intent, and the handoff and revision loop. Covers B2B and B2C, with variants for static image, short-form video/UGC, and search/responsive text ads. Use whenever the user needs to brief a designer or creator, asks what an ad should say, or mentions messaging pillars, creative direction, or a design handoff - even if they never say 'brief'. Writes direction, never the finished asset: the ad copy itself is mbfinotti/advertising-skills@ad-copy-variants and shot-by-shot creator scripts are mbfinotti/advertising-skills@ugc-ad-scripts.
00
Decide whether a running ad creative is genuinely wearing out, or whether a confounder - budget change, learning-phase reset, audience saturation, auction CPM inflation, seasonality, tracking breakage - explains the decline, and return a verdict with confidence plus the highest-return remedy per unit of effort. Use whenever the user mentions creative or ad fatigue, wear-out, climbing frequency, dropping CTR, a rising CPA on an older ad, when to refresh creative, or whether to kill an ad - even if they never say 'fatigue'. Covers B2B and B2C across search, social, video, and native. Ends at the verdict: replacement creative belongs to mbfinotti/advertising-skills@ad-copy-variants and mbfinotti/advertising-skills@ugc-ad-scripts.
00
Design a pre-launch ad creative test plan - falsifiable hypothesis, isolation level, test cells with per-cell budgets, required sample, spend and duration, and kill/scale rules pre-registered before any money moves. Every cell carries an explicit read standard, so an underpowered screen is never dressed up as an A/B test. Use whenever the user wants to test ads, mentions an A/B or split test on creative, asks how much budget or how long a test needs, or mentions sample size, statistical significance, single-variable vs big-swing testing, or test cell structure - even if they never say 'test plan'. Covers B2B and B2C. Do NOT use to read results from a test already running - use mbfinotti/advertising-skills@ad-creative-fatigue instead.
00
Flag ad formats that are a poor fit or commonly misused for a given objective and platform - formats the objective does not even expose, formats built for a different funnel stage, formats the team cannot produce - then, post-launch, separate a format problem from a creative or targeting problem. Use whenever the user asks which ad format to use, mentions carousel, Stories, in-feed vs in-stream video, a funnel-stage mismatch, a pre-launch format check, or says a format 'isn't working' - even if they never say 'format fit'. Covers B2B and B2C, with explicit launch blockers. Do NOT use to choose the channel itself (mbfinotti/advertising-skills@ad-platform-selection) or to brief the creative (mbfinotti/advertising-skills@ad-creative-brief).
00
Build and maintain negative keyword lists from search term reports to cut wasted ad spend in paid search - n-gram query mining to surface irrelevant search terms, the right negative match types and exclusion levels (account, shared list, campaign, ad group), and a review cadence that avoids overblocking queries that convert. Use whenever the user mentions a search term or search query report, irrelevant clicks, junk traffic, wasted ad spend, or wants to exclude or block keywords - even if they never say 'negative keywords'. Covers B2B lead gen and B2C/e-commerce; needs the account's query data. Do NOT use for account-wide underperformance with no query-level evidence - use mbfinotti/advertising-skills@ad-account-diagnostic instead.
00
Decide which paid channel families fit a business's economics, audience, funnel stage, and budget at campaign setup - paid search, paid social, short-form video, connected TV, native/discovery, retail media, programmatic display, podcast/audio, paid review listings, B2B professional networks - including whether each is affordable against allowable CAC and payback. Use whenever the user asks where to spend a new ad budget, which platform to advertise on, how to build a paid channel mix, whether a channel is worth trying, or compares two ad channels - even if they never say 'channel selection'. Covers B2B and B2C. Do NOT use to split an ongoing budget across existing campaigns - use mbfinotti/advertising-skills@ad-spend-allocation instead.
00
Split a fixed total paid-media budget across campaigns, platforms, funnel stages, and audiences based on expected marginal return - the monthly or quarterly reallocation decision, for B2B and B2C. Use whenever the user asks how to split an ad budget, which channel or campaign should get more money, how to reallocate spend, how much to put behind prospecting vs retargeting, or mentions a portfolio split, marginal return, or diminishing returns - even if they never say 'allocation'. Do NOT use to raise the total budget on a proven campaign (mbfinotti/advertising-skills@paid-media-scaling), to track daily spend against a set budget (mbfinotti/advertising-skills@ad-budget-pacing), or to pick channels at setup (mbfinotti/advertising-skills@ad-platform-selection).
00
Set the organisation's top-level paid-media spend guardrails as written policy - maximum allowable CAC, minimum ROAS/MER floor, kill-switch thresholds, counter-metrics, who owns them and who may override them - each derived from contribution margin, payback, and cash runway rather than inherited from a dashboard. Use whenever the user asks what CAC they can afford, mentions a ROAS floor, spend guardrails, a kill switch, when to stop spending, or who approves a budget increase - even if they never say 'guardrails'. Covers B2B and B2C. Do NOT use to judge whether current CAC/ROAS is actually good (mbfinotti/advertising-skills@cac-roas-benchmark) or to monitor daily pacing (mbfinotti/advertising-skills@ad-budget-pacing).
00
Build and maintain a competitor swipe file - competitors' currently-running ads collected into a categorised, queryable library classified by format, hook type, offer/angle, awareness stage, and funnel stage, then converted into ranked creative test hypotheses. Accepts pasted ad text, described ads, screenshots, export files, or public ad transparency libraries. Use whenever the user asks what ads competitors are running, wants a competitor ad teardown, creative inspiration, or to know what is working in their category - even if they never say 'swipe file'. Covers B2B and B2C on any paid channel. Stops at ranked hypotheses: briefing is mbfinotti/advertising-skills@ad-creative-brief and test design is mbfinotti/advertising-skills@ad-creative-test-plan.
00
Plan and advance a paid-advertising career from the candidate side - media buyer, performance marketer, PPC specialist, creative strategist, growth marketer - covering the junior to lead ladder, the five real interview formats (live account audit, mental-maths case, metric diagnosis, take-home, behavioural), an NDA-safe results portfolio, platform certifications, in-house vs agency vs freelance, and promotion and pay conversations. Use whenever the user asks how to get into paid media or PPC, preps a media-buyer or growth interview, wants an ad portfolio, or weighs an agency vs in-house move - even if they never say 'career'. Do NOT use for the employer side of hiring - use mbfinotti/advertising-skills@advertising-hiring instead.
00
Build the complete hiring packet for a paid-advertising role - the rung decision (media buyer vs performance marketer vs growth marketer; creative strategist is its own role), an outcome scorecard, a 2-3 round interview loop with a judgment-first question bank, a time-boxed in-interview work sample, and a 30-60-90 ramp with staged spend authority. For the marketing leader or founder recruiting. Use for "hire a media buyer", "interview questions for a performance marketer", "paid media work sample", "scorecard for our first ad hire", or "30-60-90 for a new paid media hire". Does not source candidates, post jobs, run applicant tracking, or write offers, and does not cover the candidate side - that is the sibling mbfinotti/advertising-skills@advertising-career.
00
Before starting any paid advertising work, before each recurring advertising review, and whenever routing is unclear, route the task to the right skill of the advertising-skills collection - or say plainly that none fits - and bootstrap or resume the project's shared context artifact. Use at every advertising project start, on later sessions of the same project to re-route without re-interviewing, and whenever the user mentions a new ad campaign or paid media project, asks which advertising skill they need, or wants a periodic advertising check-in - even if they name no skill at all. Prefer this whenever several skills could apply, since the collection has three colliding clusters - the hirer-vs-candidate pair, the budget cluster, the creative cluster - and it returns a short-list plus an ordered skill chain rather than a single guess. Do NOT use when the task already maps cleanly to one skill, such as a pure account audit - that is mbfinotti/advertising-skills@ad-account-diagnostic.
00
Build a personalised, time-budgeted watch list of paid-advertising information sources - PPC and paid-social podcasts, newsletters, ad-platform release notes, communities, industry events, and media buyers worth following - with a verification method that keeps it fresh and a disclosure of what each source is selling. Use whenever a media buyer, PPC specialist, or growth marketer asks how to stay current on Google Ads, Meta, LinkedIn, TikTok, or Microsoft Ads changes, which PPC newsletters or paid-social podcasts to follow, which communities or conferences deserve their time, or who to follow in performance marketing - even if they never say 'radar'. Do NOT use for career planning - use mbfinotti/advertising-skills@advertising-career instead.
00
Compute a business's CAC and ROAS family metrics from real spend and outcome data, then judge whether the spend is healthy against three references - the business's own break-even, its own trailing history, and provenance-labelled external benchmarks - returning healthy, watch, unhealthy, or insufficient evidence. Use whenever the user asks whether their CAC is too high, whether a ROAS is good, what ROAS to aim for, whether ads are profitable, or mentions MER, blended CAC, payback period, or a spend health check - even if they never say 'benchmark'. Covers B2B/SaaS (cost per SQL, cost per closed-won, cohort lag) and B2C/ecommerce. Do NOT use to set those thresholds as policy - use mbfinotti/advertising-skills@ad-spend-guardrails instead.
00
Adapt ad messaging for conversational and AI-answer ad surfaces - the one-shot, context-aware ad occupying a single response slot inside an AI assistant reply or answer-engine result, where the copy is either rendered verbatim or rewritten by a model from the landing page and feed. Covers recommendation register, self-contained slot copy, situation-description targeting, grounding and disclosure discipline, and reading performance without creative-level reporting. Use whenever the user mentions ads inside ChatGPT or another AI assistant, sponsored answers, in-assistant ads, response-slot ads, or one-shot ad copy - even if they never say 'conversational ads'. Do NOT use for feed or search ad copy - use mbfinotti/advertising-skills@ad-copy-variants instead.
00
Select and size the seed customer list behind a lookalike, similar, or value-based audience - which customers to upload, how many, and whether the matched count (not the row count) clears the platform floor - with RFM and value-based selection, a negative-selection pass, a privacy and consent gate before any customer list upload, and a fallback ladder when the floor cannot be cleared. Use whenever the user mentions a lookalike or similar audience, a seed list, a customer list upload, match rate, an audience that is too small, or says their lookalike isn't working - even if they never say 'seed'. Covers B2B and B2C. Do NOT use to design the whole targeting tier structure - use mbfinotti/advertising-skills@ad-audience-targeting instead.
00
Audit a landing page receiving paid traffic against post-click conversion best practice and return a prioritised fix list - message match to the ad, above-the-fold clarity, form friction, trust, speed, mobile, policy risk - with every finding labelled by evidence class and no statistical claims on thin data. Use whenever the user says their ads get clicks but no conversions, asks why a landing page isn't converting, or mentions post-click experience, message match, conversion friction, form friction, or CPA rising after the click - even if they never say 'landing page audit'. Covers B2B and B2C on any platform. Audit only. Do NOT use for pre-click account problems - use mbfinotti/advertising-skills@ad-account-diagnostic instead.
00
Decide when a proven paid campaign has earned a budget increase, how large each step should be, how the ramp sequences over weeks and months, and how to avoid performance collapse on the way up - including readiness gates, vertical vs horizontal scaling, and rollback triggers. Use whenever the user asks whether to scale a campaign, how fast ad spend can rise, mentions a budget ramp, a scaling ceiling, or says performance collapsed after the budget was raised - even if they never say 'scaling'. Covers B2B and B2C. Do NOT use to split a fixed total across campaigns (mbfinotti/advertising-skills@ad-spend-allocation) or to track daily spend against a set budget (mbfinotti/advertising-skills@ad-budget-pacing).
00
Design a multi-stage retargeting sequence from a site's own funnel data - recency windows and behavioural-depth tiers per stage, a message and offer ladder for each stage, mutually exclusive audiences with exclusion logic, and per-stage frequency caps. Use whenever the user mentions retargeting or remarketing, cart or form abandonment, how long a retargeting window should be, frequency caps, a retargeting audience that is too small, or ads still showing to people who already bought - even if they never say 'funnel'. Covers B2B and B2C, and produces a stage-by-stage plan rather than campaigns built inside an ad platform. Do NOT use to design cold prospecting audience tiers - use mbfinotti/advertising-skills@ad-audience-targeting instead.
00
Plan a campaign that promotes an executive's or founder's existing organic posts as paid person-fronted ads - post selection, sequencing, audience and exclusions, permission and governance, budget, and measurement. Use whenever the user mentions thought leader ads, promoting a founder's or CEO's post, sponsoring an employee's or a creator's post, executive content amplification, running ads from a personal profile, or B2B trust ads - even if they never say 'thought leadership'. Covers B2B trust-layer campaigns on professional networks with pipeline-lens measurement, and B2C founder-led brands with direct-response measurement. Plans the campaign only, never the featured person's content: ad copy is mbfinotti/advertising-skills@ad-copy-variants.
00
Turn a product brief and target audience into UGC-style short-form video ad scripts a creator can film - hook, body, CTA - with 3-5 hook variants per concept written as spoken line plus on-screen text plus opening visual, with delivery notes and disclosure lines. Use whenever the user asks for a UGC ad or creator script, a short-form vertical video ad script, a founder-led video, employee-generated content, or a customer testimonial video script - even if they never say 'UGC'. Covers B2C creator scripts and B2B formats. Do NOT use to score existing hooks (mbfinotti/advertising-skills@ad-hook-analyzer), to write static ad copy (mbfinotti/advertising-skills@ad-copy-variants), or to brief a designer (mbfinotti/advertising-skills@ad-creative-brief).
00