More and more ad time is spent away from a web page: on a TV app, in a podcast, on a screen in a shop or gym, inside a mobile app, in a newsletter or in a chat. GoAdserver now serves ads in all of these places, from the same panel, the same campaigns and the same statistics as your web zones. A publisher adds a zone of the right type; an advertiser runs a campaign the way they already do.
October 2026
Connected TV and streaming apps
A video zone now serves TV apps, streaming boxes and mobile video players as well as websites. The player asks for ads with a VAST URL, and the zone's Connected TV and streaming apps settings add what long streams need:
- Ad pods: up to 6 ads in one break, with a limit on the total seconds per break. The same campaign or advertiser never shows twice in one break.
- A VMAP break plan: pre-roll, mid-roll breaks at the seconds you choose, and an optional post-roll.
- Pause ads: an image ad from one of your banner zones while the viewer pauses.
- Server-side ad insertion: your insertion server can ask for ads on behalf of each viewer, sending the viewer's IP address and device so targeting still works. It is off until you allow it.
The app bundle counts as the domain of the request, so advertisers can include or block an app in their domain lists, and advertisers pick TV in device targeting to buy only TV screens. More on the CTV & OTT ads page.
Audio ads for podcasts and web radio
Audio ads are spots of 3 to 120 seconds, played before or during a podcast or radio stream. The advertiser uploads an mp3, m4a, ogg, wav or similar file (converted to mp3 on upload), adds a destination URL and, if they like, a companion image. Under the player a small bar shows the ad label, the image and a countdown.
The publisher creates an Audio Ads zone, enters the CSS selector of their audio player and chooses how often a mid-roll plays. Podcast and radio apps use the zone's VAST URL instead. Reports show how many listeners reach a quarter, half, three quarters and the end of each spot, and the CTV settings above (pods, VMAP, server-side insertion) work on audio zones too.
Digital screens (DOOH)
A Screens zone puts ads on a screen in the real world: a shop window, a waiting room, a station. Any browser in full-screen mode can be the player; signage software can fetch the playlist as JSON or VAST instead.
- Every play is confirmed by the player before it counts (proof of play).
- The publisher sets how many people see one play, and the advertiser's CPM is charged times that audience.
- Opening hours, a venue type and the screen's location are part of the zone. Advertisers can limit a campaign to venue types or to screens within a radius of a place.
- Only campaigns that switch on Run on digital screens play there, so ordinary website banners never end up on a screen.
In-app ads with Prebid Mobile
Publishers with their own iOS or Android app can sell its ad slots with the free Prebid Mobile SDK; GoAdserver answers as the app's Prebid Server. Banners, interstitials, rewarded video and native ads are filled by your own campaigns and by the RTB partners you sell to. No SDK of ours is needed.
The app is registered under Websites with its bundle id, and its traffic shows up in statistics and filters like any website. The panel gives the ready-to-paste Swift and Kotlin code and the app-ads.txt line. Advertisers can target or exclude an app with app: and its bundle id, and the device's advertising id is passed on only when the user allows tracking. See in-app ads; this works on platforms with RTB switched on.
Newsletters and chat bots
- Email display ads: paste a small piece of HTML into the newsletter template once, with 1 to 6 ad slots. The ad is picked when the reader opens the email, not when you send it, so a newsletter read a week later still shows a running campaign. A per-recipient merge tag makes each click go to the ad that reader saw, and opening the email again is not counted twice. Only image banners are used, because email programs don't run scripts.
- Messenger and bot ads: a Telegram, Discord or WhatsApp bot asks for an ad and posts it as a sponsored message with a button. The request can carry the chat's topic or last message, which is matched against campaign keywords, and a per-chat hourly limit keeps any chat from getting too many. The Code tab has example bots in Python and Node.
How to start
- Create an ad zone and pick the type: Video for CTV, Audio Ads, Screens, Email Display or Bot Ads. For an app, register it under Websites and create a header-bidding campaign.
- Fill in the zone's Settings tab and save.
- Copy the URL or code from the Code tab into your player, signage software, email template or bot.
Step-by-step guides are in the manual: Connected TV and streaming apps, audio ads, digital screens, in-app ads, email display ads and messenger and bot ads. Every one of these formats also has a live demo, and every zone setting is in the REST API too.
Screens, Email Display and Bot Ads are switched on per platform: an ad network or an ad management setup chooses which formats it sells. The full list is on the ad formats page, and our team can tell you which ones fit your inventory.
About GoAdserver
GoAdserver is a white-label ad serving platform for ad networks, ad managers, publishers and advertisers: ad serving, RTB, tracking and reporting under your own brand, with every panel feature also in the REST API.