Cross-Promotion Overview
Cross-promotion is Onflow Ads' free growth tool for Telegram channel owners. You pair up with another channel, agree a go-live time, and each channel carries the other's promotional post for an agreed run. No money changes hands β you trade reach, not budget.
Once both of you have written and approved each other's posts, our bot publishes both posts automatically at go-live and removes them at the end of the run. Afterwards you get real numbers: how many people opened each ad, proof links to the live posts, and each channel's subscriber change over the run.
Everything starts from the Cross-Promotion hub in your dashboard.

Plus plan Β· Advertiser. The Cross-Promotion hub. Look at the pill strip along the top first β Hub, Discover, Create, Join, My campaigns and Portfolio β it is how you move between every cross-promotion flow, and it appears on every page in this section.
Who it is forβ
- Channel owners who want to grow their audience without spending on ads.
- Creators with several channels β the Portfolio page runs cross-promotion across your whole roster.
- Any public Telegram channel with the Onflow Ads bot added as an admin. Private channels cannot be cross-promoted.
The two ways to pair upβ
| Route | How it works | Start here |
|---|---|---|
| Find a partner | Browse the opt-in partner directory, ranked by how well each channel matches yours. Send a direct request β no code needed β and the campaign is set up the moment they accept. | Discovering partners and Partnership requests |
| Have a code? | Create a campaign and get a one-time code like OFCP-704-2318 to hand to a partner you already know β or enter the code a partner sent you. | Manual promos with CP codes |
There is a third door into the same campaign: the open-campaigns board. A creator can list an unclaimed campaign publicly, and any member can open its open-campaign page and take the slot without being sent the code privately.
How a swap runs, end to endβ
- Pair up β with a code, a directory request, or the board.
- Agree the schedule β the joiner accepts the proposed go-live as-is, or proposes new timing for the other side to approve. See Schedule proposals.
- Build your posts β each of you writes the promo that will run in the other's channel: rich text, one optional photo, and inline link buttons on paid plans. See Creatives.
- Review each other's post β you approve the post that will appear in your own channel, or send it back for changes. Unanswered reviews auto-approve after 6 hours, so a silent partner cannot stall the campaign.
- Automatic delivery β once everything is approved, the campaign is handed to our bot. It publishes both posts at go-live, checks through the run that both are still up, and takes them down at the end. Nothing to post by hand. See What gets posted and The delivery monitor.
- Results and ratings β read the ad opens, proof links, subscriber deltas and the anti-cheat verdict on Campaign results, then rate your partner.
Key factsβ
| Cost per swap | Free |
| Format | 1:1 β you pick the partner, they pick you (plus an optional multi-partner Blitz mode on the top two plans) |
| Code lifetime | Unused codes expire 24 hours after creation β we email you if that happens |
| Go-live window | Any time within the next 14 days |
| Run durations | 12, 24, 36, 48, 72, 96 or 168 hours (up to 1 week) |
| Post length | 991 visible characters in the composer β 33 of the 1,024 are held back for the attribution line β plus one optional photo (max 2 MB) |
| Account standing | A reliability score of at least 5.0/10, and no open account review |
| Channel requirement | A public Telegram channel with an @username, with the Onflow Ads bot added as an admin |
Cross-promotion ships with no minimum subscriber count β any public channel can take part. Onflow Ads can turn a floor on from admin settings, and if it is ever switched on, every create, join, Blitz claim and directory listing below it is refused with: "Cross-Promotion channels need at least N subscribers. This channel has M." Nothing else about the flow changes.
The number of cross-promotions you can start each month depends on your plan; joining someone else's campaign is never capped on any plan. Your current usage and limit are shown in the plan strip on the create and campaign pages. Campaigns that never ran β expired codes, cancelled campaigns, or ones closed because a partner went silent β do not count against your allowance. See Rules and fairness.
The IDs a cross-promotion carriesβ
Four references show up around cross-promotion, and the important thing is that one of them is a key and three are labels. They belong to the platform-wide Onflow Ads IDs scheme.
| ID | What it names | Where you'll see it |
|---|---|---|
OFC-β¦ | The campaign β one swap, with its schedule, posts and results | On the campaign, and in every campaign email as Campaign ID |
OFCP-β¦ | The join code for that campaign | Step 4 of the create wizard, on the campaign, in campaign emails as Join code, and in the campaign page's own address |
OFCQ-β¦ | A partnership request β an invitation, sent before any campaign exists | In the request emails as Request ID |
OFCR-β¦ | A recurring series β the standing rule that keeps creating fresh campaigns | On the π Recurring swap panel and the Recurring tab |
Plus OFCH-β¦, which names one of your channels rather than anything about the swap β see Your Onflow Ads IDs.
Campaign ID vs join codeβ
They look alike and sit next to each other, but they do different jobs:
- The
OFC-campaign ID is a label. It says which swap β quote it when you write to support about scheduling, delivery or results. - The
OFCP-join code is a capability. Whoever types it into the join page attaches their channel to your campaign and takes the open slot. It is the one reference on the whole platform that also grants an action.
Every other Onflow Ads reference is safe to post anywhere β they identify things, they don't unlock them. The OFCP- code is the exception: handing it over is the invitation. Send it to the partner you actually want, in a private message, and nowhere else. If a code gets loose before your partner uses it, cancel the campaign and create a fresh one; unused codes also expire on their own after 24 hours. The full rules are on Manual promos with CP codes.
Listing the campaign on the open-campaigns board is the supported way to invite strangers β that hands the slot out under the platform's matching rules instead of putting a live key in public.
Once a partner has joined, the code can no longer be used to claim anything β entering it takes each participant to their own campaign page β so a finished campaign's code is as safe to quote as any other reference.
Where everything livesβ
All cross-promotion pages are inside your dashboard at https://onflowads.com/telegram/dashboard/cross-promotion. Every page carries the same sticky sub-navigation bar with pills for Hub, Discover, Create, Join, My campaigns and Portfolio.
| Page | Address | What it is for |
|---|---|---|
| Cross-Promotion hub | /telegram/dashboard/cross-promotion | The front door: "Find a partner" and "Have a code?" |
| Find Partners | /telegram/dashboard/cross-promotion/discover | Directory, requests, open-campaigns board, recurring swaps, your listings |
| Open campaign | /telegram/dashboard/cross-promotion/board/CODE | The full case for one unclaimed campaign on the board |
| Manual cross-promotion | /telegram/dashboard/cross-promotion/manual | Create or join with a code, plus a list of your campaigns |
| Create a campaign | /telegram/dashboard/cross-promotion/create | The four-step create wizard |
| Join a campaign | /telegram/dashboard/cross-promotion/join | Enter a partner's code |
| Campaign details | /telegram/dashboard/cross-promotion/campaign/YOUR-CODE | Manage one campaign: schedule, posts, results |
| My Cross-Promotions | /telegram/dashboard/cross-promotion/campaigns | Every campaign you have run, in one list |
| Portfolio | /telegram/dashboard/cross-promotion/portfolio | Cross-promotion across all of your channels in one view |
One page that carries cross-promotion sits outside the section: a channel's own dashboard, reached from My channels. It is not a cross-promotion page β it gathers everything one channel does across all four engines β but its Cross-Promotion panel reports that channel's campaigns, completions, subscriber gain and ad opens, and it offers a card straight into the create wizard. It works for a single-channel member, which Portfolio is not built for.
Every cross-promotion is created, joined, scheduled and managed here. The bot is the delivery arm: it publishes both posts at go-live, removes them at the end of the run, DMs you at each step, and watches that each side's post stays up β and each partner stays subscribed β for the full term you agreed. Nothing about how a swap runs is decided inside the bot, and nothing about one is bought there. Before it publishes, it asks the website what every link in each post becomes (What gets posted); what it observes during the run it only records β the website prices every penalty, settles any declared insurance, and pays the clean-completion reward (The delivery monitor).
In this sectionβ
The pages below run in reading order: find a partner, pair up, agree the schedule, build the posts, then read the results.
Discovering Partners
Browse the Onflow Ads partner directory, find open campaigns on the board, and list your own channel so partners can discover you.
The Open-Campaign Page
The full case for an unclaimed campaign on the board β stats, track record, the proposed run and exactly what taking the slot commits you to.
Partnership Requests
Send, accept and decline direct swap requests β the no-code way to pair up with a channel you found in the directory.
Manual Promos with CP Codes
Pair up with a partner you already know using a one-time CP code, and track every code-based campaign from a single page.
Creating a Campaign
Mint a one-time CP code in four steps β pick your channel, set the go-live and duration, then share the code with your partner.
Joining a Campaign
How to join a partner's cross-promotion campaign with their CP code, review their channel, and confirm or renegotiate the schedule.
Schedule Proposals
Propose a new go-live date, time or duration β and review, accept or decline the changes your partner proposes.
Creatives: Posts and Delivery
Write the rich-text post that runs in your partner's channel, attach a photo, approve the one that runs in yours, and let our bot publish and remove both automatically.
What Gets Posted
Exactly what a reader sees when a cross-promotion ad lands in a channel β the attribution line, the rewritten links, and what is deliberately absent.
Campaign Lifecycle
Every cross-promotion status explained β setup, delivery and closed states β plus cancelling, expiry, and where to see all your campaigns.
Campaign Insurance
Put money behind your side of a cross-promotion β how each party sets their own cover, when the figures lock, what happens when someone breaks the rules, and what both sides see.
Campaign Results
Read a swap's ad opens, joins, per-button breakdown, subscriber deltas, proof links and the anti-cheat verdict β and pick your next move once the run is done.
Ratings
Rate a partner after a completed swap, and see how those stars build the track record every member checks before committing.
Blitz Campaigns
Run one cross-promotion across many partner channels at once β collect partners with a single code, launch together, read per-partner results.
Recurring Promos
Put a partnership that works on repeat β weekly, fortnightly or monthly rounds set up automatically with both sides' posts carried over.
Portfolio
Manage cross-promotion across every Telegram channel you run from one page β totals, per-channel activity, and quick directory actions.
Rules and Fairness
The trust signals, anti-ghost protections, the monitor that watches a live swap, account-standing requirements, plan limits and fairness guarantees behind Onflow Ads cross-promotion.
Add-ons and Extras
Every paid extra around cross-promotion β External Links, Featured directory placement and request boosts β what each one buys, and what your plan discount does to the price.
FAQ and Troubleshooting
Quick answers to the most common cross-promotion questions β codes, scheduling, limits, posts, delivery, results and the messages you might see.
Next: Discovering partners β the partner directory, the open-campaigns board, and how to make your own channel discoverable.