Hosting ads
Hosting is your half of the exchange bargain: your enrolled channels carry other members' ads, and that is what earns you the right โ and the credits โ to run your own. This page covers what actually happens in your channel, every protection you have, and the reasons a channel goes quiet.
Each channel you enrol carries an OFSC- reference, and each ad matched to it carries the advertiser's OFSE- campaign reference. Between them they identify exactly one placement โ the pair to quote if a post goes wrong, or if a credit you expected never arrived. See Your Onflow Ads IDs.
The two host controls big enough to need their own instructions have their own pages:
- Reviewing ads before they post โ approve each matched ad first.
- Refusing an ad โ remove one specific ad, penalty-free.
Before you startโ
- At least one channel enrolled and showing Hosting under My channels.
- The bot still an administrator of that channel with Post Messages and Delete Messages on. Nothing re-checks those rights in the background โ the first sign a right was removed is a placement that fails, or a strike.
- Your account not cooling down after a strike. A cooldown stops hosting and advertising together.
An ad is only admitted when the exchange holds enough eligible channels to carry it at the advertiser's plan cadence (Running ads). Enrolling a channel is always open, whatever the pool looks like, because every channel that joins is what ends somebody's wait โ quite possibly your own.
What happens when your channel hosts an adโ
- The matcher pairs your channel with an ad that fits โ at or below the level you chose, from an account close to yours in audience size, and never from your own account.
- If Review ads is switched on for that channel, the ad is held for your approval instead of posted, and you get a Telegram message with a decide-by time.
- The bot posts the ad in your channel and messages you: "An ad just went live in your channel", with the exact time it comes down.
- The ad stays up for a full 24 hours.
- The bot collects the final view count, removes the post automatically, and closes the placement. You never have to touch it.
- The website mints your credits from the closed placement within a few minutes, and records a small reliability bump (+0.05) for you and for the advertiser. The bot's message says the placement served its full window and that the credits are added on onflowads.com โ it never quotes a balance or a score, because it moves neither.
What protects your channelโ
You are never asked to turn your channel into an ad feed. All of these apply automatically, on every plan, and no amount of money buys past any of them.
| Protection | What it means |
|---|---|
| Your content level ceiling | Nothing above the level you chose is ever matched to your channel. Levels 3, 4 and 5 only reach channels whose owners explicitly opted in |
| A weekly limit | Your channel is asked to carry at most 4 ads in a rolling seven days |
| A 20-hour gap | Your channel is never offered another ad until at least 20 hours after its last one |
| One placement per campaign per cycle | The same campaign is never placed in your channel twice in one 30-day cycle |
| A 72-hour pair cooldown | The same advertiser is not placed in your channel again inside 72 hours, whichever of their campaigns it is |
| Size matching | The matcher scores the ratio of your subscriber count and average views against the advertiser's own biggest channel, so a 500-subscriber channel is not asked to carry a 200,000-subscriber channel's ad |
| Never your own ads | Your own campaigns are excluded from your own channels |
| Review before posting | Optional, per channel โ see Reviewing ads before they post |
| Refusal | Any single ad, penalty-free, at any time โ see Refusing an ad |
| The 24-hour takedown | Every placement comes down on time, removed by the bot itself |
What your subscribers seeโ
They see the advertiser's own creative, and โ unless your plan removes it โ one extra clickable line, one blank line below that creative, reading exactly: advertisement via onflowads.com. It links to the Onflow Ads site and nothing else. It is the same line Paid Promotions and Cross-Promotion sign their posts with; one wording, product-wide. Nothing says the post came from an exchange, and nothing names the advertiser or your channel.
The line comes off for the host, not the advertiser. Whether it appears is decided by the plan of the account that owns the channel the ad lands in โ yours โ read live at the moment the ad is sent. It has nothing to do with what the advertiser pays.
| Your plan | Ads your channels carry |
|---|---|
| Free | The line |
| Lite | The line |
| Plus | No line |
| Elite | No line |
| Master | No line |
| Ultimate | No line |
| Referral Premium | The line โ the referral status tracks the Free benefits and never satisfies a paid gate |
The exchange used to read the advertiser's plan, frozen onto the campaign when they submitted it, so a paid advertiser bought a clean placement in somebody else's feed. That rule is gone in both directions: an advertiser can no longer buy a clean placement anywhere, and a Plus-or-above host's feed stays clean whoever wrote the ad. The mark is on your feed, so the removal is yours to earn. Because the check runs at send time against your live plan, upgrading or lapsing changes it from the next placement onward โ nothing has to be re-submitted.
Every button and link in an ad your channel carries takes one first-party hop โ its own onflowads.com/rr/โฆ short link โ that counts the tap and sends your subscriber straight on: into the advertiser's own connected channel through a campaign invite link, where Telegram counts the join; to any other Telegram address exactly as written; or to a website. Nothing opens a chat with our bot. Placements published before this design still route a tap through our bot ("๐ Here you go โ") until they come down.
Your channel listโ
Under My channels the header reads "N of M channels used". Each row shows the channel's title, a Review on pill when per-ad review is enabled, then a meta line: "@username ยท 12,400 subscribers ยท up to level 3 (Finance, Trading & Crypto) ยท 18 hosted", then the OFSC- reference chip.
| Badge | Meaning | What to do |
|---|---|---|
| Hosting | Active in the pool and available to carry ads | Nothing โ this is the normal state |
| Suspended | Held out of the pool for 7 days after an early removal crossed the strike threshold | Wait. The row says "this lifts automatically on <date>". Re-enrolling never shortcuts an active suspension |
| Review on | Per-ad approval is switched on for this channel | Watch for holds โ see Reviewing ads before they post |
Alongside the badge each row offers Review ads: On/Off, a Hosted ads button once the channel has carried at least one ad, and Leave.
The channel's own dashboardโ
The exchange's My channels list is the enrolment control panel. The record of what a channel has hosted lives elsewhere, on that channel's own page at /telegram/dashboard/channels/<reference>/overview โ reached by clicking the channel in the dashboard's own My channels list, not the exchange's.
Its Subscriber Exchange block carries four lifetime figures for that channel โ Ads hosted, Views delivered, Taps, Joins and Credits earned โ plus the enrolment state, and its activity feed lists the channel's most recent hosted placements, each titled "Hosted an exchange ad" with a state (Hosting now, Scheduled, Completed, Removed early, Didn't post, Skipped, On hold), its views and clicks, and the credits that placement earned. It is available to the channel's owner on every plan, Free included.
Two caveats. A figure the page could not measure is left out rather than shown as zero, so a missing tile means "not measured", not "none". And the page exists only for a channel with a registry record โ a channel the exchange knows about but that was never added to your channel list opens the story popup instead. The whole page is documented in A channel's own dashboard.
There is no background job that re-checks whether the bot is still an admin of an enrolled channel. If a right is removed, the channel keeps showing Hosting and the problem surfaces only when a placement fails to send โ or, if a placement is already live, when the integrity check attributes the disappearance to you. Check the bot's rights yourself after any change to your channel's admin list.
Why your channel might be quietโ
A channel can sit in the pool for days without being offered anything. In order of how often each one is the real cause:
| Cause | Why it stops placements | What to do |
|---|---|---|
| The pool has nothing that fits | The matcher only offers ads at or below your level, from accounts close to yours in size. A very large or very small channel has fewer counterparts | Raising your level ceiling widens the set of ads that may reach you. Lowering it narrows it |
| Your own reliability is below the floor | The matcher requires the channel owner's reliability to clear the exchange floor (4.0 by default). Below it your channels stop being offered ads โ which is also how you would have earned the score back | Recover the score elsewhere, then hosting resumes on its own. See Rules and fair play |
| Your account is cooling down | A strike closes the exchange for your account on both sides until the cooldown ends | Wait. The Your exchange is paused banner names the exact end time |
| The channel is suspended | Three strikes suspends every active channel on the account for 7 days | Wait for the date on the row |
| You hit the weekly limit | 4 placements in the last rolling seven days is the default ceiling | Nothing to do โ it rolls forward as the week does |
| The 20-hour gap | Your last placement was under 20 hours ago | Nothing to do |
| Review is on and holds are expiring | An undecided hold is skipped after 24 hours and the ad goes elsewhere | Decide faster, or switch the channel back to automatic |
Reliability starts at 8.00 out of 10 โ comfortably above the 4.0 exchange floor and above the 7.5 full-reach line. A new member is never held back by their score; only breaking a placement moves it.
Earning credits by hostingโ
Every placement that runs its full 24 hours mints SubX credits โ 10 on Free, scaled by your plan's credit rate up to 20 on Ultimate. The bot records the placement as served; the website mints the credits from that record, at the plan you are on at the time, within a few minutes.
The full flow, including everything that does not pay, is on Earning credits by hosting. What a credit is, and where the balance is readable, is on How credits work.
Your reciprocity balanceโ
The hub's How it works card carries a reciprocity note comparing what your channels offer to host per cycle against what your ads consume. When the two are level it says so โ "Your reciprocity is balanced โ your channels can host about 17 placements a cycle, and your ads consume ~11." When your ads consume more than your channels supply, it names both numbers and suggests hosting more.
This is insight, not a cap. Nothing is cut if you are out of balance, and enrolling another channel is the way to raise your supply.
Withdrawing a channelโ
- Press Leave on the channel's row under My channels.
- Confirm: "Withdraw this channel from the exchange? Placements already live will finish their 24 hours."
- The exchange replies "Channel OFSC-โฆ withdrawn from the exchange." โ followed, when either of the two consequences below applies, by a sentence naming it.
What happens:
- The channel stops receiving new ads immediately, and any placement scheduled or held for it is dropped.
- Anything already live finishes its full 24 hours. Leaving is never a way to pull a running ad down early โ for that, use Refusing an ad.
- Your channel count frees up, so you can enrol a different channel in its place.
- Credits already earned stay on your balance, and your hosting record stands.
- Any swap campaign offering this channel is cancelled, whether it is still in review or already approved: "N swap campaigns were cancelled โ a swap offers this channel to the partner, so it can't stand without it. Re-create them from one of your other channels." A swap that is already matched and running is left alone to finish โ the cancel deliberately skips it, because its creative may be live in your partner's channel at that moment. Nothing is charged for a swap, so there is nothing to refund. (If this was also your last hosting channel, the pause below still marks that ad paused while its swap runs itself out; the swap completes either way.)
- If it was your last hosting channel, every approved campaign of your own is paused: "That was your last hosting channel, so N of your own ads have been paused โ the exchange is reciprocal. Add a channel back and they resume automatically."
"You need a hosting channel to run ads" is checked continuously, not only when you submit. If the channel you withdraw is your last active one, your own campaigns move to paused and stop being placed โ including a campaign you paid a delivery upgrade for, which sits idle rather than being refunded. Enrol any channel and they flip back to running on their own; cancel one instead and the ordinary cancel refund applies. Delivery-floor make-goods do not cover a cycle you paused this way โ see The Delivery Floor.
You can re-enrol the same channel later. Re-enrolling refreshes the level, title and subscriber count, keeps everything else, restarts any campaign paused by that last withdrawal, and clears a suspension that has already been served โ never one still running.
If something goes wrongโ
| What you see | What it means | What to do |
|---|---|---|
| An ad you did not want is live in your channel | It cleared your level ceiling but is wrong for your audience | Press Hosted ads โ Refuse. Never delete the post by hand โ see the danger note below |
| "Channel not found." | The row is stale, or the channel was already withdrawn | Reload the exchange page |
| Your channel shows Suspended | Three strikes crossed the threshold | Wait for the date on the row. It lifts on its own |
| "Your exchange is paused" banner | A placement was removed early, or the bot lost its rights in your channel | The banner names the end time and your strike count |
| A placement never appeared, and nothing else is wrong | The bot may have lost a right, or Telegram refused the send | Check the bot is still an admin with Post and Delete rights |
| The takedown message arrived but no credits appear on the channel's dashboard | The website mints credits from the closed placement on a sweep, not at the instant of takedown | Give it a few minutes. If a placement that ran its full term still shows no credit, contact support with the channel's OFSC- reference |
Deleting the bot's post yourself, or removing the bot's rights while a placement is live, is treated as breaking the 24-hour promise. It costs 1.5 points of reliability, earns a strike and a 6-hour account cooldown, and at three strikes suspends every one of your channels for 7 days. The count decays only after a full 30-day cycle following your cooldown, so a second slip inside that window escalates. The bot only records what it saw; the website reads that record and decides the grace, the strike, the cooldown and the suspension. Refuse does exactly what you want and carries no penalty at all.
Edge cases worth knowingโ
- Hosting and advertising are paused together. A cooldown stops your channels receiving ads and your own campaigns being placed, so being a good advertiser never offsets being an unreliable host.
- A demotion after the term still costs you. If the bot serves the full 24 hours but cannot delete the post because it was demoted, the placement is closed without a reliability haircut โ the ad did run its window โ but a strike is recorded and the credits are withheld.
- One event, one price. A single demotion that breaks five live placements costs one strike and one reliability hit, not five. The later messages say so: "no further drop โ this removal is part of an episode already counted."
- You cannot enrol a channel someone else has enrolled. A channel lives in the exchange under exactly one account.
- A channel below 50 subscribers is effectively unmatched. Below that, subscriber and view counts stop carrying enough signal for the closeness maths to mean anything.
Set my exchange level to 2 changes the content level a channel accepts; leave the exchange with my channel takes it out of the pool. Both wait for your CONFIRM. What the assistant can do for you has the full list and the confirmation rule.
Relatedโ
- Reviewing ads before they post โ the host control that stops anything appearing without your say-so.
- Refusing an ad โ the penalty-free way to get one specific ad out.
- What the bot sends you โ every hosting event reaches you as a Telegram message as it happens.
- A channel's own dashboard โ the website's record of what one channel has hosted, earned and delivered.
- Earning credits by hosting โ the rate for each plan, and what does not pay.