skills/meta-analytics-ops/meta-testing-framework/SKILL.md
Designs structured A/B tests and content experiments for social media campaigns and organic content. Calibrated for Uganda/East Africa markets with limited budgets (UGX 50,000–200,000 per test). Invoke this skill when a client wants to know what content, creative, copy, or audience approach performs best before committing their full budget or monthly content plan to it. Also invoke when a client is seeing inconsistent results and needs a systematic method to identify what is working.
npx skillsauth add peterbamuhigire/social-media-skills meta-testing-frameworkInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A structured approach to experiment design, A/B testing, and result interpretation for social media content and campaigns in Uganda and East Africa.
SKILL.md; do not skip mandatory steps or required fields.references/ directory is added later, treat its files as the deeper source material and keep this SKILL.md execution-focused.Ask for all of the following before generating any test design:
Change only one element per test. If two elements change simultaneously — for example, a new image and a new caption — there is no way to know which change caused the difference in results. This rule is non-negotiable. Enforce it with the client even when they push back.
What breaks when multiple variables change:
Example of a correctly isolated test:
Require enough data before declaring a winner. The minimum thresholds are:
Meta Ads Manager displays a statistical confidence score in the A/B test results panel. Require a minimum of 90% confidence before acting on paid test results.
For organic posts on small accounts, statistical significance is rarely achievable. Use directional data — if one format consistently outperforms another across three or more tests, treat that as sufficient evidence to update the content plan.
Distinguish between statistical significance and practical significance.
A 2% improvement in click-through rate on a page with 500 monthly visitors produces 10 extra clicks. If each click is worth UGX 500, that is UGX 5,000 per month. The cost of running and tracking the test likely exceeds the gain. Apply this filter before recommending a test: ask whether a realistic positive result would produce a meaningful improvement in the client's business.
Apply the ROI formula from Bodnar and Cohen (2012): (TLV − COCA) ÷ COCA. If the test cannot move COCA (cost of customer acquisition) by a meaningful margin, deprioritise it.
Test elements in this order. Higher items produce larger improvements for the same effort.
Headline / hook — first line of caption or first 3 seconds of video. This is the single highest-leverage element. On Facebook and TikTok, users decide within 2–3 seconds whether to stop scrolling. Test a question-format hook against a statement hook, or a local cultural reference against a generic one. Example: "Tired of waiting for delivery?" vs "Same-day delivery is here."
Visual format — static image vs Reel vs carousel. In Uganda, Reels and short video consistently outperform static images for reach; however, static images often produce higher click-through for product offers. Test format before assuming video is always better.
Call to action — button text (if paid) or closing line (if organic). Test directive language against benefit-led language. Example: "Shop now" vs "See today's prices".
Audience segment — by age bracket, location (Kampala central vs greater Kampala vs upcountry), or declared interest. Keep the creative identical; only the audience definition changes.
Posting time — EAT morning window (7–9am, commute and pre-work) vs evening window (6–8pm, post-work). Note: WhatsApp and Facebook see a secondary peak at 12–1pm (lunch). Test within one timezone; cross-country tests require separate audience controls.
Caption length — short (under 50 words) vs long (over 150 words). Long captions can build authority for B2B and educational content; short captions typically perform better for product-led and entertainment content on TikTok and Instagram.
Hashtag set — branded only vs mixed (branded + category + niche) vs no hashtags. On Facebook, hashtags have minimal reach impact; on TikTok and Instagram, they contribute to discovery. Test in the relevant platform context.
Use one of the three templates below. Fill every field before the test begins.
Hypothesis: "Changing [element] from [A] to [B] will increase [metric]
because [reason]."
Example: "Changing the caption hook from a question to a
benefit statement will increase link clicks because our
audience responds to direct value cues."
Control: [Describe Ad A — creative, copy, format]
Variant: [Describe Ad B — single changed element only]
Platform: [Facebook / TikTok / Instagram]
Audience: [Define precisely — keep identical for both variants]
Budget split: 50/50 (recommended) or 60/40 if budget is under UGX 100,000
Total budget: UGX [amount] over [X] days
Duration: [Start date] → [End date] — minimum 7 days
Primary metric: [Reach / Engagement rate / Link clicks / Cost per result]
Decision rule: Declare the variant the winner if it outperforms the control
by at least [10%] with a minimum of [1,000 impressions per
variant] and [90%] confidence in Meta Ads Manager.
Next action: [What changes in next month's plan if the variant wins]
Hypothesis: [Same format as Template A]
Post A: [Description — format, hook, caption, CTA, hashtags]
Post B: [Description — single element changed]
Schedule: Post A on [date + time]. Post B exactly one week later at
the same time on the same day of the week.
Do not run both posts in the same week — audience overlap
distorts results.
Measurement: Screenshot metrics for both posts at exactly 48 hours
after each goes live. Record reach, likes, comments, shares,
saves, and profile visits.
Primary metric: Engagement rate = (likes + comments + shares) ÷ reach × 100
Decision rule: Whichever post produces a higher engagement rate is
directionally preferred. If the margin is under 5 percentage
points, treat as inconclusive and run a second round.
Next action: Carry the winning format into the following month's
content calendar.
Hypothesis: "Audience segment [A] will produce a lower cost per result
than segment [B] for [creative X] because [reason]."
Creative: [Identical for both — do not change any element]
Audience A: [Define precisely: age, location, interests, behaviours]
Audience B: [Define precisely: single dimension differs from Audience A]
Platform: [Facebook / TikTok]
Budget split: 50/50
Total budget: UGX [amount]
Duration: [Start date] → [End date]
Primary metric: Cost per result (paid) — e.g., cost per link click, cost per
lead form submission
Decision rule: The segment with the lower cost per result at end of test
period becomes the primary target audience for the next
campaign cycle.
Create a Google Sheets document with the following columns. Record every test, including inconclusive ones.
| Column | What to enter | |---|---| | Test # | Sequential number — T001, T002, T003 | | Hypothesis | Full hypothesis statement as written in the template | | Element Tested | Hook / Format / CTA / Audience / Time / Caption length / Hashtags | | Control | Brief description of the A variant | | Variant | Brief description of the B variant | | Platform | Facebook / TikTok / Instagram / Organic | | Start Date | DD/MM/YYYY | | End Date | DD/MM/YYYY | | Metric | The single primary metric used to judge the test | | Control Result | Numeric result for A — e.g., 3.2% engagement rate | | Variant Result | Numeric result for B | | Winner | A / B / Inconclusive | | Confidence | % confidence from platform (paid), or "Directional" (organic) | | Action | What changed in the content plan or next campaign as a result |
Add a Notes column for anomalies: a post that went viral, a public holiday, a platform outage, or a news event that may have distorted results.
Navigate to: Ads Manager → Experiments → A/B Test. Meta reports:
Require 90% confidence as the minimum threshold when managing the account manually. Do not act on results before the scheduled end date, even if Meta displays a winning variant early.
Run a maximum of 1–2 tests per month. Running more simultaneously creates audience overlap (for paid) and cognitive overload in the tracking process. Prioritise tests with the highest potential impact on the client's primary metric.
Do not start a test during the following periods — results will be distorted by abnormal audience behaviour:
| Period | Approximate dates | Why to avoid | |---|---|---| | Ramadan | Varies (lunar calendar) | Significant shift in online activity hours and purchasing patterns | | Christmas / New Year | 20 Dec – 5 Jan | Elevated emotional content consumption; distorts engagement benchmarks | | Uganda Independence Day | 9 October | Spike in patriotic and political content suppresses other categories | | School holidays (Uganda) | Jan, Apr, Aug, Dec | Audience composition shifts significantly for youth-skewed products | | Election periods | As declared | Organic reach suppressed; political content dominates feeds | | End of financial year | June (public sector) | B2B engagement drops sharply |
If a test is already running when one of these periods begins, note the dates in the tracking sheet and weight results accordingly.
Record every test result, including inconclusive tests. Over 6–12 months, the tracking log becomes the most valuable strategic asset in the account. Patterns emerge: certain content formats consistently underperform, certain audience segments produce lower costs, certain posting times hold up across seasons. These patterns are not visible without a complete record.
Most clients in Uganda and East Africa cannot sustain the sample sizes required for statistical significance in paid tests. The practical approach:
Small accounts (under 5,000 followers or under UGX 500,000/month in ad spend) will rarely achieve statistical significance. Apply the following adjustments:
95%+ of East African users view social media content on mobile. Before publishing any test variant:
Output from this skill meets the standard when:
meta-reporting/SKILL.md — use after test completion to interpret results within the
broader monthly reporting cycle and format findings for client presentationmeta-roi-framework/SKILL.md — apply the ROI formula when evaluating whether a test's
potential upside justifies the time and budget investment before designing the test09-campaign-strategy/SKILL.md — consult when test results need to be translated into
campaign strategy decisions or when structuring a test within a broader campaign architectureAcademic references:
tools
Generates a foundational social media training guide for clients and their teams who are completely new to social media marketing, or who have been posting without any strategic understanding. Invoke when the user says "write a social media basics guide", "create a beginner training document", "the client doesn't understand social media", "start-here training", or when a client needs to understand social media before any strategy or content work begins. Distinct from training-client-team (operational handover of an existing strategy) and training-diy-content (content creation for self-managing clients). This skill covers what social media is, how it works, and how to approach it intelligently — the conceptual foundation that makes all downstream strategy work land.
tools
Generates a practical smartphone video production training guide for East African clients and content teams. Covers shooting, audio, lighting, framing, editing, and platform-specific formats using only a smartphone — no professional equipment required. Invoke this skill when a client or their team needs to produce their own social video content and requires a hands-on, jargon-free training document tailored to EA field conditions.
tools
Generates a complete DIY content creation handbook for clients who want to manage some or all of their own content after the initial strategy engagement. Invoke when the user says "write a DIY content guide", "create a self-managed content handbook", "the client wants to manage their own content", or when a handover guide is needed at the end of a strategy engagement. Output is a self-contained reference document — not a training presentation — that the client keeps and uses independently.
tools
Generates a complete 2-hour in-person training workbook for a client's internal team — employees who will assist with content creation or community management. Invoke when the user says "create a team training guide", "write a staff training workbook", "onboard our internal team on social media", or needs a printable workshop document for client employees. Output is a structured, print-ready workbook — not a presentation deck.