Build an audience out of your own data
Runner's audience builder works directly from lifecycle, consent, geography, recency and delivery history already on the record, and explains every match.
Built into Runner
- Lifecycle, consent, geography, recency and delivery history, from a set list
- An estimated size before you commit to it
- Per contact, the reason they matched
- A sync plan against the Google Ads account you connect, to review
Worth knowing
Conditions come from a set list, in plain language, one condition per phrase — a phrase it does not recognise comes back to you. Runner preps a plan against the Google Ads account you connect yourself, and uploading from Runner is switched off.
Type the audience you want, and see exactly what it understood
It's the week before a launch and somebody asks for customers in Canada who opted in and haven't had an email from you. You type it as a short list — customers, in Canada, opted in, never emailed — and Runner matches each piece against a published list of conditions: lifecycle stage, consent, country, recent activity, and whether someone has been emailed.
Every condition it recognised shows up as its own badge, so you read back the logic rather than trusting it. Any piece it didn't recognise is listed word for word under a heading that says it wasn't applied, and approval stays switched off until you rephrase it or take it out.
Typed conditions all have to hold at once. When you need either-or, account audiences have a builder with match-all and match-any groups you can nest.
Try it
Put one condition between each comma: customers, in Canada, opted in, never emailed, active in the last 3 months. Each piece becomes one badge. Squash two conditions into one piece and you'll get only one of them, so commas are your friend. And a month, here, is thirty days.
Before you commit, it counts everyone and shows its reasons
Compiling gives you an estimated size before the segment is approved: how many contacts match out of how many, how many are held out for measurement, and everyone else grouped by the reason they were left out. A size nobody has counted says so, instead of showing a confident zero.
Addresses that bounced, complained or were blocked by your team are set aside before a single condition runs, and no condition you write brings them back in.
Open a segment and it evaluates the current filters against the product's contacts right then, listing each contact beside the clause that decided them. When the list is long you get a sample and a note that it's a sample. Evaluating changes nothing and contacts nobody.
Hold some back and keep every version, so there's something to compare against
Set a holdout and a share of the matching members is kept out for measurement — never more than half, so the group you compare against is never the bigger one. On account audiences the split comes from the audience and the account together, so the same account stays on the same side.
Editing a segment creates a new version rather than rewriting the old one, so today's edit never quietly changes what you approved last month.
The short version
Write the conditions, read the badges, fix what came back unmatched, check the count and the reasons, then approve. Evaluating a segment changes nothing and contacts nobody.
Questions buyers ask
Does it understand anything I type?
No — it understands the conditions on its published list, written in plain words. Any piece it doesn't recognise comes back word for word so you can rephrase it, and the segment waits for you before it can be approved. Keep one condition per piece and the badges show exactly what was applied.
How do I know how big an audience will be?
You see an estimated size before you approve: the matched count out of the total, the held-out count, and why everyone else was left out. A segment that has never been counted is shown as not counted, never as empty.
Why was a contact left out of my segment?
The segment page lists contacts beside the clause that decided them. Addresses that bounced, complained or were blocked by your team are left out before any condition is checked, and no filter undoes that.
Does it upload my audience to Google Ads automatically?
No. Runner prepares a plan against the ad accounts you connect yourself, and the upload stays in your ad tool. The check that runs every six hours re-evaluates membership and never uploads anyone.
Use what already works
Connect the Google Ads account you use and Runner prepares a sync plan against it for your team to review; uploading from Runner is switched off.
How teams often buy this job
Usually bought as Klaviyo or Hightouch.
KlaviyoHightouchTrademarks of their owners. No affiliation or endorsement.

