It’s no secret that the advertising ecosystem relies heavily on ad targeting algorithms — the computer models that determine who is targeted with which content. The algorithms used by major platforms, along with the data that feeds into them, make them attractive places to advertise, which in turn fuels massive ad revenue for the Facebooks and Googles of the world.
But first, it helps if you understand how algorithms function.
Most platforms have created algorithms loosely based on the best working example of intelligence we have: our own brains. These algorithms work using a neural network, which functions across a series of different layers:
Let’s break this down with a simple example, using everyone’s favorite internet actors: cats. Let’s say, for example, we want to build a neural network that can look at an image and determine whether or not it’s a picture of a cat. The input layer in this example would be all the pixels in the image. For an image that is 1080×1080, that’s more than a million pixels, and therefore, more than a million different inputs.
In our simplified example, the hidden layers would determine if specific features are present in the pixels. Do some collections of pixels resemble a tail? Whiskers? Pointy ears?
From here, the output might contain a probability figure of between 0 and 1. The closer the number is to 1, the higher chance that the image is a cat.
If the image contains a tail, whiskers and pointy ears, the output will likely be close to 1. But if the model sees a tail and pointy ears, but no whiskers, the probability drops.
Fundamentally speaking, the neural networks used by ad platforms aren’t all that different from the example above. But instead of generating a probability of whether an image is a cat, these algorithms are gauging whether a user might convert after being served an impression.
Within the hidden layers, the algorithms are working through a multitude of combinations from the input variables. These combinations can be incredibly complex, sometimes using a weighted sum of hundreds (if not thousands) of input layer variables.
So, how do the hidden layers know which calculations to perform and what to measure?
The simple answer is that, at the start, they don’t. They’re completely random. Over time, though, the model learns. It teaches itself what features to look out for. There is a lot that happens to facilitate this technically, but essentially, the algorithm notes which of its calculations make good predictions, and it learns to rely more on those calculations in future.
In our cat example, once the model sees enough labeled images of cats, it can recognize which features are typically indicative of a cat (tail, whiskers, pointy ears). Similarly, with advertising, once the model has sufficient conversion data, it learns which factors — and combinations of factors — make a user more or less likely to convert.
This is also why most ad platforms feature some sort of learning phase — to reflect the time it takes while the hidden layers of the model are being tweaked.
The algorithms that platforms use to target ads can appear complex, but the fundamental ideas behind them are easy to appreciate.
Having a better understanding of platform algorithms gives us clarity around how content and digital strategies come to life in the online environment. It also gives us a chance to better work as marketers, applying our skills in a constantly changing algorithm-driven world.
If you have more questions about algorithms or just want to chat, let’s talk.
Zlata is a full-time publicist, part-time writer, and round-the-clock ambassador to wit and humor. As a publicist for over 15 years, she helps launch products with creative ideas and garner press coverage that drives reputation and sales. She also contributes to a variety of lifestyle publications in the areas of food, parenting, health, beauty, marketing, travel, and home. When she’s not crafting kitchen concoctions for her food blog @lifeandthymez, Zlata can be found spending time with her family, having #zlatathoughts, and fantasizing about being a Real Housewife of New Jersey.
Get industry insights and news directly to your inbox.
Thank you. Check your email for details on your request.
|__hssrc||session||This cookie is set by Hubspot whenever it changes the session cookie. The __hssrc cookie set to 1 indicates that the user has restarted the browser, and if the cookie does not exist, it is assumed to be a new session.|
|checkForPermission||10 minutes||This cookie is set by Beeswax to determine whether the user has accepted the cookie consent box.|
|cookielawinfo-checkbox-advertisement||1 year||Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .|
|cookielawinfo-checkbox-analytics||11 months||This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".|
|cookielawinfo-checkbox-functional||11 months||The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".|
|cookielawinfo-checkbox-necessary||11 months||This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".|
|cookielawinfo-checkbox-others||11 months||This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.|
|cookielawinfo-checkbox-performance||11 months||This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".|
|CookieLawInfoConsent||1 year||Records the default button state of the corresponding category & the status of CCPA. It works only in coordination with the primary cookie.|
|elementor||never||This cookie is used by the website's WordPress theme. It allows the website owner to implement or change the website's content in real-time.|
|JSESSIONID||session||The JSESSIONID cookie is used by New Relic to store a session identifier so that New Relic can monitor session counts for an application.|
|__cf_bm||30 minutes||This cookie, set by Cloudflare, is used to support Cloudflare Bot Management.|
|__hssc||30 minutes||HubSpot sets this cookie to keep track of sessions and to determine if HubSpot should increment the session number and timestamps in the __hstc cookie.|
|bcookie||2 years||LinkedIn sets this cookie from LinkedIn share buttons and ad tags to recognize browser ID.|
|bscookie||2 years||LinkedIn sets this cookie to store performed actions on the website.|
|lang||session||LinkedIn sets this cookie to remember a user's language setting.|
|lidc||1 day||LinkedIn sets the lidc cookie to facilitate data center selection.|
|UserMatchHistory||1 month||LinkedIn sets this cookie for LinkedIn Ads ID syncing.|
|_uetsid||1 day||Bing Ads sets this cookie to engage with a user that has previously visited the website.|
|_uetvid||1 year 24 days||Bing Ads sets this cookie to engage with a user that has previously visited the website.|
|__hstc||1 year 24 days||This is the main cookie set by Hubspot, for tracking visitors. It contains the domain, initial timestamp (first visit), last timestamp (last visit), current timestamp (this visit), and session number (increments for each subsequent session).|
|__lotl||5 months 27 days||This cookie is set by Lucky Orange to identify the traffic source URL of the visitor's orginal referrer, if any.|
|_ga||2 years||The _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.|
|_gcl_au||3 months||Provided by Google Tag Manager to experiment advertisement efficiency of websites using their services.|
|_gd_session||4 hours||This cookie is used for collecting information on users visit to the website. It collects data such as total number of visits, average time spent on the website and the pages loaded.|
|_gd_svisitor||2 years||This cookie is set by the Google Analytics. This cookie is used for tracking the signup commissions via affiliate program.|
|_gd_visitor||2 years||This cookie is used for collecting information on the users visit such as number of visits, average time spent on the website and the pages loaded for displaying targeted ads.|
|_gid||1 day||Installed by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously.|
|_hjAbsoluteSessionInProgress||30 minutes||Hotjar sets this cookie to detect the first pageview session of a user. This is a True/False flag set by the cookie.|
|_hjFirstSeen||30 minutes||Hotjar sets this cookie to identify a new user’s first session. It stores a true/false value, indicating whether it was the first time Hotjar saw this user.|
|_hjIncludedInPageviewSample||2 minutes||Hotjar sets this cookie to know whether a user is included in the data sampling defined by the site's pageview limit.|
|_lo_uid||2 years||This cookie is set by Lucky Orange as a unique identifier for the visitor.|
|_lo_v||1 year||This cookie is set by Lucky Orange to show the total number of visitor's visits.|
|_lorid||10 minutes||This cookie is set by Lucky Orange to identify the ID of the visitors current recording.|
|hubspotutk||1 year 24 days||HubSpot sets this cookie to keep track of the visitors to the website. This cookie is passed to HubSpot on form submission and used when deduplicating contacts.|
|IR_gbd||session||Impact Radius sets this cookie to store a unique ID which is used to identify the user's device, when they return to the websites that used the same network.|
|__qca||1 year 26 days||The __qca cookie is associated with Quantcast. This anonymous data helps us to better understand users' needs and customize the website accordingly.|
|_fbp||3 months||This cookie is set by Facebook to display advertisements when either on Facebook or on a digital platform powered by Facebook advertising, after visiting the website.|
|_mkto_trk||2 years||This cookie, provided by Marketo, has information (such as a unique user ID) that is used to track the user's site usage. The cookies set by Marketo are readable only by Marketo.|
|B||1 year||This Cookie is used by Yahoo to anonymously store data related to user's visits, such as the number of visits, average time spent on the website and what pages have been loaded. This data helps to customize website content to enhance user experience.|
|bito||1 year 1 month||This cookie is set by Beeswax for advertisement purposes.|
|bitoIsSecure||1 year 1 month||Beeswax sets this cookie for targeting and advertising. The cookie is used to serve the user with relevant advertisements based on real time bidding.|
|fr||3 months||Facebook sets this cookie to show relevant advertisements to users by tracking user behaviour across the web, on sites that have Facebook pixel or Facebook social plugin.|
|mc||1 year 1 month||Quantserve sets the mc cookie to anonymously track user behaviour on the website.|
|MUID||1 year 24 days||Bing sets this cookie to recognize unique web browsers visiting Microsoft sites. This cookie is used for advertising, site analytics, and other operations.|
|test_cookie||15 minutes||The test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies.|
|tuuid||2 years||The tuuid cookie, set by BidSwitch, stores an unique ID to determine what adverts the users have seen if they have visited any of the advertiser's websites. The information is used to decide when and how often users will see a certain banner.|
|tuuid_lu||2 years||This cookie, set by BidSwitch, stores a unique ID to determine what adverts the users have seen while visiting an advertiser's website. This information is then used to understand when and how often users will see a certain banner.|
|__pdst||1 year||No description available.|
|_an_uid||7 days||No description available.|
|_dc_gtm_UA-61749619-1||1 minute||No description|
|_dlt||1 day||No description|
|_hjSession_1771567||30 minutes||No description|
|_hjSessionUser_1771567||1 year||No description|
|_nx-nocache||session||No description available.|
|6suuid||2 years||No description available.|
|A3||1 year||No description|
|AnalyticsSyncHistory||1 month||No description|
|bounceClientVisit3783c||30 minutes||No description|
|bounceClientVisit3783v||30 minutes||No description|
|dgzsdl08v4||10 minutes||No description|
|li_gc||2 years||No description|
|tableau_locale||session||No description available.|
|tableau_public_negotiated_locale||session||No description available.|
|test||1 year||No description available.|