The Open-Campaign Page
Every row on the open-campaigns board is a link to a page of its own at https://onflowads.com/telegram/dashboard/cross-promotion/board/CODE. This page is where the case for that partnership is actually made: who the creator is, what their record looks like, exactly when the swap would run, and — in a numbered list — what pressing Join this campaign → signs you up for.
It exists because a board row has to stay scannable, and a commitment deserves more room than a row. Read this page before you take a slot from someone you have never swapped with.
Before you start
- You need a public Telegram channel with the Onflow Ads bot added as an admin — the join that follows will ask for it.
- Set your channel on the Find partners tab first. The board passes it through, and it is what fills in the size verdict here. Without it the page still loads; the fit comparison is blank.
- Viewing this page is never gated. The join it leads to runs the reliability floor of 5.0/10, the account-review block, and the anti-ghost join cooldown.
What is on the page
The hero
The channel's photo, title and @handle, the size verdict as a pill (Size: Great match), and chips for its genre, its language and the campaign's join code. On the right sits the price rail — it reads cost to join / Free, with the line "You trade reach, not budget — each of you runs the other's post." and the Join this campaign → button. The same button repeats at the foot of the page.
The six stat tiles
| Tile | What it shows |
|---|---|
| Subscribers | The channel's subscriber count today |
| Average views | Average views per post |
| Reach | Average views as a percentage of subscribers — how much of the audience actually turns up |
| Genre | What they publish, or Unset |
| Completed swaps | Campaigns this creator ran all the way through |
| Reliability | Completed as a share of completed plus dropped, or New |
Reach is arithmetic on the two numbers above it, not a score Onflow Ads invented. A 20,000-subscriber channel with 1,000 average views reads 5%; a 3,000-subscriber channel with 900 reads 30%. The second is usually the better swap.
Their track record
The same trust panel you see everywhere in cross-promotion, with the definitions spelled out underneath:
- Completed counts campaigns that ran all the way through.
- Dropped counts the ones they cancelled, declined or failed. A code that expired unjoined is nobody's broken promise, so it never counts against anyone.
- % reliable is completed as a share of those two.
- The stars are what past partners scored them after the posts came down — a separate signal from delivery, and one only a real partner can leave.
A creator with no history reads: "Nobody has finished a swap with them yet, so there is nothing to judge them on — an empty record, not a bad one."
The proposed run
Go-live in the creator's own timezone, the same moment in UTC, how long the posts stay up, when they come down locally and in UTC. The panel closes with the sentence that matters most: this is the creator's proposal, not a fixed term — you can counter-propose a different time after you join, and nothing is locked until you both confirm. See Schedule proposals.
If the creator never pinned a time, the panel says so and you agree one together after joining.
About the channel
The channel's own description, plus Open @handle in Telegram ↗. When there is no description the page says the useful thing instead: read a few of their recent posts before you commit — their audience is about to see yours.
What joining commits you to
A numbered, four-point list, published on the page itself:
- Both channels post. You write the post that runs in their channel; they write the one that runs in yours. Neither side pays the other.
- You go live together. The two posts publish at the same moment and stay up for the full duration — no quiet early removal on either side.
- Taking it down early costs you. Our bot watches both posts. A cross-post removed before the agreed window is −1.50 on your reliability score; claiming a slot and then never delivering your side is −0.30.
- Nothing is locked until you both confirm. Joining attaches your channel and opens the build step. You see their post and they see yours before either goes out.
The −1.50 is recorded by the delivery monitor after two separate checks confirm the post came down; the −0.30 is applied when a join you attached sits unconfirmed for 48 hours and the campaign is released — it comes with a strike, and three strikes pause joining for 48 hours. Both land on the one reliability score your account carries, applied by the website, and both can be appealed from your reliability page. Leaving the partner's channel before the run ends is a third mark the page does not list: −1.00. See Anti-ghost protections and The delivery monitor.
They also sell paid promotions
Shown only when the creator has a live Paid Promotions listing, with a 💼 Book a paid promotion ↗ button. If you would rather buy the slot outright than trade for it, that is the route — full rate card, measured statistics and open dates.
Step by step
- Open the Open campaigns tab on Find Partners and press any row. The page loads at
/telegram/dashboard/cross-promotion/board/CODE. - Read the six tiles and the track record. Ask the reach question, not only the subscriber question.
- Check The proposed run against your own posting calendar. If it does not suit, you can still join and counter-propose — the timing is not final.
- Read What joining commits you to in full.
- Press Join this campaign →. You land on the join page with the code already filled in and looked up.
- Continue through the normal join flow: attach your channel, then accept the schedule or propose new timing.
The join button carries the campaign's code, so you never type it. If you want to come back later, bookmark the board page itself — the address contains the code, and the join button on it works for as long as the campaign is open.
If something goes wrong
| What you see | What it means | What to do |
|---|---|---|
| "This campaign is no longer open." | Someone else took the slot, the creator pulled it off the board, or the code passed its 24-hour expiry. | Press Back to the board for what is still live, or Create my own. |
| "That's your own campaign." | You opened your own listing. The board hides your codes from you, but the direct link still resolves. | Press Open my campaign — that is where you manage it, including taking it back off the board. |
| "We couldn't load this campaign." | A network or backend hiccup. Nothing was joined or changed. | Press Retry. |
| The size verdict is missing, and the page says to set your channel | You reached the page without naming a channel to compare against. | Go back to the Find partners tab, set your channel with Use channel, then open the row again. |
| The join is refused after you press Join this campaign → | The join gates apply on the next page, not this one: a reliability score under 5.0, an account under review, or an active join cooldown. | The refusal names the reason. See Rules and fairness. |
A Blitz campaign can be listed on the board like any other. The commitment list on this page describes a 1:1 swap; if the code belongs to a Blitz, the join page detects it and shows the Claim a slot pane instead of the usual steps. A Blitz slot also has two hard requirements a 1:1 join does not: your Telegram account must be linked, and your channel must have a public @username.
List my code on the open codes board or unlist it toggles the board from the chat, after a yes. What the assistant can do for you has the full list and the confirmation rule.
Related
- Discovering partners — the board this page opens from.
- Joining a campaign — what happens after you press Join.
- Rules and fairness — how the size verdict and the track record are computed.
- Schedule proposals — countering the go-live time it publishes.
Next: Partnership requests — the other no-code route, where you approach a partner instead of taking a slot they published.