Facebook Advertising System Design & Architecture

Photo by Eleni Afiontzi on Unsplash

Facebook Advertising System Design & Architecture

It’s an age-old adage: “Half the money I spend on advertising is wasted; the trouble is I don’t know which half.” The quote, by department store mogul John Wanamaker, is over 100 years old.

The standard for measuring advertising effectiveness depends on algorithms/ad engines that can improve the company’s monetization ability. The core competencies required in the advertising industry are algorithm capability, engineering capability, business understanding. For a specific business problem, we can investigate and analyze the appropriate algorithm model. Engineering capability is to improve the algorithm structure and system architecture. If the business grows mature and complex, it will have complex requirements for architectural engineering. If you want to perform well, you must have a deep understanding of the details of the advertising system and engineering implementation. The most important ability is business understanding. Advertising is a direction strongly related to business, and the advertising system must improve the advertisers’ monetization capabilities via technical means and advertising strategies.

Business (strategy) + data + algorithm + System

First, we should get to know the domain knowledge of advertisement terminologies and targets.

The business Nature

Based on the mobile business nature, digital advertising can reach different types of audiences easily.

It is the most basic Facebook ad architecture diagram. At the campaign level, the main purpose is to determine the delivery target. So, the ad set level will involve user positioning, budget, CBO, geographic locations, interests, and bidding. The Ad level is the material.

Advertisment Terminologies

  1. Brand Awareness: It is a degree of customer recognition of a product by its name. It is a key step in promoting a new product.
  2. Reach: It is the estimated number of potential customers you can reach with the campaign.
  3. Engagement: It is the creative ideas to engage people and create meaningful interactions over time.
  4. Post Engagement: The number of times people have engaged with the same person on your Facebook Page. Engagements can be anything from likes, to comments, to shares.
  5. Page Likes: They want to see your promotions, products, or anything you posted from your Facebook page
  6. Event Responses: The number of people who responded interested or going to support the Facebook event created.
  7. Traffic: The number of visitors that visit your website, Facebook page or click the links
  8. Lead Generation: The number of potential customers which increase future sales
  9. Conversion: The customers complete their desires and you get sales

It is the conversion process

Targeting Customer Base (Criteria)

  1. Location: This feature offers you can choose to show adverts in specific countries or within a certain radius of specific towns, and use the pin drop to select your desired area.
  2. Age: This is a good feature for B2B clients who would be unlikely to want to target anyone under the age of 21. Also, you can target a different audience or target multiple age ranges depending on your product characteristics.
  3. Gender: You can target people of a specific gender to focus on a core audience. This feature is for gender-oriented products.
  4. Detailed Targeting: This feature is to target specific interests, behaviors, and demographics that are tagged to people in their Facebook users’ data. This is to maximize your potential audience greater than 1,000.
  5. Connections: This feature is to target people who have not connected you or alternatively only target those who are connected to you. The purpose is to get more from existing fans or get new audiences.
  6. Languages: This feature is to target users based on the language they have set. If you know your products cater to certain languages because of their own cultures.
  7. Placements: This is to maximize your budget and show your ads to as many users as possible across multiple web pages or you choose the webpage to show your ad.
  8. Campaign settings: This is to determine the daily budget of your campaign.
  9. Budget: the choice of a lifetime or daily budget.
  10. Bidding: Set to your lowest cost
  11. Creatives: Use a variety of images, videos, and gifs to attract users’ attention.

Advertisement Metrics

The KPI evaluation of advertising mainly focuses on 3 aspects

  1. Advertisement effect (Basic, Performance, brand)
  2. Cost-benefit (Cost, the number of ad impressions)
  3. Audience (the number of ad clicks)

Basic Indicators

  1. CPM (Cost per Mile or cost per thousand impressions) — the price corresponding to the advertisement being displayed 1000 times
  2. CTR (Click-through rate) — the click-through rate of an ad, that is, the percentage of ad clicks to the number of ad impressions
  3. CPC (Cost per click or cost per click-through) — the price corresponding to an advertisement being clicked once

Performance Indicators

  1. Clicks — The number of times the ad was effectively clicked, divided into the total number of clicks and the number of ranked clicks. For example, the same user clicks the same advertisement on the same page 3 times within 1 hour, but the system will detect it as 1 ranked click.
  2. The number of Conversions — It includes the number of registrations, the number of activations, the number of creations, etc. The number of registrations = the number of users who have clicked on advertisements or the App Store to download
  3. CPA (Cost per Action) — Cost per action to calculate the cost per registration
  4. CPL (Cost per Lead) — Cost of acquiring each potential customer (the price of obtaining a potential customer’s information)
  5. CVR (Click Value Rate) — The click conversion rate of an advertisement = the percentage of advertisement conversions to the number of advertisement clicks
  6. Recall Rate — the number of redirected users who registered through the ad

Advertisement Metrics

  1. ROI (Return on Investment=recovery value/cost) — The ratio of the value recovered by advertisers through advertising to advertising investment in a specific period
  2. Retained Users — The users who register again within a time period
  3. The number of active users The users who register the ads again with a time period
  4. The number of paid users The number of users who have successfully paid
  5. Recharge amount The total amount paid by users successfully
  6. DAU (Daily active user) — the number of users who successfully register the ads every day
  7. WAU (Weekly active user) — the total number of users who have successfully registered the ads within a natural week
  8. MAU (Monthly active user) — the total number of users who have successfully registered the ads within a natural month.
  9. ARPU (Average revenue per user) — the average amount paid by active users during a specific period
  10. ARPPU (Average revenue per paying user)—The average payment amount of paying users in a specific period
  11. Retention rate — The ratio of the number of retained users to the number of registered users in a specific period
  12. Active rate — The ratio of active users to the number of registered users in a specific period
  13. Payment rate — The ratio of the number of paying users to the number of registered users in a specific period
  14. Retention cost — The acquisition cost/ the number of retained users
  15. Active cost — The advertising cost/the number of active users
  16. Paid cost — The advertising cost/the number of paying users
  17. LTV (Lifetime value) — Recharge amount/registration amount in the statistical period

Branding Index

  1. Viewability of advertisements — The ratio of ad exposure in the visible area of the window to the total ad exposure
  2. The viewability target audience of an advertisement — The ratio of the target audience to the population exposed by the advertisement
  3. The viewability target audience + Reach — 1 + reach, 2 + reach, 3+reach under the premise of visible exposure
  4. The number of unique visitors (UV number) — the total number of client-server who visit the page within a certain period of time
  5. Bounce Rate — The ratio of the number of visits that leave only after browsing the landing page to the total number of visits to the page (how attractive the page is to users)
  6. Frequency — Each wave of brand advertising usually requires frequency control to improve the effectiveness of advertising display
  7. Second click rate — The number of the first effective click on the page after browsing the landing page to the number of visits to the page (the measure of the user’s visit quality or page’s attractiveness to users)
  8. CPUC (Cost per unique visitors) — advertising cost/UV number
  9. CPE or CPEV (Cost per engagement or cost per engaged visit) — the cost to obtaining a user interaction behavior
  10. CPH (Cost per hour) — the cost of the audience viewing/interacting with the ad per hour
  11. Engagement Rate — The measure of the user’s interaction and engagement (click, share, purchase, and in-site search) with the creative web page during the ad serving.
  12. Recall Rate — The ratio of the users who have seen the advertisement and searched for advertiser-related keywords on various platforms) for a period of time (a measure of brand awareness)
  13. Brand Safety — filter sensitive or illegal keywords
  14. Anti-Fraud
  15. Invalid Traffic
  16. Third-party monitoring discrepancy

Campaign budget optimization (CBO)

https://i.imgur.com/EWWn1EO.png

The campaign budget refers to the budget set at the campaign level (over the ad group level). For example, you can set the budget amount for each day the campaign runs or the entire running period. CBO will automatically find the best ad opportunity for performance ad groups on an ongoing basis in real-time.

Digital advertising has become a very important marketing tactic for many retail companies. Google, Facebook, Instagram, Snapchat, and Youtube all these famous corporations invest heavily in how to catch people’s attention. Unlike those traditional advertising techniques, digital advertising provides better advertising performance. What is the concept of an ads engine?

Functional Requirement

  1. Buy advertising media
  2. Request for advertising materials
  3. Can request advertising media across different placements
  4. Provide multiple campaign choices
  5. Allow to bid/buy
  6. Collect users personal information
  7. Send related ads to users
  8. Receive and process the advertiser order request
  9. An advertising KPI dashboard for advertisers
  10. Allow user to pay through the web page after click
  11. Make proof of payment
  12. Send the stats reports to advertisers

Non-functional Requirement

  1. Consistency
  2. Durable
  3. Reliable
  4. Low latency

Constraints

  1. Frequency: As a platform cannot send too many ads to users to hurt user experiences. It will involve a series of algorithms.
  2. Response time: An advertiser will want a faster response time
  3. Quality: Ad engine must satisfy the user and an advertiser

Facebook and Google’s advertising systems may have more enhancements to meet their specific needs. The system first collects campaign information from advertisers, then builds ad indices based on pacing and forecasting. Another target service will be used to group users based on the criteria set by advertisers. As you can feel, advertising is an interaction between advertisers and users. The ad server asks the ranking service to score ads and find the most suitable ad for the current ad request to a user. Once the user finishes interacting with the ad, either skip it or click it, the system will collect the metrics and report the KPI and send it to advertisers. A data pipeline behind these collectors will aggregate the event history into more valuable real-time statistics and business logs. With those data, the ad server and pacing services can improve the ad delivery performance. The business logs will be used for inventory forecasting and billing.

The high-level system architecture

Ad-Ranking Service

  • Pick an ad for the user
  • Deliver the best-related ad by considering the user interest, past records, tags he/she use, and ad historical performance
  • The machine learning pipeline can be built with the application of Sparse logistic regression and gradient boosting decision tree.

Disclaimer: This article is only about my idea and has no association with any real companies or products. Please feel free to discuss. The part of my article might be not that accurate. I will take some efforts to understand the architecture design behind digital advertising. In the future, I will modify and make it more structured. I believe good content is an asset.