---
name: metricool-social-media-management-social-performance-review
description: Review a Metricool brand's recent social and paid performance against its competitors and its own earlier periods, ranking what worked, what did not, and what to try next, using analytics, best-time and competitor data without changing anything. Use when the user asks how their posts or ads did, which content performed best, how they compare with competitors, what to post more of, or wants a monthly or weekly social report.
---

# Review social and paid performance

This job answers one question: **what should the team do differently next period, and what evidence supports it?** It is a read-only review. It never schedules, edits or deletes anything. A review that lists every metric but never ranks anything, or that ranks posts by reach without checking their size, has failed.

## 1. Pin down the scope before pulling numbers

Confirm with the user, and state back in the report:
- **Brand**: call `getBrandSettings` to see which brands are available. If the user runs several, do not blend them. Review one brand at a time, or ask which ones to include.
- **Period**: a specific date range, "last month", or "this quarter". Compare it with an equal-length earlier period so the change is visible. Note that a short window of a few posts gives noisy rankings.
- **Networks**: which networks matter for this review. Analytics is per network, so a single report can span several but each needs its own read.
- **Paid or organic**: ads campaigns are a separate question from organic posts. Keep them in separate sections.

## 2. Pull the metric catalogue before the metrics

Call `getAnalyticsAvailableMetrics` for each network you plan to review. Metric names differ by network. Do not assume that "engagement" or "reach" means the same thing on every platform, and do not compare a metric that exists on one network only. Pick the metrics you will rank by and write them down.

Then call `getAnalyticsDataByMetrics` for the chosen period and the comparison period. Keep the number of metrics small (about three to five per network) so the report stays readable.

## 3. Rank content by rate, not by raw totals

Raw totals reward the account with the most posts. For each network, compare content on rates or per-post averages:

- **Engagement rate per post**, where the catalogue offers it, is the default ranking.
- **Rank within a format** (Reels against Reels, carousels against carousels, video against images). A Reel with more views than a photo is expected; a photo with a higher engagement rate than a Reel is the real finding.
- **Look for outliers.** One post at three times the average is worth naming, but state what made it different (topic, hook, time, collaboration) only if the data shows it. Otherwise say "cause not established".
- **Discount tiny samples.** A format with two posts cannot establish a pattern. Say so instead of ranking it first.

## 4. Check timing against the data, not against habit

Call `getBestTimeToPostByNetwork` for each network. Treat its output as the account's own historical pattern, and compare it with when the top-performing posts actually went out. If the best-time suggestion and the real winners disagree, report the disagreement; do not quietly pick one.

## 5. Benchmark against competitors where it is fair

Call `getNetworkCompetitors` to see which competitors are tracked, then `getNetworkCompetitorsPosts` for the same period. Competitive comparison is only useful when:
- the competitor is in a similar niche and audience size, and
- you compare like with like: same network, same format, same period length.

Present the comparison as "this brand's engagement rate was X against a tracked competitor average of Y", and note that competitor data reflects only what they chose to post and what is publicly visible.

## 6. Review paid campaigns separately

Use `getFacebookAdsCampaigns`, `getGoogleAdsCampaigns` and `getTikTokAdsCampaigns` for the paid view. Report spend, results and efficiency for each active campaign, and rank campaigns against each other on the same measure. Do not compare a paid post's reach with an organic post's reach as if they were the same kind of number.

Report a campaign as "under-performing" only when the period is long enough and the comparison basis is stated. Recommending a budget change is outside this review's scope unless the user asks; flag it as a question for the user.

## 7. Turn findings into next steps, marked as suggestions

For each network, give at most three recommendations, each tied to a specific piece of evidence from steps 3 to 6. Good: "Carousels with a question in the first line averaged 2.1 times the engagement rate of other carousels across 9 posts; test two more next month." Weak: "post more engaging content."

Keep recommendations as suggestions. They are the user's decisions.

## Common patterns and traps

- **Vanity metric lead.** Reach or impressions rise and the report celebrates them while engagement or conversions fall. Check whether the audience that engaged grew, not just the audience that saw.
- **Survivorship in top-post lists.** Ranking only the top five posts hides the average. Always show the median or average alongside the best examples.
- **Comparing different periods of unequal length.** A 31-day month against a 28-day month distorts totals. Compare per-day or per-post figures.
- **Holiday and campaign spikes.** A one-off event inflates one week. Name it if it is in the data, or flag it as "cause not established".
- **Mixing paid and organic.** Ads results include spend-driven reach that organic posts do not get. Keep them apart.
- **Competitor data gaps.** A competitor who posted little in the period gives a misleading average. Report their post count alongside the comparison.
- **Platform changes.** Metric definitions or availability can change between periods. If the catalogue differs across the two periods, say the comparison may not be exact.
- **Confusing correlation with a cause.** "Video posts did better" is an observation. "Video is why" needs more than one period of evidence.

## Output

```
Brand: <name>   Period: <dates>   Comparison: <dates>
Scope note: <networks reviewed, what was excluded, sample sizes>

Headline: <one or two sentences, the most important finding and its strength>

Organic, by network
- <network>: top format <x> (engagement rate <a> vs <b> for others, n=<posts>)
  Best posts: <up to 3, with date and metric>
  Timing: <best-time suggestion> vs <actual top posts>
  Competitors: <comparison or "no comparable competitor data">

Paid
- <campaign>: <metric>, <metric>, compared on the same basis

Recommendations (suggestions for the user to decide)
1. <action> — evidence: <specific finding>
2. ...

Not established: <causes, small samples, missing data>
Changed nothing: this review was read-only.
```

## Rules

- Never schedule, create, update or delete a post, and never change campaign settings, from inside this review. Any such change needs the user's explicit yes, given as a separate request, and belongs in the scheduling job.
- Never switch the active brand or account silently. If a different brand is needed, ask first and wait for the user's explicit yes.
- Do not state a cause for a result the data does not establish.
- Do not present competitor figures as the competitor's own reporting; they are what is visible to the tool.
- Do not rank formats or campaigns on samples too small to support a ranking; say "too few to rank".

## Done when

- The scope (brand, period, comparison period, networks) is stated and matches what was actually pulled.
- Every ranking names its measure and its sample size.
- Each recommendation cites a specific finding and is labelled as a suggestion.
- The "Not established" line lists the causes, gaps and small samples that limited the conclusions.
- The report states plainly that nothing was changed.
