Jump to content

Open source online advertising platform

From IdeaWazaWiki
(Redirected from Open online ad platform)

Open source online advertising platform refers to software and infrastructure for buying, selling, serving, managing, targeting, measuring, or otherwise facilitating online advertising where some or all of the underlying software is released as open source software.

An open source advertising platform can range from a relatively simple ad server that places advertisements on websites to a larger system involving publishers, advertisers, bidding, campaign management, analytics, payments, privacy controls, and APIs. It can potentially provide an alternative to proprietary advertising systems controlled by large technology companies.

Open source approaches can be useful for learning, teaching, research, entrepreneurship, and experimentation with different models of Internet advertising. They can also allow publishers and advertisers to examine how advertising software operates rather than relying entirely on systems whose underlying code and decision-making processes are not publicly available.

Building a complete online advertising platform is technically and economically challenging. Advertising involves more than displaying an image or link. A functioning system may need to manage millions of impressions, determine which advertisements should be shown, measure results, prevent fraud, protect user privacy, process payments, and provide reliable statistics to multiple participants. There is at least one open source online advertising platform in existence, it seems.

Basic participants

An online advertising system normally involves several types of participants.

  • Publishers provide websites, apps, videos, games, newsletters, or other media where advertisements can appear.
  • Advertisers pay to promote products, services, organizations, ideas, or other content.
  • Users consume the content in which advertisements appear.
  • Ad networks can connect groups of publishers with advertisers.
  • Ad exchanges can create marketplaces where advertising inventory is bought and sold.
  • Advertising agencies may manage advertising campaigns on behalf of clients.
  • Technology providers provide software for ad serving, bidding, measurement, fraud prevention, and other functions.

An open source platform could attempt to serve only one of these groups or provide infrastructure connecting several of them.

Ad serving

An ad server stores advertisements and determines which advertisement should appear when a page, application, or other digital resource requests one.

A basic ad server might allow a publisher to:

  • Create advertising spaces or zones.
  • Add advertisers.
  • Upload advertisements.
  • Create campaigns.
  • Set campaign start and end dates.
  • Limit the number of impressions.
  • Target advertisements to particular pages or contexts.
  • Record impressions and clicks.
  • Generate performance reports.

More advanced systems can also track conversions, control advertisement frequency, select ads according to geography or other criteria, manage revenue, and communicate with external advertising platforms.

Revive Adserver is an example of an existing open source ad-serving project. It can be used by publishers, advertisers, and advertising networks to manage campaigns and deliver advertisements.

Programmatic advertising

Programmatic advertising uses software to automate aspects of buying and selling advertising.

Instead of a publisher and advertiser manually negotiating every advertising placement, computer systems can determine which advertisement should appear and how much an advertiser is willing to pay.

One important form is real-time bidding. When an advertising opportunity becomes available, information about the opportunity can be sent to potential buyers. Buyers can submit bids, and an advertisement can be selected within a very short period of time.

The OpenRTB specification provides an open technical protocol for communication involved in real-time advertising auctions.

An open source advertising platform could implement standards such as OpenRTB so that independent systems can communicate with other advertising technologies rather than requiring every participant to use software from the same company.

Header bidding

Header bidding allows a publisher to request bids from multiple advertising demand sources before selecting an advertisement.

Prebid is an important open source project in this area. Its software includes Prebid.js for websites, Prebid Server for server-side bidding, and software for mobile applications.

Prebid is not necessarily a complete advertising business by itself. It provides infrastructure that publishers and advertising companies can integrate into larger systems.

This demonstrates an important distinction. An open source advertising platform does not have to mean one enormous program containing every advertising function. A platform could instead be assembled from open source components that communicate through documented standards and APIs.

Possible architecture

A larger open source advertising platform could include several components:

  • Publisher accounts.
  • Advertiser accounts.
  • Campaign management.
  • Advertising inventory management.
  • Creative asset storage.
  • Ad serving.
  • Contextual targeting.
  • Geographic targeting.
  • Budget management.
  • Impression and click tracking.
  • Conversion tracking.
  • Real-time bidding.
  • Reporting and analytics.
  • Fraud detection.
  • Billing and payments.
  • Privacy and consent management.
  • APIs for external software.
  • Administrative and moderation tools.

Some systems might intentionally omit particular functions.

For example, a privacy-oriented advertising network might use contextual advertising rather than constructing behavioral profiles of individual users.

A decentralized platform might allow publishers to operate their own advertising servers while sharing a common protocol for discovering advertisers and settling payments.

Contextual and behavioral advertising

Contextual advertising selects advertisements partly according to the content being viewed.

For example, a page about computer hardware might display advertisements related to computers.

Behavioral advertising can select advertisements using information about a user's previous behavior, interests, browsing activity, or inferred characteristics.

The distinction creates an important area for research.

Behavioral targeting may allow advertisers to reach more specific audiences, but extensive collection of personal information can create privacy concerns. Contextual advertising can reduce the need to track users across unrelated websites, although contextual systems still require careful design if they collect other identifying information.

An open source project could experiment with advertising systems designed specifically around data minimization and user privacy.

Transparency

Open source software can potentially increase technical transparency because researchers and developers can inspect the source code.

This does not automatically make an advertising platform trustworthy. The software running on a server might differ from the publicly available source code, and important decisions can also occur through configuration, proprietary algorithms, contracts, or external services.

Nevertheless, open source development can make it easier to investigate questions such as:

  • How are advertisements selected?
  • What information about users is collected?
  • How long are data retained?
  • How are advertising statistics calculated?
  • How are bids compared?
  • What information is shared with third parties?
  • Can independent developers modify the system?

These questions can become subjects for technical auditing and academic research.

Advertising fraud

Advertising fraud is a major technical problem in online advertising.

Examples can include:

  • Automated bots generating fake impressions.
  • Automated clicking on advertisements.
  • Fake websites created primarily to generate advertising revenue.
  • Misrepresentation of where an advertisement appeared.
  • Artificial conversion activity.
  • Manipulation of auction systems.

An open source advertising platform would need mechanisms for detecting suspicious activity.

Possible methods could include statistical analysis, rate limiting, reputation systems, cryptographic verification, traffic analysis, and human investigation.

Open source development might allow researchers to experiment with fraud-detection methods, although making detection methods completely public can also provide information to people attempting to evade them.

Privacy and data

Advertising platforms can process substantial amounts of data.

Possible data can include:

  • Advertisement impressions.
  • Clicks.
  • Browser information.
  • Approximate geographic information.
  • Referring pages.
  • Campaign identifiers.
  • Conversion events.
  • Device information.
  • Account and payment information.

A platform should distinguish between information that is actually required to deliver advertising and information that is merely useful for additional targeting.

Privacy-oriented design might involve collecting less information, using short retention periods, avoiding cross-site identifiers, processing information locally, or using contextual rather than behavioral targeting.

The relationship between advertising revenue and privacy is an important topic for research.

Business models

Open source does not mean that a platform cannot generate revenue.

Possible business models include:

  • Charging advertisers a transaction fee.
  • Charging publishers a platform fee.
  • Taking a percentage of advertising transactions.
  • Providing managed hosting.
  • Selling optional support services.
  • Offering premium analytics.
  • Providing enterprise hosting and administration.
  • Operating an advertising marketplace using open source infrastructure.
  • Accepting sponsorships or voluntary contributions.

A platform could also operate as a cooperative, nonprofit organization, decentralized network, conventional business, or combination of models.

One research question is whether an open protocol could allow many independent advertising businesses to compete while still participating in the same advertising ecosystem.

Developing a simple experimental platform

A useful educational project would be to build a minimal advertising system.

A basic experiment could:

  1. Allow a publisher to create an advertising location.
  2. Allow an advertiser to upload an image and destination URL.
  3. Establish a campaign budget.
  4. Select an eligible advertisement when a page loads.
  5. Record an impression.
  6. Record clicks.
  7. Display campaign statistics.
  8. Calculate payment between the advertiser and publisher.

Additional features could then be added incrementally.

Students could experiment with contextual targeting, auctions, advertiser bidding, fraud detection, privacy-preserving analytics, or decentralized payment systems.

Such a project combines web development, databases, statistics, economics, security, user interface design, and business experimentation.

Research opportunities

Open source advertising provides many possible areas for research.

Researchers could examine whether transparent auction algorithms produce different results from proprietary ones, whether contextual advertising can generate sufficient revenue without extensive behavioral tracking, or whether smaller publishers could benefit from cooperative advertising networks.

Other research could investigate fraud prevention, decentralized identity, micropayments, cryptocurrency settlement, machine learning for advertisement selection, or systems in which users voluntarily choose what kinds of advertisements they want to see.

Open source systems can be particularly useful for research because researchers can modify the underlying software rather than treating the advertising platform as a fixed external service.

  • What functions would be necessary for a complete open source online advertising platform?
  • What is the difference between an ad server, ad network, ad exchange, DSP, and SSP?
  • Could contextual advertising provide a viable alternative to extensive behavioral tracking?
  • What information actually needs to be collected to operate an online advertising marketplace?
  • How could an advertising platform verify that impressions and clicks came from humans rather than bots?
  • What are the advantages and disadvantages of making advertising algorithms open source?
  • Could publishers collectively operate a cooperative advertising network?
  • How could micropayments affect the economics of small websites?
  • Could blockchain or other decentralized technologies provide useful functions within an advertising marketplace, or would conventional databases work better?
  • Ask an AI system to design a minimal open source advertising platform. Identify which components are necessary for the first working version and which could be added later.
  • Ask an AI system to compare contextual targeting with behavioral targeting in terms of privacy, advertising effectiveness, computational requirements, and data collection.
  • Design an experiment comparing several algorithms for selecting advertisements.
  • Develop a research project for detecting fraudulent advertisement clicks.
  • Investigate how an open advertising network could allow small independent websites to pool their advertising inventory.
  • What incentives would be necessary to attract both publishers and advertisers to a new advertising marketplace?
  • Could an advertising platform allow users to specify which categories of advertisements they prefer to receive?

Readings

Wikipedia

Open source projects and standards

See also