moloads
Self-serve · OpenRTB 2.x

Buy the impression.
Keep the margin.

A demand-side platform built for affiliate buyers, not brand planners. Bid into open exchanges and private deals, track every conversion back to the impression that caused it, and let rules pause what loses money while you sleep.

What the bidder speaks · every supply partner gets its own route, credentials and kill switch

The platform

Everything between the bid request and the payout.

Not a dashboard bolted onto someone else's bidder. The auction logic, the tracking funnel and the optimisation live in one system, which is the only reason a conversion can be traced back to the impression that caused it.

Real-time bidding

OpenRTB 2.x · answers inside the exchange timeout

An OpenRTB 2.x bidder that answers inside the exchange's timeout. Campaign, budget, audience and deal state are held in memory and refreshed in the background, so the auction path never waits on a database.

  • EndpointPOST /api/v1/bid, pydantic-validated, tmax deadline enforced
  • StateCampaigns, budgets, caps and deals held in process
  • Win noticeHMAC-signed nurl carrying ${AUCTION_PRICE}
See the 100 ms breakdown

Tracking that reconciles

S2S postbacks · transaction-id de-duplication

Server-to-server postbacks with transaction-id de-duplication, a universal pixel for click and view attribution, and multi-touch reporting. Every conversion carries the click and the bid it came from.

  • PostbackIdempotent on the network's transaction id
  • ClickYour click id substituted into {click_id} or appended as subid
  • PixelClick window, falling back to a view window
How attribution works

Granular targeting

Geo · device · daypart · frequency

Country, region and city, device type, OS, browser and connection, day and hour, site and app, plus banner sizes. Frequency caps are enforced per user per campaign over a window you set.

  • GeoCountry, region, city, include or exclude
  • DeviceType, OS, browser derived from UA, connection
  • FreqRedis counters, or a bid-log count without Redis
Learn more

Goal-based bidding

Target CPA / ROAS · bid shading

Set a target CPA or ROAS and the bid scales toward it from your own conversion data. Bid shading trims what you overpay on wins. Per-hour and per-country multipliers stay under your control.

  • GoalTarget CPA or ROAS, walked toward, never jumped to
  • ShadingTrims the gap between your bid and the clearing price
  • ModelTrains on your own win and conversion history
Learn more

Budget control

Even / ASAP / front-loaded pacing

Daily and total caps with even, ASAP or front-loaded pacing. Budget is reserved at bid time and released if the bid is pruned or times out, so a campaign cannot quietly overspend its cap.

  • ReserveAtomic hold placed before the bid leaves the process
  • ReleaseTTL ledger returns holds on prune or timeout
  • SharedRedis for atomic state across instances
Learn more

Traffic filtering

Bot and datacentre detection · blocklists

Bot and datacentre user-agent detection, IP and IP-range blocklists, domain and app blocklists, and per-source request-rate limits. Blocked traffic is rejected before it can cost you a bid.

  • Pre-auctionFilters run before the bid path, so blocked traffic is free
  • ListsIP, IP range, domain, app bundle, advertiser
  • RateWindowed per-IP and per-source limits
Learn more

Rules that act

Scheduled · audited · one-click pause

Pause campaigns that run unprofitable over a window, cross a CPA ceiling, or approach a budget cap. Rules run on their own schedule and write an audit row every time they fire.

  • TriggersROI, CPA ceiling, wasted spend, budget or flight ending
  • ActionPause, or surface in "needs attention" for one-click pause
  • AuditEvery firing writes a row you can read back
Learn more

Audiences

Built from your own pixel events

Build audiences from pixel events, page views, specific URLs, converters, then include or exclude them in targeting. Membership is bridged from your pixel back to the bid-stream user id.

  • SourceYour universal pixel, no third-party data purchase
  • BridgePixel identity mapped to the bid-stream user id
  • UseInclude or exclude per campaign, alongside other targeting
Learn more

Reports you can build

Save a definition · schedule it · CSV or XLSX

Break down spend, conversions, CPA, EPC, profit and ROI by campaign, day, country, device, OS or creative. Save a definition, schedule it, pull it as CSV or XLSX.

  • DimensionsCampaign, day, status, geo, device, OS, creative
  • MeasuresSpend, revenue, profit, ROI, CPA, EPC, CTR, CVR
  • ExportCSV or XLSX, on demand or scheduled
Learn more
Anatomy of a bid

You get about one tenth of a second.

An exchange sends a bid request and starts a clock. Miss the deadline and your bid is discarded: no impression, no error, nothing to debug. Everything below happens inside that window, on data already held in memory.

~0 MS

Request in

Kill switch, JSON validation, supply-chain check and fraud filters. Bot user-agents, blocklisted IPs and blocked domains never reach the auction.

Rejected traffic costs nothing
~1 MS

Match

Active campaigns filtered by targeting, creative size, frequency cap and blocked-advertiser rules. Every lookup an in-memory read, never a query.

No database on the auction path
~2 MS

Price

Base bid, then the ML model, time and geo multipliers, the markup ceiling, the goal multiplier and any loss uplift, checked against the floor.

Below floor → no bid
~3 MS

Reserve

Budget is held atomically before the bid leaves. If the deadline passes or the bid is pruned, the hold is released rather than stranded.

Caps cannot be quietly overspent
~4 MS

Respond

The creative is wrapped with click and impression tracking, banner, VAST or native JSON, and the bid goes back with its win and loss notice URLs.

nurl carries an HMAC token
Typical exchange deadline 100 ms We stop at tmax − 20 ms Cancelled bids release their hold Clearing price capped at our bid
Creative formats

Three formats, each wrapped with your tracking on the way out.

300 × 250

Banner

Any size the exchange offers, matched against the sizes you configure. Creatives rotate by weight, and every click routes through your own tracker before the offer URL.

Weighted rotation · click wrap · imp pixel

Video

Give a hosted video file and get inline VAST 3.0 built for you, or supply your own VAST and have impression and click-through trackers injected into it.

VAST 3.0 · skippable · MIME gated
SPONSORED LEARN MORE

Native

Title, image, description, sponsored label and call to action, mapped onto whatever assets the publisher's native request actually asks for.

Asset mapping · imptrackers · JSON adm
Open auction & private deals

Bid on the inventory your offers actually convert on.

Private auction deals where your negotiated price acts as a floor, and preferred deals at a fixed price. Deals can be scoped to one supply source and pinned to a single campaign.

  • Open auction across every connected exchange
  • Private auction, your negotiated price as the floor
  • Preferred deals at a fixed price, pinned to one campaign
Request access
Observability

Every bid outcome is a metric you can scrape.

Prometheus metrics at /metrics: bid outcomes and a latency histogram, per-campaign bids, wins and spend, funnel counters for impressions, clicks, conversions and revenue, and an active-campaigns gauge.

Learn more
Deployment

Runs where you need it, with the state you need shared.

PostgreSQL or SQLite, Redis for atomic cross-instance budget state, Docker and docker-compose, Alembic migrations, and CI on every push.

Learn more
Privacy

Your data stays yours, and leaves when you ask.

Accounts are scoped per advertiser, so someone can work one advertiser's campaigns without seeing the rest. GDPR erasure tools are built into Settings.

Learn more
Supply & questions

Connected supply, and room for more.

Onboarding

Curated.Media

Curated PMP packages: audience, contextual and demographic supply, bought by deal ID.

On request

Your exchange

New OpenRTB partners are added as a tagged bid endpoint with their own credentials and kill switch. Ask us about a specific one.

Always

Your own tracker

The click redirect passes a click id through to your destination URL, so Voluum, RedTrack, Binom or anything else that accepts a parameter works normally.

Why is signup gated?
Because supply partners hold the bidder accountable for the traffic bought through it. Reviewing accounts by hand keeps those relationships intact, which is what keeps the inventory available to everyone on the platform.
What do I need before I start?
An offer with a trackable URL that accepts a click-id parameter, a creative, and a network that can fire a server-to-server postback. If your network only supports pixel conversions, the universal pixel handles that instead.
How are conversions attributed?
A postback carries the click id issued by the click redirect, which maps to the exact bid and impression. Pixel conversions attribute on a click window, falling back to a view window when there was no click. Multi-touch reporting shows the full path where one exists.
Can I bring my own tracker?
Yes. The click redirect passes a click id through to your destination URL, so Voluum, RedTrack, Binom or anything else that accepts a parameter works normally alongside the built-in reporting.
Do you support private deals?
Yes. Private auction deals, where your negotiated price acts as a floor, and preferred deals at a fixed price. Deals can be scoped to one supply source and pinned to a single campaign.
Can more than one person use the account?
Yes. Accounts are scoped per advertiser, so you can give someone access to a specific advertiser's campaigns without exposing the rest.

From request to first conversion,
usually inside a business day.

01

Request access

Tell us what you run and roughly what you spend. This is not an instant-signup platform. Every request is read by a person.

02

Get your login

Approved accounts get credentials by email and land straight in the console. Change your password on first sign-in.

03

Add offer and creative

Paste the offer URL with its click-id macro, add the creative, and set the payout so profit and ROI are calculated for you.

04

Wire the postback

Copy the postback URL into your affiliate network. Conversions arrive server to server, de-duplicated by transaction id.

05

Launch

Set targeting, budget and a bid, then activate. Add a rule to pause anything unprofitable so a losing campaign stops without you watching.

Request access

Tell us what you run, and we'll tell you honestly.

Every request is read by a person. If it's a fit we'll send your login details by email, usually within a business day.

  • No credit card to get in
  • Your data stays yours, exportable any time
  • We'll tell you honestly if you're too early

We'll only use these details to review your request and set up your account.