Google Ads for ABA Providers: How It Works and How Ad Inquiries Are Priced
Last reviewed: September 12, 2026
What ABAOps does
ABAOps manages Google Ads search advertising for ABA providers, so that families looking for ABA services find the practice and searches that will not become an inquiry stop spending its budget. The work is building or repairing the campaigns in the practice's own Google Ads account; keeping a list of screening rules that is reviewed every week; reviewing the search terms Google makes available; setting up and testing the measurement so that calls and forms are counted; and sending a weekly pulse, a monthly one-page report and an invoice built from the same numbers.
ABAOps does not pay for media, does not design or edit the practice's website, does not answer its phones or handle intake, and makes no change outside the agreed cap and scope without the practice's approval.
The planning data behind the work is public: ABA-related searches, average click costs and brand share for 100 US metros are on the benchmarks page, regenerated with each monthly snapshot.
How it is priced
The practice pays Google directly for every click. ABAOps is paid per ad inquiry, as defined in the next section. There is no retainer, no minimum and no percentage of media. The rate is quoted on a call.
The count is objective: it comes from Google's own counter, ABAOps never holds caller identity, and nobody judges who inquired. That keeps the rule simple for both sides, and the per-inquiry rate is set with that in mind.
How inquiries are counted
An ad inquiry is a phone call of 30 seconds or longer, or a completed intake form, produced by the ads – from Google's counter under frozen counting rules. Google counts one call per ad click; each form submission counts once; test submissions are excluded.
The count comes from Google's own conversion counter, under settings fixed when the engagement starts. An inquiry belongs to the month in which the call or form happened, not the month of the click. Every report and invoice shows the same bridge: what Google counted, minus test submissions, equals ad inquiries. The month's numbers are taken on the 3rd of the following month, after Google has posted late conversions.
A practice can question any count within ten days of the invoice. It then receives the Google Ads record behind the count: totals by day, campaign and conversion action, and the times, durations and area codes of the counted calls. The record contains no caller identities.
Measurement comes first
We put the accuracy of the success measures first, so that campaign spend is optimized against real numbers. Google can count the wrong events, and stop counting the right ones, without making the problem obvious. ABAOps sets up the call and form conversion actions, tests them end to end, and checks every day that the settings have not changed.
Screening rules
Screening rules are a maintained list of negative keywords intended to reduce spending on unsuitable searches: job seekers, coursework, services the practice does not offer, families it cannot serve, and other providers' names unless the practice chooses to advertise on them. The list is reviewed every week against the search terms Google makes available. Screening reduces unwanted searches; it cannot prevent every unwanted click or inquiry.
What the practice keeps
The practice owns its Google Ads account, its billing profile, its brand and its website. ABAOps works through Google's own permission system, and the practice can reduce or revoke that access at any time from its own account settings. When the engagement ends, the account and what is in it stay with the practice: campaigns, ads, history, and the screening rules already applied, for use in that account. The screening-rule corpus and the methods behind it remain ABAOps'; the rules are licensed for use in that account, not for extraction or reuse elsewhere, and they are not updated after the engagement ends. See Access & data for the full access model.
What never leaves the practice's hands
ABAOps never asks for, and does not accept, call logs, form exports, intake records or caller phone numbers. From the Google Ads account it reads call times, durations and area codes, form counts, search terms, campaign metrics and account settings. Neither side configures anything that sends form contents, names, diagnoses or insurance details to Google: no enhanced conversions fed from intake data, no customer lists, no remarketing. ABAOps signs a business associate agreement with every practice.
What the practice does
- –Names at least one person who can answer intake questions accurately, and describes how calls and form submissions are handled.
- –Keeps the landing pages, phone numbers and intake form working, and tells ABAOps before changing them; the thank-you page after the form is how form inquiries are counted.
- –Installs the Google tag and Google's website call tracking as ABAOps specifies, within seven days of the start.
- –Makes the landing-page changes ABAOps recommends, or says why not.
- –Agrees the monthly media cap and scope by email, and checks new ad copy for factual errors within three business days.
How the engagement runs
The practice agrees a monthly media cap and a scope by email at intake. Inside them, ABAOps manages the account at its own discretion – keywords, screening rules, bids, ad copy, schedules and the split of budget between campaigns – and lists every change in the weekly pulse. Four things need the practice's approval first: spending above the cap, a new campaign for a new location or service, any change to how inquiries are counted, and any new factual claim in the ads that the practice has not confirmed.
The agreement runs month to month and either side may end it on 30 days' notice. ABAOps does not promise any number of inquiries, any cost per inquiry, any ad position or any business outcome. The report shows what the budget produced.
How long it takes to start
Timing depends on the account's condition, website tracking, billing and Google's own verification steps.
Who runs it
ABAOps was founded by Rohit Verma.