# 7-day zero-cost promotion battle plan

Manual operating plan for World Cup Match Lab. Use this for a 7-day promotion sprint without paid traffic, automation, scraping, unsolicited DMs, or posting in communities that ban self-promotion.

Positioning to keep in every post:

- Chinese: World Cup Match Lab 是一个世界杯资料馆：无博彩、无直播链接，帮助球迷赛前看懂对阵、赛后看懂比赛。
- English: World Cup Match Lab is a no-betting, no-stream-links World Cup match library for understanding matchups before kickoff and revisiting matches after full time.

## Daily assets

Prepare these before each posting block:

| Asset | URL or source | Use |
| --- | --- | --- |
| Primary match share page | `https://worldcupmatchlab.com/share/matches/{matchId}/` | Short-form platform links, group posts, match-card preview. |
| Full match page | `https://worldcupmatchlab.com/matches/{matchId}/` | Zhihu, Reddit, Facebook groups, Discord resource channels. |
| Match card | `https://worldcupmatchlab.com/match-card/{matchId}.svg` | Export as 1080x1080 PNG if the platform does not render SVG. |
| Daily page | `https://worldcupmatchlab.com/daily/` | General daily discovery and bio-link fallback. |
| Team page | `https://worldcupmatchlab.com/teams/{teamCode}/` | Evergreen discussions when there is no safe match thread. |
| Short video | `promo/world-cup-match-lab-30s.mp4` | Bilibili, Xiaohongshu, X optional video post. |

## UTM rules

Use one campaign for the whole sprint so 7-day results can be compared cleanly.

Template:

```text
https://worldcupmatchlab.com/{path}/?utm_source={source}&utm_medium=social&utm_campaign=world_cup_2026_7day_zero_cost&utm_content=d{day}_{platform}_{theme}
```

Rules:

- `utm_source`: platform only, lowercase: `wechat`, `wechat_official`, `xiaohongshu`, `zhihu`, `bilibili`, `x`, `reddit`, `facebook`, `telegram`, `discord`.
- `utm_medium`: always `social` for organic manual posts.
- `utm_campaign`: always `world_cup_2026_7day_zero_cost`.
- `utm_content`: day, platform, and content angle, for example `d2_x_match_card`.
- Do not use URL shorteners. Keep the domain visible to avoid misleading-link risk.
- If a platform suppresses links, use the clean domain in the caption and keep the full UTM link in the log as `not-clickable`.

Examples:

```text
https://worldcupmatchlab.com/share/matches/{matchId}/?utm_source=x&utm_medium=social&utm_campaign=world_cup_2026_7day_zero_cost&utm_content=d2_x_match_card
https://worldcupmatchlab.com/daily/?utm_source=bilibili&utm_medium=social&utm_campaign=world_cup_2026_7day_zero_cost&utm_content=d1_bilibili_daily_intro
https://worldcupmatchlab.com/teams/{teamCode}/?utm_source=reddit&utm_medium=social&utm_campaign=world_cup_2026_7day_zero_cost&utm_content=d3_reddit_team_context
```

## Platform posting windows

Default timezone is Asia/Shanghai. For global communities, the table also gives a target local-time intent. Shift by 30-60 minutes if a match kickoff would make the post too early or too late.

| Platform | Daily publish window, Asia/Shanghai | Target local intent | Best content shape | Daily cap |
| --- | --- | --- | --- | --- |
| WeChat group | 18:20-18:50 | Pre-evening chat in China | One match card PNG plus one link | 1 relevant group |
| WeChat official account | 21:30-22:10 | Owned audience evening read | Short owned-account article | 1 post, only if account exists |
| Xiaohongshu | 19:00-20:00 | China evening discovery | 3-image note or 15-30s screen recording | 1 note |
| Zhihu | 20:00-21:20 | China evening answer reading | Method-first answer, link after value | 1 answer |
| Bilibili dynamic | 20:30-21:30 | China video/dynamic browsing | 30s video or match-card dynamic | 1 dynamic |
| X | 07:30-08:30 and 20:30-21:30 | US/EU morning or live football feed | 1 short post or 2-post thread | 1 thread |
| Reddit | 08:30-10:30 | US evening community reading | Text post or comment-only resource | 1 community max |
| Facebook | 21:00-22:00 | Owned profile/page evening | One image plus one link | 1 owned page/profile, group only if allowed |
| Telegram | 22:00-22:30 | Active group discussion | Short image plus link | 1 allowed group |
| Discord | 22:30-23:00 | Matchday/resource channels | Short resource note | 1 server channel |

Stop rule: stop all link posts for the day if two communities remove, hide, challenge, or downrank the same link. Switch to replies without links, data corrections, or preparing tomorrow's asset.

## 7-day content plan

Use `seven-day-posting-calendar.csv` as the executable checklist. This table is the strategy layer.

| Day | Theme | Primary goal | Main link type | Proof point | Copy angle |
| --- | --- | --- | --- | --- | --- |
| Day 1 | Clean match library intro | Explain what the site is and is not | `/daily/` or homepage | No betting, no streams, public-source context | "赛前补课 / understand the matchup before kickoff." |
| Day 2 | One match card | Drive clicks to one concrete matchup | `/share/matches/{matchId}/` | Match card, kickoff time, key players | "3 minutes before kickoff." |
| Day 3 | Team context | Find evergreen football discussions | `/teams/{teamCode}/` | Team radar, squad, schedule | "Not a pick, a team briefing." |
| Day 4 | How to use the workflow | Teach daily -> share -> match page | `/share/` or `/daily/` | Screen recording | "Pick a match, open card, read context." |
| Day 5 | Recap habit | Show post-match value | `/matches/{matchId}/` | Score, source notes, recap context | "After full time, revisit what changed." |
| Day 6 | Feedback request | Earn community input without hard selling | Homepage or `/matches/` | Missing context checklist | "What would make this more useful for fans?" |
| Day 7 | Weekly roundup | Consolidate learnings and winners | `/daily/` plus one best page | Top match, top question, top asset | "One week of clean World Cup context." |

## Daily execution checklist

1. Pick one primary match from `/daily/` and one backup match.
2. Export the primary match SVG to PNG and take one phone screenshot of the share page.
3. Fill the day's rows in `seven-day-posting-calendar.csv`: `match_id`, `team_code`, final URL, community/account, and owner.
4. Publish only in the scheduled platform windows.
5. Log each post within 10 minutes in `platform-post-log.csv`.
6. Next day, fill metrics in `seven-day-review-scorecard.csv`.
7. Keep a one-line note: "What question did people ask that the site should answer better?"

## Platform playbooks

### WeChat group

Post time: 18:20-18:50 Asia/Shanghai.

Use:

- Day 1: daily page intro.
- Day 2: primary match card.
- Day 5: recap only after the match page is updated.

Template:

```text
今晚如果群里聊 {match}，可以先看这页资料卡。
本地开球时间、两队背景、关键球员和不确定点放到一页了。
不是直播站，也没有博彩内容，只做世界杯资料整理。

{utm_link}
```

Rule check:

- Share in one football-relevant group only.
- Ask first if the group is private, quiet, or does not normally accept links.
- Do not ask anyone to forward, vote, repost, or help push traffic.

### Xiaohongshu

Post time: 19:00-20:00 Asia/Shanghai.

Use:

- Cover: `世界杯赛前 3 分钟看懂这场球`.
- Images: match card, daily page screenshot, match page screenshot.
- Link: if clickable links are limited, put the domain plainly and track the full UTM in the log.

Template:

```text
世界杯期间最怕打开比赛才发现自己完全不了解这场为什么值得看。

我今晚会先看：
1. 本地开球时间和比赛阶段
2. 两队背景和近期信息
3. 关键球员和不确定点
4. 赛后有没有复盘入口

World Cup Match Lab 更像一个赛前资料馆，不是直播站，也不做博彩预测。

{utm_link}
```

Rule check:

- Do not use fake user stories, fake results, or "最准预测".
- Do not tell users to bypass link controls.
- Avoid gambling, betting, odds, "稳赚", or traffic-gaming language.

### Zhihu

Post time: 20:00-21:20 Asia/Shanghai.

Use:

- Answer only a relevant question.
- Lead with the method, then include one link as an example.

Template:

```text
如果不是为了找直播，而是想在开球前快速看懂一场比赛，我会按三个层次看：

第一，看比赛时间、阶段和基本背景。
第二，看两队信息和关键球员，不急着把问题简化成谁赢。
第三，看来源和不确定点，避免把模型或单一观点当结论。

我整理的 World Cup Match Lab 就是按这个思路做的。它不是直播站，也不提供博彩建议，更像一个世界杯资料桌。

例如 {match}：
{utm_link}
```

Rule check:

- Do not paste the same answer into multiple questions.
- Do not put the link before the useful explanation.
- Do not use title/profile/answer images as covert ad space.

### Bilibili dynamic

Post time: 20:30-21:30 Asia/Shanghai.

Use:

- Best: `promo/world-cup-match-lab-30s.mp4`.
- Backup: match-card PNG plus daily page screenshot.

Template:

```text
世界杯开赛前，不想临时查一堆碎片信息的话，可以先看 World Cup Match Lab。

它不是直播站，也不是博彩预测站，主要整理赛程、球队、球员、对阵和赛后复盘入口。

{utm_link}
```

Rule check:

- Do not upload broadcast footage, official highlights, or copyrighted match clips.
- Do not frame model output as guaranteed results.

### X

Post time: 07:30-08:30 or 20:30-21:30 Asia/Shanghai.

Use:

- Day 1: short positioning post.
- Day 2: match-card thread.
- Day 7: best-performing page recap.

Template:

```text
{match} preview in one clean page:

- local kickoff context
- team notes
- key-player context
- transparent caveats

No betting angle. No stream links.

{utm_link}
```

Rule check:

- Do not mass-tag official teams, broadcasters, players, or unrelated trending accounts.
- Do not repeat the same link text all week.
- Do not use misleading URL shorteners.

### Reddit

Post time: 08:30-10:30 Asia/Shanghai, aimed at US evening reading.

Use:

- Text post in project/football analytics communities that allow feedback.
- Comment-only when a thread asks for tools/resources.

Template:

```text
I am building World Cup Match Lab as a clean World Cup match library:

- schedules and match pages
- team and player context
- public-source notes
- pre-match reading and post-match recap context

It has no betting angle, no stream links, and no guaranteed-prediction claim.

Feedback on missing context or confusing pages would be useful:
{utm_link}
```

Rule check:

- Read subreddit rules before posting.
- Be transparent that it is your project.
- Do not repost similar links across multiple subreddits.

### Facebook

Post time: 21:00-22:00 Asia/Shanghai.

Use:

- Owned profile/page first.
- Group only when rules allow resources or someone asks for context.

Template:

```text
I am keeping a clean World Cup match library for fans who want context before kickoff and recap reading after full time.

World Cup Match Lab has schedules, teams, players, match pages, and source notes. It does not provide betting advice or live stream links.

{utm_link}
```

Rule check:

- Avoid multiple group drops in quick succession.
- Use one link and one image only.
- Remove or edit the post if moderators object.

### Telegram

Post time: 22:00-22:30 Asia/Shanghai.

Use:

- One allowed football group.
- Short caption plus compressed match-card PNG.

Template:

```text
{match} preview in one page: kickoff context, team notes, key players, and caveats.

No betting, no stream links:
{utm_link}
```

Rule check:

- Ask admin if group rules are unclear.
- Do not repost after silence.
- Stay to answer one follow-up question.

### Discord

Post time: 22:30-23:00 Asia/Shanghai.

Use:

- Resource channel or active matchday channel only.
- No direct messages.

Template:

```text
Sharing this as a match context resource for {match}: kickoff context, team notes, key players, and caveats.

No betting and no stream links:
{utm_link}
```

Rule check:

- Use only channels that allow resources or links.
- Never DM the link to users who did not ask.
- If challenged, stop posting links in that server.

## Avoid-violation rules

Hard no list:

- No automated posting, auto-login, scraping, browser automation for social posting, or bulk account behavior.
- No unsolicited DMs, private-message invites, mass mentions, or tagging unrelated official accounts.
- No betting wording: "odds", "sure win", "guaranteed", "best pick", "稳赚", "不中返", "下注".
- No live-stream wording: "free stream", "watch live", "直播入口", "免费观看", "转播链接".
- No official-affiliation wording: do not imply FIFA, broadcaster, team, or player endorsement.
- No copyrighted broadcast clips, official highlights, third-party watermarks, or logos presented as owned assets.
- No fake testimonials, fake user counts, fabricated scores, fabricated data freshness, or invented source claims.
- No repeated identical copy across communities.
- No arguing with moderators. Record the issue and move on.

Safer wording:

- "资料馆", "match library", "public-source context", "pre-match reading", "recap context".
- "No betting, no stream links" as a boundary statement.
- "Feedback welcome" only in communities that allow project feedback.

## Review metrics

Fill `seven-day-review-scorecard.csv` every morning for the previous day.

Minimum metrics:

| Metric | Definition | Decision use |
| --- | --- | --- |
| Posts published | Count only live posts, not drafts. | Execution discipline. |
| 24h impressions/views | Platform-visible views or estimate. | Top-of-funnel reach. |
| 24h clicks | Analytics clicks by UTM source/content. | Link and topic quality. |
| CTR | `clicks / impressions`, when both exist. | Compare assets and copy. |
| Replies/comments | Human discussion count. | Community fit. |
| Saves/bookmarks | Platform save signal. | Utility content signal. |
| Reposts/shares | Organic spread. | Shareability. |
| Moderation status | `live`, `hidden`, `removed`, `challenged`, `edited`, `deleted-by-us`. | Compliance risk. |
| Top question | Most repeated user question. | Next content topic. |

Daily readout:

```text
Day:
Top source by clicks:
Top source by replies:
Best save/share signal:
Any moderation issue:
Most repeated audience question:
Tomorrow change:
```

7-day decision rules:

- Keep a platform if it produces either clicks or useful replies on at least 2 of 7 days.
- Reduce a platform to comment-only if it has two moderation issues.
- Move more effort to vertical screenshots/video if Xiaohongshu or Bilibili saves outperform clicks.
- Make X posts more specific if impressions are high but clicks are low.
- Use Reddit only for feedback/resource-allowed communities; stop if posts are removed or challenged twice.
- Build the next content update from the most repeated question, not from the highest-impression post alone.

## Policy references checked

These are reference points for the guardrails, not a substitute for checking each community's local rules before posting.

- Reddit self-promotion guidance: https://www.reddit.com/r/reddit.com/wiki/selfpromotion/
- X rules on authenticity, platform manipulation, and spam: https://help.x.com/en/rules-and-policies/x-rules
- Meta community standards and spam policy: https://transparency.meta.com/policies/community-standards/spam/
- Discord platform manipulation policy explainer: https://discord.com/safety/platform-manipulation-policy-explainer
- Zhihu community norms: https://www.zhihu.com/term/community
- Bilibili community convention: https://member.bilibili.com/studio/convention/?navhide=1
