Changelog

CallScaler Product Changelog and Release Notes

What's New

The latest updates and improvements to CallScaler.

September 18, 2026

Team tab edge cases

new
  • Pending accounts: adding the invited email itself as a teammate on a buyer that has not signed in yet is now refused, so the invite still makes it the owner. Teammates cannot be added to a publisher until that publisher has signed in, since they would not have been able to get in before.
  • Removed accounts: logins can no longer be added to a removed buyer or publisher.
  • Owner count: on older buyer accounts the primary login now counts as an owner, so the last owner-level teammate can be removed.

A cleaner first visit for new publishers

new

Until an offer is approved, the publisher dashboard is one focused page: a hero that points to browsing offers (or says your application is under review, or invites you to try another offer if it was declined), the three steps from application to first call, and a support link. Earnings, call counts, campaign tiles and the payout-method reminder appear once your first application is approved, when they mean something.

Marketplace publisher sidebar

new

Marketplace publishers now get the same sidebar as network publishers: Overview, Browse Offers, My Campaigns, Payout Method and Webhooks, with My Calls and Earnings under Activity. Buying lives in its own Buy Calls section with My Campaigns and Billing.

AI Watchdog catches up faster and links to the call log

improved

A monitor created with a lookback starts on its backlog within the hour instead of waiting for its send hour, and a backlog now clears in one sitting: when a batch fills up, the next batch starts right away until the monitor is current, so a week of calls is reviewed in minutes rather than 400 calls an hour. Each batch also reviews calls about twice as fast. Every monitor page has a View in call log button that opens the call log with the monitor's tag filter on and the date range set to cover every flagged call, and the tag badge in the monitor list is the same shortcut. A run interrupted mid-batch (for example by a restart) is now closed out with what it got through instead of showing In progress forever.

September 17, 2026

Team tab on buyers and publishers

new

Each buyer and publisher page now has a Team tab showing everyone who can sign in to that account, with the same Add a login form the account owner has. Add a teammate by email as an Owner or View only. If the email already has a login anywhere on CallScaler, it is added as is: no second account, no password change, and the account appears in their account menu on their next sign in. A new email gets a temporary password you share with them. Send a password reset or remove a login from the same list. The primary login stays put.

Missed opportunities on each buyer's campaigns

new

The amber missed opportunities pill buyers see on their campaign cards now shows on the buyer's Campaigns tab in your network too, next to the pause button. Click it for the same breakdown the buyer gets: calls in the campaign's ZIP codes that went to a higher bid over the last 30 days, with the winning bid on each and a shortcut to the campaign page to raise the bid.

Ping logs show whether a won call qualified

new

Won and Routed rows on every ping log (the Pings tab and the Ping activity tab on publisher and buyer campaigns) now read Won, qualified or Won, not qualified, with in progress while the call is still live, so you can see from the log whether the call billed. Each of those rows has two small icons: play opens the call's detail sidebar right there, with the recording, transcript, tags and notes, and the arrow opens that call in the Call Log in a new tab. CSV exports use the same wording and gain a Call ID column on the inbound logs.

Publisher AI score, buyer EPC and Qualified % columns

new

The Publishers tab now shows each publisher's average AI score across every scored call they sent, rounded to a whole number and colored the same way as the call log. The Buyers tab gains EPC (earnings per call) and Qualified %, with a tooltip on each heading that explains the math: EPC is everything the buyer paid for qualified calls divided by every call routed to them, and Qualified % is the share of those calls that qualified. Hover a value for the totals behind it. Both tabs sort on the new columns and let you hide them from the column picker. Column headings that wrap to two lines now stay left aligned instead of centering.

AI Watchdog Run now picks which calls and how many

new

Run now on a monitor opens a short dialog instead of always reading your 25 newest calls. Choose Everything waiting to review the calls since the monitor's start point, oldest first, the same way a scheduled run does. That gives a new monitor its first run without waiting for its send hour. Choose Newest calls to test the instruction on your most recent calls instead. Set how many to review, from 1 to 2,000, with the count for each option shown up front. Calls the monitor has already reviewed are always skipped, so running again picks up where the last run stopped. Runs now finish in the background, so a large run no longer ties up the page and the run history refreshes on its own while one is in progress.

Call sources accepted per buyer campaign

new

Each buyer campaign now has its own Call sources accepted list, in the Basics card of the campaign editor for buyers and on each campaign page under the buyer in your network. It uses the same list of sources publishers pick from when they apply, so a buyer with one campaign for inbound paid search calls and another for warm transfers can say so on each. A campaign starts with the list from the buyer profile and follows it until you change it on the campaign.

Buyer export breaks demand down by state

new

The Export dialog on the Buyers tab has a new Split by state option. Turn it on and every bid becomes one row per state, with that state's buyer and campaign counts, zip count, and zips. Nationwide bids stay one row. Leave it off and each row now lists the states its zips fall in, so a Counts only export still shows where the demand is. The Detailed sheet's Live or Paused column is now named Campaign Status.

Ping logs filter by location and their totals follow your filters

new
  • Location filter: the Zip filter on the Pay Per Call Pings tab is now Location, on every ping log: the account-wide Pings tab and the Ping activity tab on publisher and buyer campaigns. Pick one or more states, paste a zip list, or both. Each log and its CSV export gain a State column, worked out from the zip on the ping, and clicking a state in the account log filters to it.
  • Totals match the rows: the Pings, Accepted, Calls routed (or won), and Calls with payout figures above each log now count exactly the pings your filters select, including the result filter and the date range. On publisher and buyer campaigns the log has the same date range and location controls as the account Pings tab, and the totals show the selected range instead of all time.

Buyer minimum duration now defaults to connected time

new

Buyers you add now measure their minimum call duration from the moment they pick up, the same clock their own platform bills on, with a 3 second safety margin. Total call time also counts the greeting, the auction and ring time, so a call that cleared a 90 second minimum on that clock could be 70 seconds on the buyer's and go unpaid. Connected time is now listed first and preselected in Global Settings and under each buyer's Billing, Advanced section. Existing buyers keep whatever they were set to.

CallGrid bids now route the call

new

A CallGrid bid that returned a phone number showed "Endpoint did not accept" in the endpoint test, and on live calls the bid was scored as a rejection, so the call never reached CallGrid. The bid, phone number, and minimum duration are now read correctly and the call routes on a winning bid. Autofill from specs also recognizes CallGrid specs: it fills the CallerId and InboundZipCode fields and adds pstn=true, which is required for CallGrid to return a dialable number instead of a SIP address.

September 16, 2026

Call Log filters combine and Export keeps your date range

new
  • Buyer filter keeps the buyer: entering a Paid amount inside the Buyer filter cleared the buyer you had picked, so you could not list one buyer's billable calls. Buyer, Campaign, and Paid now apply together, and the same goes for Publisher and Payout, Caller Number and Name, and AI Score, Category, and Keyword. A dot marks each part that holds a value, and the chip shows all of them.
  • Export starts on your date range: Export always opened on Last 30 days, so you had to pick the range a second time. It now opens on the same range as the log, with the other presets still one click away.

More marketplace categories and verticals

new

Verticals are now grouped under ten categories: Automotive (formerly Auto), Education, Financial, Healthcare, Home Services, Insurance, Legal, Real Estate, Travel, and Other. Auto Warranty moved to Automotive, Veterinary & Pet Services to Healthcare, and Timeshare Cancellation to Legal. New verticals in the picker: Home Warranty, Health Insurance (Private/U65), Pet Insurance, Renters Insurance, Motor Vehicle Accident, Solar Cancellation, Gold IRA, Stock & Bond Investors, Dental Veneers, GLP-1, Real Estate Seller, Rental Listings, Cruise Bookings, Flight Booking, Hotel Booking, and Vacation Booking. Network storefronts, the offer editor, Minimum bids, and Real-Time Bidding vertical groups all use the new grouping.

Other tabs no longer reload themselves when you switch accounts

new

When you switched accounts in one tab, every other open tab reloaded into the new account. That lost whatever you had open there, such as a call's details or a filtered Call Log, and a tab with unsaved edits kept prompting you to leave the page. Those tabs now pause instead and show a notice with two options: switch back to the account that tab was on and keep working, or reload it into the new account. Nothing changes until you choose.

Saved responses for payout notes

new

Pay Per Call Settings > Canned Responses is now split into Application responses and Payout responses, and each section collapses. Save notes for a sent payout and reasons for a rejected request, then pick one from the Mark Paid or Reject dialog instead of retyping it. Publishers now get an email when their payout is marked paid or rejected, with your note included, and network owners get an email when a publisher requests a payout.

Payout requests show each publisher's payment history

new

Every open request on the Payouts tab shows how many times that publisher has been paid, the total, and the last payout, with a click to list previous payments. The Mark Paid dialog shows the same summary. Long notes on requests and in Payout History fold to two lines with a Show more link. After requesting a payout, publishers see when to expect it: most are sent within 1 to 2 business days, but it may take up to a week.

Call Log counts and pages now agree

new
  • Graph matches the count: repeat blocked calls from the same caller are shown once in the Call Log, but the Call Volume graph still counted every one, so its total ran higher than the count next to the page title. The graph now counts calls the way the log shows them.
  • Pages fill to the page size: those hidden repeat calls used to eat page slots, so a 50 per page view could show 37 rows. Each page now shows the full 20 or 50 rows.

September 15, 2026

Network call duration defaults and publisher quote padding

new

Pay Per Call Settings > Global Settings has a new Call duration card. Choose whether new buyers bill on total or connected time and the margin to apply, so every buyer you add starts on the right basis instead of total time. A publisher quote pad adds seconds to the min duration shown in ping responses (set 15s on a 90s buyer and publishers see 105s) while billing and payouts still settle at the buyer's own duration. Existing buyers keep their current settings.

Call Log graph shows the previous period

new

The Call Volume graph above the Call Log now reads like the dashboard card. The previous period runs behind the current line as a dashed gray line, the total shows the change against it, and clicking a legend item hides that line. Choose Today, or a single day that is yesterday, and the graph switches to a running total across the day with the day before dashed behind it. Date presets such as Today and Last 7 days now follow the account timezone, so the calendar day matches the calls listed below.

Invite fixes across the app

fixed
  • Team invites with a differently cased email: inviting Chris@example.com when chris@example.com already had a login treated it as a new person, and accepting the invite then failed. Invites now match the existing login and never create a second one.
  • Network invite links for people who already have a login: the emailed buyer signup link refused any email that already had an account. Entering that account's password now joins the network with the existing login and the setup from the form, and the account shows up in their account menu.
  • Resend welcome email no longer resets an active password: for a buyer, publisher, or broker who has already signed in, the resend keeps their password and sends a sign-in reminder instead. Only logins that have never signed in get a fresh temporary password.
  • Brokers adding a buyer who already has a login: the broker portal rejected the email. It now creates the buyer under the broker and sends an invitation, shown as Invite pending until accepted.

Adding a teammate who already has a login

new

Buyer and publisher accounts could not add a login for an email that already had an account, including a teammate who already works in another account on the same network or on a partner's branded site. The email is now attached as an extra login on the account instead of being rejected. Leave the temporary password blank for them; they sign in with their own password and pick the account from the account menu, and they get an email saying so. New emails still get a temporary password as before.

Calls with no buyer no longer show as Answered

new

When an RTB or Ping/Post flow finds no buyer and the caller hears the no-buyers message, the call now shows a No Buyer status in the Call Log, filters, dashboard outcomes, and recent activity instead of Answered.

Brand registration checks the contact email domain

new

When registering a brand for texting, the website can no longer be a free-mail domain (gmail.com, yahoo.com, and similar) and the contact email must be on the same domain as the website. Subdomains either way are fine. The form flags a mismatch inline before you submit, so the registration fee is never charged for a submission that would be rejected.

Call Log search finds buyers and publishers

new

The search box on the Call Log now matches buyer and publisher names alongside caller numbers, number names, and tracking numbers. Type part of a buyer or publisher name to see only their calls. The graph and Export follow the same search.

Dispute status missing from the network call log

new

Pay Per Call networks without the publisher offers add-on saw the Buyer Paid amount on a disputed call but no dispute badge next to it, so an open or decided dispute was only visible from the buyer's side. The badge, its hover details, and the click-through to the dispute now show for every network that can see Buyer Paid, before and after a decision.

"Last month" date preset

new

The date picker on the Dashboard, Call Log, and everywhere else that uses the same preset list now has a Last month option, right under Month to date, for the previous calendar month.

Clearer errors from the campaign assignment API

new
  • Wrong field type: Sending a body the API could not read (for example buy_phone as true instead of a phone number string) came back as "offer_id is required" even when offer_id was present. It now says the body could not be decoded and why.
  • Number not available: When the number you asked for could not be bought, the error read like a balance problem and showed a balance of 0. It now says the number is not available and to pick one from a number search, and balance fields only appear on a real insufficient balance error.

Call volume graph on the Call Log

new

The Call Log now has a graph above the rows showing the calls that match your current filters, bucketed by hour, day, or week depending on the date range. Pick what the line shows: calls, minutes, or call value. Pay Per Call networks also get buyer paid, publisher payout, and margin, publishers get their payout, and buyers get their cost. Change a filter or Qualified Only and the graph updates with the rows.

Call Log layout, resizable columns, and no more sideways scrolling

new

Filters now sit in their own row above the graph, with Qualified Only right after the date filter. Search, the column picker, and Export moved directly above the table. Every column can be resized by dragging the divider in its header, the Number Name column starts wider so fewer names are cut off, and the table always fits your screen: columns share the available width and long text trims with a tooltip instead of pushing the page sideways. Double-click a divider to reset those two columns, or use Reset to default in the column picker to reset every width. The table itself is now capped at your screen height and scrolls inside its card, so the column headers and the page controls stay in view even with 50 calls per page.

Automatic invoicing for invoice-billed buyers

new

Buyers on Invoice later can now be invoiced automatically instead of by hand. On the buyer's Billing tab, pick when invoices go out (monthly on a set day for the previous month, weekly, every N days, or only when you click Create invoice), add a balance trigger that invoices as soon as the amount owed reaches a threshold, skip anything under a minimum, and set net terms. Each invoice can be collected by a payment link or charged to the buyer's saved card, with automatic retries and a note to you if the card keeps failing. Reminders go out before the due date, on it, and while overdue, and you can pause a buyer's campaigns after a set number of overdue days; they resume the moment the invoice is paid. Every email comes from your own brand on white-label networks, and the buyer's balance is only credited once the invoice is actually paid. Each invoice has a resend, charge card, change amount (for an agreed adjustment; the difference is credited or charged to the buyer and they get a new payment page), mark paid, check status, and void action. Payment link is the recommended default; auto-charge is opt-in per buyer.

Buyers see and pay their invoices in the app

new

Invoice-billed buyers now have an Invoices section on their Billing page listing every invoice with its period, amount, due date, and status, a Pay button that opens the network's payment page, and the receipt PDF once paid.

RTB winner is dialed even when a slow bidder runs out the clock

new

When one bidder took the full auction window to answer, the auction picked a winner but the call was sent to the fallback destination instead, and the call log showed no buyer. Since Aug 28 this dropped up to 8 percent of won auctions on busy days. The winner is now dialed and stamped on the call every time.

Charge your buyer for a call you bought from the marketplace

new

Charging one of your buyers for a marketplace call you bought stopped with "not authorized to charge this call." It now works: the call is added to your log as your own call, what you paid shows in the Cost column, and you can add a publisher payout on it the same way as any other call. Calls still in progress cannot be charged yet, and the payout button no longer appears on the bought row itself, only on your copy.

Switching accounts in one tab no longer misfiles work from another

new

Switching business in one tab left other open tabs showing the old business while saving into the new one, so a form could land on the wrong account. Tabs now notice the switch and reload into the current account with a short notice, before you start filling anything in.

RTB bidders get 8 seconds to answer

new

Live auctions now wait up to 8 seconds for bids instead of 6, so networks that answer in 5 to 6 seconds get their bid in. The auction still ends the moment every bidder has answered, so fast pools resolve as quickly as before. With priorities on, each group holds back 2 seconds for every group after it (Priority 1 has up to 6 seconds with two groups, 4 with three). The RTB docs and the hold music tip now show the right timing.

Publishers who join through a partner marketplace now see that partner's offers

new

Signing up on a network's own marketplace could still land you in the general CallScaler catalog once you were inside the app, so publishers applied to campaigns the network that recruited them could never see or approve. Browse Offers now shows your network's catalog from your first login, on the network's own domain it only ever shows their offers, and applications can no longer be filed into the wrong catalog by accident.

One login for accounts on multiple networks

new

If your email already has a CallScaler login, signing up on a partner network's marketplace no longer ends with "email already registered." Enter your usual password and the new buyer or publisher account is added to the login you already have. The account switcher lists every account, and logging in on a network's own domain takes you straight to your account with that network.

Join the CallScaler Marketplace with an existing account

new

It works in the other direction too. Sign up on the CallScaler Marketplace with an email that already has a login and your password signs you in and adds marketplace access, whether you started as a buyer, a publisher on another network, or a regular subscriber. If you open an offer that needs marketplace membership, the application form now offers a one-click join instead of an error.

Pending invitations show up in the app

new

An invitation to join a network as a buyer, publisher, or broker used to exist only as an email. If you missed it, nothing in the app told you it was waiting, and the network saw you stuck on "Invite pending." Open invitations now show as a banner when you log in, and accepting is one click.

September 10, 2026

Daily call caps no longer overshoot on long calls

new

A campaign capped at one call a day could still take a second one while the first caller was on the line. Caps counted only calls that had already ended and been billed, so anything in progress was invisible to them. A call now holds its slot from the moment it is routed, and gives the slot back if it ends up not qualifying.

You can now see why a dispute was approved or denied

new

The call log showed a "Dispute denied" badge with no way to find out why, even though whoever resolved it had left a note. Click the badge on a disputed call and you get the whole picture: the reason you filed, your own explanation, the decision, and the note that came back with it. Hovering shows a short version.

Dispute reasons are readable in full

new

Long dispute explanations were cut off after two lines on the Disputes page, so reviewing one meant copying the text out of the app to read it. Reasons and resolution notes now expand in place, and the buyer's full reason sits at the top of the approve and deny dialogs so it is in front of you while you decide.

The Disputes page no longer flashes while you read it

new

The page refreshed itself every minute, and again each time you switched back to the tab, blanking the table out to loading placeholders. It now refreshes quietly in the background, so rows stay put.

September 8, 2026

Your numbers are held for a week after you cancel

new

Cancelling used to give up every number the moment the subscription ended, and a released number cannot be bought back. Now the numbers stop taking calls when your subscription ends but stay on your account for 7 days, with your call flows, campaigns and publisher assignments untouched. Reactivate inside that window and everything picks up exactly where it left off. We email you when the hold starts and again the day before the numbers are released.

Changing plans left a cancellation still scheduled

new

If you had a cancellation scheduled and then switched plans, the plan change went through but the cancellation stayed armed, so the account was still cancelled at the end of the period. Switching plans now calls off a scheduled cancellation, the same way the Reactivate button does.