Real-Time Bidding (RTB)
Turn every inbound call into a live auction across your buyers, route to the highest bid, and never strand a call.
What RTB does
Real-Time Bidding turns every inbound call into a live ping-post auction. When a caller hits the RTB step in your call flow, CallScaler pings every active buyer in parallel with the caller's phone, ZIP, and a unique reference ID. Each buyer responds — accept or reject, plus a bid amount — usually inside one second. CallScaler filters out rejections and bids below your minimum, then routes the call to the highest remaining bid. If no buyer clears the minimum, the call goes to your configured failover so callers are never stranded.
- •One step in your call flow, unlimited buyers
- •Parallel ping-post — total auction completes in about a second
- •Works with MarketCall, Arroyo Media, Ringba, TrackDrive, and any custom ping endpoint
- •AI buyer autofill imports an endpoint config from a pasted curl or spec in seconds

Pricing
RTB is a $39/mo account-level addon with a 7-day free trial. There are no per-call fees, no per-buyer fees, and no cap on the number of buyers in an auction. Enable it from Addons — the trial starts automatically and you'll only be charged after the 7 days if you don't cancel.
If the addon is off, RTB steps in your existing flows skip the auction entirely and route the call straight to your configured fallback destination. Re-enable the addon and the same flow starts auctioning again — no edits required.
How an auction works
When a call reaches an RTB step, this happens in order:
Buyers that don't respond within 12 seconds are treated as a no-bid. Most networks respond in 200-600ms — long timeouts usually mean a buyer endpoint is down or misconfigured.
- •Zip prompt — the caller is asked to enter their 5-digit ZIP code on the keypad. CallScaler retries up to 3 times on invalid input.
- •Hold music — while bidding runs, the caller hears your hold message (default CallScaler audio or your own upload).
- •Parallel ping — every active buyer is POSTed at the same time with caller, zip, and ref_id. Each buyer has up to 12 seconds to respond.
- •Filter — rejected bids and bids below your
Min bidare dropped. - •Winner — the highest remaining bid wins. CallScaler dials the destination number the buyer returned in their post response.
- •Failover — if no bid clears the minimum (or every buyer times out), the call goes to your fallback destination. Callers are never just dropped.
Setting up an RTB step
RTB lives inside any call flow as a step type. To add one:
RTB usually works best as the second or third step in a flow: a short Greeting first, then RTB. Skip prompts and intros that delay the auction — callers are most willing to enter their ZIP right after a quick "thanks for calling."
- •Open or create a call flow in Call Flows.
- •Click Add Step, choose More options, and select Real-time bidding (RTB).
- •Confirm or edit the zip code prompt (default: "Please enter your 5 digit zip code."). You can switch to an uploaded MP3/WAV file instead of text-to-speech.
- •Pick a hold music source: keep the CallScaler default or upload your own.
- •Add your bidders (next section).
- •Set your Min bid in dollars — bids below this are filtered out automatically.
- •Set a Fallback destination phone number for calls that don't win any bid above the minimum.
AI buyer autofill
Most buyer networks publish a ping-post spec — a curl command, raw HTTP request, or JSON example. Instead of mapping fields by hand, click Autofill from specs on any new bidder and paste the spec. CallScaler runs it through an AI extractor (Claude) and fills in the endpoint URL, request format, headers, and body params for you. You only need to paste the values that were left blank, like API keys.
If your buyer doesn't publish a spec, you can still copy the curl from their browser's network tab — autofill handles that just as well.
- •Supports curl, raw HTTP, JSON examples, and copy-pasted help-doc text
- •Pre-baked for the common networks — MarketCall, Arroyo Media, Ringba, TrackDrive
- •Maps each network's placeholder syntax (
%CALLER_ID%,[tag:gather:zipcode],{{phone}}, etc.) to CallScaler's{caller},{zip},{ref_id}template variables automatically - •Returns notes about anything ambiguous, missing, or skipped (state is dropped by design — most buyers don't require it)

Minimum bid + fallback
Your Min bid is the floor: any bid below it is filtered out, even if it's the only bid. Set this to your true break-even — calls below it cost you more to route than the buyer pays you. Your Fallback destination is where calls go when no buyer clears the minimum, or when every buyer times out or rejects. This is typically your own sales line, voicemail, or a lower-paying always-on buyer.
If you leave the fallback destination blank, no-winner calls will be hung up. Always set a fallback unless that's actually what you want.
Hold music
The auction itself runs in the background while the caller hears hold music. By default CallScaler plays a short "thank you, please hold" message followed by piano. You can upload your own MP3 or WAV file from the step editor — useful for brand consistency or for explicitly setting expectations ("Please hold while we find the best agent for your call").
Testing a buyer endpoint
Each bidder has a Test button in its expanded view. CallScaler sends a real ping with synthetic caller + zip data to that buyer's endpoint and shows you the parsed response — accept/reject, bid amount, and the raw JSON. Use this to verify a new buyer is configured correctly before it goes live in real auctions.
If a test returns accept but the buyer's reported bid is 0, check your endpoint config — most networks need a campaign or offer ID that wasn't autofilled. The raw response panel usually tells you exactly what's missing.
Related
On this page