Social Media Ad Campaign Checklist

Campaign Strategy

    Pick one objective per campaign — awareness, traffic, leads, conversions, or app installs — and one primary KPI (CPA, ROAS, CPL, or CPM). Mixing objectives across one campaign is the fastest way to make results uninterpretable. Document the target value and the floor at which you'll pause.

    Anchor on the ICP doc — firmographics, persona titles, pain points, intent signals. For B2B on LinkedIn, list the target job titles, seniority, company size, and industries. For B2C, list age range, geo, interests, and lookalike seeds. Note any audience exclusions (existing customers, recent purchasers, employees).

    Pull active creatives from Meta Ad Library and LinkedIn Ad Library for 3-5 named competitors. Note their hooks, offers, formats, and how long each ad has been running (longer = working). Capture screenshots in the campaign brief.

    Match platform to audience and objective: LinkedIn for B2B titles, Meta for broad B2C reach, TikTok for under-35 and creator-style content, Reddit for niche communities. Choose formats per platform — single image, carousel, video, Reels, Spark Ads, Sponsored Messaging, lead-gen forms.

    One-page brief: objective, audience, offer, value prop, key proof points, CTA, landing page URL, must-include legal/disclaimers, brand voice notes, and the 3-5 creative variants to produce. The brief is what creative and media will execute against — vague briefs cause rework.

Creative Development

    Build to the current ad-spec sheet for each placement: 1:1 and 4:5 for Meta feed, 9:16 for Stories/Reels/TikTok, 1.91:1 for LinkedIn single-image. Keep critical text and logos inside the safe area; expect Stories/Reels overlays to crop the top and bottom 14%.

    Produce at least 3 hook variants per ad set — one pain-led, one benefit-led, one social-proof. Headlines under platform limits (Meta 27 chars, LinkedIn 70 chars, TikTok 100 chars). Match copy to audience awareness stage.

    Vary one element at a time — creative, headline, or audience — not all three. Plan for 3-5 ad variants per ad set so the platform's algorithm has room to optimize. Document the hypothesis being tested for each variant in the campaign brief.

    Brand reviews tone, logo lockup, color palette per the brand book. Legal reviews comparative claims, testimonials (substantiation file required), regulated-industry disclaimers, and FTC disclosure if any influencer or paid endorser is featured. Slack DMs aren't approval — use a timestamped record.

    One CTA per ad — "Learn More", "Sign Up", "Shop Now" — matched to landing-page intent. If the ad features a paid creator or influencer, include #ad at the top of the caption (not buried in hashtags) and use the platform's Paid Partnership tag per FTC Endorsement Guides.

Tracking and Pre-Launch QA

    Use the team's UTM convention — lowercase, dashes not underscores, consistent source/medium/campaign values. Drift across campaigns makes GA4 reports uncomparable. Build links through the shared link-builder so naming is enforced.

    Use Meta Pixel Helper and Events Manager Test Events to confirm Page View, Lead, and Purchase events fire on the correct pages. Common mistake: a "Sign up" event firing on email-blur instead of submit, inflating conversions 5x. Confirm CAPI deduplication is working if both pixel and server-side are sending.

    Validate the GA4 conversion event in DebugView. For EU/UK traffic, confirm the GTM tag is gated by Consent Mode v2 — pixels must not fire before the CMP records consent. A pre-consent pixel fire breaks the privacy promise on the banner.

    Click every ad's destination URL on iOS and Android. Check page load under 3s, form submission, thank-you page conversion fire, and that the offer/headline matches the ad. Mismatched message between ad and landing page tanks quality score and conversion rate.

Budget and Launch

    Split budget by platform and audience based on prior-campaign CPA. Reserve 15-20% for testing new creatives or audiences. For Meta, ensure each ad set has enough daily budget to exit learning phase (~50 conversions/week per ad set).

    Set start and end dates explicitly. For B2B LinkedIn, daypart to business hours in target geos. Cap frequency on retargeting audiences (3-5 impressions per user per week) to avoid burnout and ad fatigue.

    Push live and confirm within 2 hours that ads are serving (impressions accruing, no "Ad Set May Get Zero Conversions" warnings, no policy rejections). Spot-check the rendered ad on each placement — Stories crop, carousel order, video autoplay.

    If ads aren't delivering: check policy review status, audience size (under 1K is too narrow for most placements), bid vs. floor, and account/billing status. For policy rejections, request review or revise the flagged element — don't republish identical creative.

In-Flight Optimization

    Don't optimize during the first 72 hours — algorithms need data. After 72 hours, review CPM, CTR, CVR, and CPA against benchmarks. Resist the urge to pause underperformers in the first 48 hours; you'll reset the learning phase and burn budget restarting.

    Pause ads where CPA exceeds the floor by more than 30% over a 7-day window with statistical significance. When pausing, also lower bid to floor and set frequency cap to 0 — paused ad sets can keep serving briefly. Shift budget to top-CTR creative.

    Watch frequency and CTR decay. When frequency hits 3-4 on prospecting or CTR drops 20% week-over-week, swap in fresh creative variants. Ad fatigue is the single most common cause of mid-campaign CPA inflation.

    Daily check on ad comments — respond within 24 hours, hide or report spam, escalate complaints to community/CX. For programmatic placements, check brand-safety reports (DoubleVerify, IAS) for blocklist violations and update inclusion/exclusion lists.

Post-Campaign Analysis

    Pull spend, impressions, CTR, CPA, CVR, and ROAS from each platform and reconcile against GA4 and the CRM (HubSpot, Salesforce). Cross-platform attribution will disagree — document the source of truth for the final number.

    Rank ads by primary KPI, not vanity metrics. Note the hooks, formats, and audiences that won so they feed the next campaign brief. Save winning creatives to the DAM tagged with their performance data.

    One-page retro: objective vs. actual, what worked, what didn't, what we'd change, and 3 specific learnings to apply next time. Vague "we should iterate faster" entries don't compound — name the specific creative format, audience, or platform decision to repeat or avoid.

    Engaged-but-unconverted users go into a retargeting audience for the next flight. Form-fill leads route into the MAP nurture matched to the offer. Confirm CRM sync fired for every lead — orphaned leads in the ad platform are a common audit finding.

Use this template in Manifestly

Start a Free 14 Day Trial
Use Slack? Start your trial with one click

Related Marketing Checklists

Ready to take control of your recurring tasks?

Start Free 14-Day Trial


Use Slack? Sign up with one click

With Slack