RTBkit Home Page

RTBkit is an open-source software framework designed to make it easy to create real-time
ad bidding systems.

RTBkit is a real-time bidder framework designed for use on advertising exchanges such as the Rubicon Project, Nexage, App Nexus, The Google Ad Exchange and others.

The source code is now available at http://github.com/RTBkit under the Apache License.

Latest RTBkit Blog Post

Mark Weiss, head of client solutions at Datacratic, shares some of the challenges companies and developers face today as they move into Real Time Bidding. He will do a developer deep dive into design and implementation choices, best practices, technologies, plugins and provide some real world RTB...

Frequently Asked Questions:

What is RTBkit?

RTBkit is an open-source software framework that takes much of the hard engineering work out of creating a Real-Time Bidder for online advertising. Its open, service-oriented architecture can be used to assemble a bidder as simple or complex as desired. The RTBKit core connects to ad exchanges via Exchange Connectors and routes bid requests and data through a configurable set of components which can be extended to implement a customized bidder. More details.

Permalink   ·   Posted on 02/06/2013 - 18:54 in Business

Who can use RTBkit?

Anyone can use RTBkit to build a real-time bidder. RTBkit is open-source software, so it is free to use within the bounds of the Apache License.

Permalink   ·   Posted on 02/18/2013 - 19:29 in Business

How much does RTBkit cost?

RTBkit is open-source software, it is feely available within the bounds of the Apache License.

Permalink   ·   Posted on 02/18/2013 - 19:58 in Business

How can I get started with RTBkit?

RTBkit is software framework which developers can use to build real-time bidders. The first step is to download and explore the code and design your bidder around the RTBkit core and plugin architecture. If you need help, don't hesitate to join our Google Group or find a member of the RTBkit ecosystem to help you.

Permalink   ·   Posted on 02/18/2013 - 19:37 in Business, Technology

What is needed to build a bidder using RTBkit?

Building, deploying and operating a real-time bidder is a complex project. RTBkit can help you with only part of it. RTBkit is not a solution in itself, only a framework, and it doesn't help you with any of the following, all of which you will probably need to complete your project:
  • Develop the GUI to manage your RTB campaigns and to offer reporting to your users
  • Implement the logic that decides how much to bid for each campaign
  • Launch, configure and monitor your bidding agents
  • Launch, configure and monitor your RTBkit installation
  • Handle billing
  • Serve the ads
  • Upload the creatives
  • Find the right servers to host your services on
  • Develop and maintain relationships with the ad exchanges
In terms of skills, keep in mind that working around RTBkit requires a fair understanding of Linux, C++ and make.
Permalink   ·   Posted on 09/13/2013 - 17:17 in Business

How can I get involved?

The best way to get involved is to download the code and start playing with it, join the Google Group to ask/answer questions, and eventually contribute some code back to the project.

Permalink   ·   Posted on 02/19/2013 - 09:03 in Business, Technology

Which software language is RTBkit built with?

RTBkit is written in high-performance C++11 and runs on Linux (Ubuntu 12.04).

Plugins extend C++ classes and plugin bindings currently exist for Javascript (V8/NodeJS). Bindings for other languages (Java, Python etc) should be reasonably straight-forward to build.

RTBkit services and components communicate with each other via ZeroMQ and HTTP. RTBkit uses Graphite to record statistics and Apache ZooKeeper for service discovery.

Permalink   ·   Posted on 02/18/2013 - 19:28 in Technology

What license is RTBkit released under?

RTBkit is released under the Apache License, v2.0.

Permalink   ·   Posted on 02/18/2013 - 19:32 in Business, Technology

Who is behind RTBkit and why?

RTBkit was developed and released by Datacratic and is intended to become a community-led open-source project, contributions are welcome by all.

For more information on why Datacratic released RTBkit see RTBkit: An Exciting Day for Real Time Advertising on Datacratic's blog.   

Permalink   ·   Posted on 02/18/2013 - 19:40 in Business

Is RTBkit secure?

RTBkit is a collection of components which are meant to run behind a firewall which permits connections only to authorized users and exchanges. It is not intended to exposed to the open internet. RTBkit is open-source software, which encourages open collaboration, especially around issues such as security.

Permalink   ·   Posted on 02/18/2013 - 19:52 in Technology

Is RTBkit scalable?

The RTBkit core is horizontally scalable and was designed to support 20,000 queries per second per high-end commodity server.

Permalink   ·   Posted on 02/18/2013 - 19:57 in Technology

Is RTBkit stable / production ready ?

RTBkit is stable. The 0.9 release has a stable API.
RTBkit is production ready.  Multiple RTBkit bidders are currently in production and the number will significantly increase in the upcoming months (August 2013).  
Permalink   ·   Posted on 09/12/2013 - 09:41 in Business, Technology

Does RTBkit have a user interface?

RTBkit does not include a user interface. The RTBkit core is a collection of software components which expose HTTP and ZeroMQ API's, which can be used as a back-end for an external user interface.

Permalink   ·   Posted on 02/18/2013 - 19:43 in Technology

Which Ad Servers is RTBkit compatible with?

RTBkit is ad-server agnostic and is designed to work with any ad-server. RTBkit bidding agents specify which ad-server tags to bid with via a configuration message to the RTBkit core. 

Permalink   ·   Posted on 02/18/2013 - 19:47 in Technology

Which advertising exchanges can RTBkit connect to?

RTBkit is an exchange-agnostic framework and is meant to be compatible with any ad exchange. The RTBkit Core communicates with exchanges via Exchange Connector plugins. A connector for The Rubicon Project and for Gum Gum are already available, and connectors for AppNexus, Nexage, The Doubleclick Ad Exchange and others will be released in the coming weeks and months. Community contributions of Exchange Connector plugins are welcome!

We're maintaining a list of connectors available and being developed here.

Permalink   ·   Posted on 02/18/2013 - 19:49 in Technology

Is RTBkit OpenRTB-compatible?

RTBkit is an exchange-agnostic framework and is meant to be compatible with any ad exchange. The RTBkit Core communicates with exchanges via Exchange Connector plugins and these plugins depend on bid-request parsers. RTBkit's internal representation of a bid request is similar to OpenRTB's representation, with full round-trip serialization as a goal. This means that OpenRTB-formatted bid requests are easy to parse, although exchange-specific connectors or parser extensions may be required, depending on the specifics of each exchange's use of OpenRTB.

Permalink   ·   Posted on 02/19/2013 - 00:37 in Technology

Does RTBkit support Video/Mobile exchanges?

RTBkit is an exchange-agnostic framework and is meant to be compatible with any ad exchange, including video and mobile exchanges. The RTBkit Core communicates with exchanges via Exchange Connector plugins, and it is easy to write such plugins for OpenRTB-compatible exchanges. Connectors for major exchanges, including video and mobile exchanges, are expected in the coming weeks and months. Community contributions of Exchange Connector plugins are welcome!

Permalink   ·   Posted on 02/19/2013 - 08:36 in Technology

What is an augmenter?

An augmentor is an optional component responsible for augmenting a bid request with data as it goes through the router. This data is delivered to each agent that asked for the augmentation and can also be used by the router to apply custom filtering on the bid requests destined for a given agent.
A frequency cap augmentor for example could add the frequency count (the number won bids by an agent for a given user) to the bid request so the router can decide whether the bid request should make it to the agent.
Permalink   ·   Posted on 09/12/2013 - 09:30 in Technology