Project overview

An innovative adtech solution designed to optimize ad buying and selling. By using the platform, advertisers can run campaigns more effectively, while publishers can reap bigger ad revenues. The system relies on server-side stitching (SSAI) to seamlessly insert ads into pages.

Client: a leading real-time advertising agency in Europe that serves global media companies and transacts over 1 billion ad impressions a month.

Professional Services
Delivery Model
Scope-driven milestone-based development
Effort and Duration
4 months, 10 man-months
PHP, Node.js, AWS, Amazon SES, MongoDB, PostgreSQL, Stripe

Business challenge

The client approached Oxagile with the concept of an adtech solution aimed specifically at eCommerce companies and tailored to the specifics of their ad strategies.

The new platform would allow advertisers to create and pay for product campaigns on a pay-per-click basis from a single dashboard. In turn, publishers would be able to serve more relevant and profitable product ads to visitors, maximizing the yield from their ad inventory.

Delivered solution

Oxagile developed the entire solution from scratch, including the sophisticated prediction-based targeting mechanism that helps advertisers reach the right people with the right ads every time they browse a product catalog on the publisher’s website.

Key features and highlights

  • Advanced user management and control
  • Campaign creation and archiving
  • Google PLA feed upload and management
  • Ad targeting by geography, age, gender, search query, and more
  • CTR prediction mechanism
  • Flexible server-side ad insertion logic
  • Budget threshold management
  • Stripe-based payment handling
  • Email notification system
  • Data analytics and report generation
  • Request processing time of under 120 ms
Campaign Management

Every advertiser creates a profile that enables them to set up and manage product campaigns. A new campaign is created in only 4 steps:

  • Uploading an XML file containing the advertiser’s Google PLA feed
  • Selecting products for the campaign from the feed
  • Setting the campaign’s targeting parameters (keywords, geography, gender, age, etc.)
  • Depositing sufficient funds to the internal account via Stripe

If necessary, the advertiser can add or remove product ads in active campaigns, edit targeting parameters and bid amounts, or archive campaigns to get back to them later.

The advertiser’s account is charged every time a visitor clicks on their ad in the publisher’s product catalog.

Ad Auction Logic

Oxagile implemented internal ad auction logic, giving platform advertisers access to the benefits of real-time bidding. These include per-impression targeting, better campaign performance control, ad strategy flexibility, and deeper audience insights — all of which lead to higher CTRs.

Newly imported products are parsed and stored as database records with all the required product properties. When the publisher side sends in a new request, the platform matches the visitor’s profile (search query, zipcode, gender, year of birth, etc.) to these records and identifies the most suitable ads for the auction.

The potential value of each ad in the auction is calculated on the basis of the advertiser’s stated bid and the CTR prediction made by the platform. Predictions are based on historical data about API requests, the system’s responses, and click-through rates for similar items.

The product listings with highest potential value are then sent to the publisher side. Whenever a visitor clicks on one of the product listings, the CTR log and individual campaign statistics are updated to finetune future predictions.

Scalability and Performance

To support a large number of concurrent requests and accommodate the future growth of the client base, Oxagile implemented dynamic horizontal and vertical scaling, as well as robust failover capabilities.

The implemented architecture allows for seamless real-time bidding calculations. The whole process from request to response takes just under 120 ms.

Ad Serving

Publishers receive the auction-winning product adverts via a REST API call. The platform sends all the advert properties in JSON format for easy parsing on the publisher’s side.

The use of server-side stitching (SSAI) to infuse ads into product pages allows publishers the utmost flexibility in page presentation. In addition, SSAI makes it difficult for ad blocking software to separate core content from sponsored listings, protecting the publisher’s ad revenue and making the platform more appealing for advertisers.

Project results

The client received a full-fledged programmatic adtech system that will allow them to expand their offering to eCommerce clientele, sign up new contracts, and increase revenues.

At the next stage of cooperation, Oxagile’s team will be introducing a host of new features, including a more fine-grained product targeting, better search query matching logic, custom ads, ad spend prediction, and a machine learning-powered CTR engine.