Skip to main content

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:

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.
Hosting is never gated on the pool's size โ€” it is what grows the pool

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โ€‹

  1. 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.
  2. 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.
  3. 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.
  4. The ad stays up for a full 24 hours.
  5. The bot collects the final view count, removes the post automatically, and closes the placement. You never have to touch it.
  6. 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.

ProtectionWhat it means
Your content level ceilingNothing 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 limitYour channel is asked to carry at most 4 ads in a rolling seven days
A 20-hour gapYour channel is never offered another ad until at least 20 hours after its last one
One placement per campaign per cycleThe same campaign is never placed in your channel twice in one 30-day cycle
A 72-hour pair cooldownThe same advertiser is not placed in your channel again inside 72 hours, whichever of their campaigns it is
Size matchingThe 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 adsYour own campaigns are excluded from your own channels
Review before postingOptional, per channel โ€” see Reviewing ads before they post
RefusalAny single ad, penalty-free, at any time โ€” see Refusing an ad
The 24-hour takedownEvery 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 planAds your channels carry
FreeThe line
LiteThe line
PlusNo line
EliteNo line
MasterNo line
UltimateNo line
Referral PremiumThe line โ€” the referral status tracks the Free benefits and never satisfies a paid gate
This replaced an older, opposite rule

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.

Where a tapped button goes

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.

BadgeMeaningWhat to do
HostingActive in the pool and available to carry adsNothing โ€” this is the normal state
SuspendedHeld out of the pool for 7 days after an early removal crossed the strike thresholdWait. The row says "this lifts automatically on <date>". Re-enrolling never shortcuts an active suspension
Review onPer-ad approval is switched on for this channelWatch 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.

The exchange does not watch your bot's rights

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:

CauseWhy it stops placementsWhat to do
The pool has nothing that fitsThe 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 counterpartsRaising your level ceiling widens the set of ads that may reach you. Lowering it narrows it
Your own reliability is below the floorThe 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 backRecover the score elsewhere, then hosting resumes on its own. See Rules and fair play
Your account is cooling downA strike closes the exchange for your account on both sides until the cooldown endsWait. The Your exchange is paused banner names the exact end time
The channel is suspendedThree strikes suspends every active channel on the account for 7 daysWait for the date on the row
You hit the weekly limit4 placements in the last rolling seven days is the default ceilingNothing to do โ€” it rolls forward as the week does
The 20-hour gapYour last placement was under 20 hours agoNothing to do
Review is on and holds are expiringAn undecided hold is skipped after 24 hours and the ad goes elsewhereDecide faster, or switch the channel back to automatic
A brand-new account starts at 8.00

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โ€‹

  1. Press Leave on the channel's row under My channels.
  2. Confirm: "Withdraw this channel from the exchange? Placements already live will finish their 24 hours."
  3. 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."
Leaving with one channel left stops your own advertising

"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 seeWhat it meansWhat to do
An ad you did not want is live in your channelIt cleared your level ceiling but is wrong for your audiencePress 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 withdrawnReload the exchange page
Your channel shows SuspendedThree strikes crossed the thresholdWait for the date on the row. It lifts on its own
"Your exchange is paused" bannerA placement was removed early, or the bot lost its rights in your channelThe banner names the end time and your strike count
A placement never appeared, and nothing else is wrongThe bot may have lost a right, or Telegram refused the sendCheck the bot is still an admin with Post and Delete rights
The takedown message arrived but no credits appear on the channel's dashboardThe website mints credits from the closed placement on a sweep, not at the instant of takedownGive it a few minutes. If a placement that ran its full term still shows no credit, contact support with the channel's OFSC- reference
Never delete an exchange ad by hand

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.
From the support chat

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.