Anil Karat, CTO, Voiro

As a student of Computer Engineering (Bachelor of Technology), Anil Karat spent much of my time in the robotics club of the National Institute of Technology, Karnataka. He went on to work for Yahoo Inc., where he handled the internationalisation of Yahoo Finance feeds before the need to do something on his own took hold. Anil designed, built, operated and later shut down an online video marketplace within a year’s time — an experience that he believes helped him hone his skills for Voiro as we know it today.


Ads are almost ubiquitous in most of the content we consume today. Whether the content is presented in video, audio or plain old web pages, ads are a deeply integrated part of it. In almost all cases, the ads are not served out by the same set of systems that serve out the content. The content is usually served out by the publisher themselves while the ads are almost always handled by another set of servers/platforms that we collectively call “ad-tech”. The reason for this is largely because showing the right ad to the right person is a science of its own and is something that is best left to the experts.


When we consume an ad-supported piece of content, the publisher has an established channel with a system known as the “Ad-Server”. The Ad-Server is a system that will serve out an ad based on parameters it receives. It will either have a repository of ads within itself or will connect to an external source such as an ad-network or ad-exchange to source the actual ads. A call to the adserver is made whenever the publisher wants to show an ad. These could be static images that load when a page is opened or a video ad that plays out at specific points in a movie or live stream. At each of these points, a request will be made to the ad server which will serve out an ad if a suitable ad is found.

Targeting Parameters

The parameters that are sent to an ad server are usually called “Targeting Parameters”. These usually consist of anonymised details of the user consuming the content. Attributes such as Age-Group, Gender, Location, Interest groups and the content itself are used by the ad server to decide which ad is to be played out. Internally the ad server also has to keep track of how many impressions/views/clicks have been booked against each ad.

There are also other limiting factors such as the number of times an ad can be shown to a particular person or whether a user has requested for an ad to be blocked. The ad server in addition has to ensure that it honours commitments of all ads that are booked in the system. Using all these constraints, the ad server has to make a decision in a specified amount of time and serve out the ad to the publisher. The better the decision of the ad server, the more chance that the user might actually buy/utilise the product that is being advertised.

Amongst the parameters supplied to the adserver, one of the most crucial ones is a classification of the user into one of many audience buckets. These are usually referred to as just “audiences”. This classification is crucial data that is obtained via services that track the user across multiple online platforms. Such tracking was traditionally done by what are called “Third-Party Cookies”. However these are being phased out of most browsers and platforms as of 2022. Publishers are increasingly being forced to rely on their own data for classifying users into various audience buckets.

Classification Tools

Having robust ad-serving and audience classification tools are crucial to monetising content. The ad-server must be quick and accurate enough to serve relevant ads to the users. If it is slow, the ad-serving might time out and the ad-slot will get wasted. Similarly, if an irrelevant ad is shown, the user might skip/block or will not take action on the ad. Classifying the user is again very important. For example: showing Bangalore real-estate ads to a Mumbaikar would be a wasted ad-spot. Serving out age inappropriate ads can also land the publisher in legal trouble.

Once the ad is served out, the ad server also needs to provide auditable reports of the details of all ads served out. Such information is usually made available at an hourly or daily level. Using this information, the publisher can then validate the impressions against the promised targeting parameters and invoice the Advertiser or Agency. Accurate, timely and transparent reports from the ad server result in faster billing and quicker realization of money.


To conclude, ad-serving involves multiple systems usually outside of the publisher’s internal systems that have to work together to provide relevant ads to the end-user. Gathering appropriate information in a safe and secure manner from the user will benefit all players in the eco-system.

Content Disclaimer

Related Articles