Batch acquires Moonfish AI 🔥 Read the news →

Aggregates & Best Send Time: make your CRM decisions at the right moment

Releases
21 Sep 2026 · Written by Alaïs Pluyaud

A CRM journey freezes what you knew about your customers when it was built, and keeps running on that for months, sometimes years. Batch built two features to close that gap: targeting aggregates in August 2026, Best Send Time in May 2026. Both recalculate a decision every time the journey runs, using the freshest data available, instead of locking it in at build time.

Key takeaways
  • A frozen CRM journey applies a months-old decision to customers who have already moved on.
  • Targeting aggregates calculate a customer's value (total spend, average basket, highest purchase) when the journey executes, with no stored segment to sync.
  • Best Send Time recalculates the optimal send hour profile by profile, on every pass, instead of locking in an average from a yearly A/B test.
  • Proving the effect takes a holdout branch, the only measurement that isolates what targeting or timing actually changed.
  • Gartner puts average martech stack utilization at 49%. Maintenance load caps CRM ambition more reliably than missing features do.

Why does a CRM journey stay frozen while your customers change every day?

Building an orchestration means making a string of calls. Who counts as a good customer. Above what amount. What time to reach them. Which message for which profile. Every one of those calls reflects what you knew that day. Then it ships. And it stays.

Message content went dynamic years ago. Personalization, conditional blocks, product catalogs: most CRM teams already have these. But personalizing a message barely matters when the decision that pulled the customer into the journey is three months old. That gap between content that keeps adapting and an orchestration that doesn't move an inch became the throughline of Batch's 2026 product roadmap.

Which decisions stay frozen inside a CRM orchestration?

Two decisions carry most of the problem: who enters the journey, and when they get the message.

Take a customer who spends €400 on a Wednesday night. Your loyalty logic triggers at €500 lifetime. If that total comes from a nightly recalculation, the customer doesn't exist for your journey until the next morning. If your data team pushes updates weekly, they don't exist until Monday. Either way, the moment they were most receptive is already gone.

Send time has the same problem. A campaign sent at 10am went out at 10am for your whole base, including the slice that never opens anything before noon. You know it. You still pick an hour, because something has to go in the field.

How do targeting aggregates calculate customer value in real time?

Since August 2026, three aggregation functions are live on event targeting: Total, Average, and Max, each with a since variant that bounds the calculation to a time window. They run on the numeric attributes of your events, a purchase amount for instance.

img

Aggregates

What that unlocks:

  • What a customer has spent with you over 6 months becomes a targeting criterion on its own, not an attribute computed elsewhere and synced back.

  • Their average basket becomes a natural entry point into an upsell journey.

  • Their single largest purchase surfaces potential that purchase frequency alone would hide.

  • Full RFM scoring goes native. Recency and frequency were already there. Monetary value was the missing piece.

The news isn't that the math exists. It's that it runs for every profile passing through the orchestration, at the moment it runs. No stored segment anywhere, so no stale segment, no sync to babysit, no ticket to file with the data team every time a rule needs to change. Batch AI Predict's 15 predictive scores chase the same goal from another angle: keep computing who your customers are and what they're about to do, so your programs adapt without anyone touching them.

How does Best Send Time replace the send time A/B test?

Send time is the one parameter the entire market settled for averaging. Standard practice is a send time A/B test: 9am against 6pm, keep the winner, run it again a few months later. That method carries three limits everyone accepts without questioning:

  • The winner is an average winner, which makes it the wrong call for everyone outside the majority group.

  • It goes stale between two test cycles, and nobody notices when it does.

  • Testing many hours means slicing the audience so thin the test stops being reliable. Teams end up testing two arbitrary hours, which biases the whole exercise from the start.

Best Send Time, shipped in May 2026, answers all three with a wait step inside the Automation Builder. It releases each profile at their personal engagement peak. You stop picking a single hour. You set a fallback for profiles with no history yet, and the calculation reruns on every pass through the journey.

img

Best Send Time

What does a loyalty journey built with aggregates and Best Send Time look like?

Take a loyalty program, the one nearly every CRM team runs.

Built the old way, it plays out in three beats. A high value purchase drops someone into the journey. A loyal customers list, produced weekly by IT, decides whether they get the dedicated message, which then goes out at 4pm the day after the purchase. Fixed hour, week old targeting.

Built with aggregates and Best Send Time, the same program works differently. The person enters the journey. An aggregate calculation, running inside Batch on a rule the marketing team can edit itself, checks whether they qualify as loyal. The message then goes out at the best moment for that specific person. Nothing is produced ahead of time. Not the list, not the hour.

How does this automation change what a CRM team is asked to deliver?

It changes the nature of the output itself.

Today, a CRM team ships journeys: finished objects with values baked in, that someone has to revisit. Maintenance load grows with every journey in production, and it eventually caps how ambitious the whole team can be. That's one reason Gartner puts average martech stack utilization at 49%: half of what gets paid for never gets used, usually because nobody has the time to set it up and keep it running.

With aggregates and Best Send Time, a CRM team ships rules instead of values. Customers above €500 over 6 months enter this journey, each at their own peak receptivity hour doesn't need a monthly review. It applies to a population that keeps updating itself. In the customer conversations Batch runs regularly, the most advanced CRM leads describe their role the same way: conductor. Set the frame, arbitrate priorities, and stop spending weeks recalculating by hand what a machine can recalculate on its own.

How do you measure the real effect of aggregates and Best Send Time on your campaigns?

With a holdout branch, not a before and after.

The whole protocol fits in one orchestration: a split, one branch through the Best Send Time step, one branch on a fixed hour. Same message, same population, same period. Compare click rate and conversion rate across both branches. The same logic applies to targeting: one branch on a criterion computed at execution, one branch on your existing segment.

That's the only measurement that actually isolates the effect. Comparing an automation's performance before and after you flip a switch proves nothing, because seasonality, content, and commercial pressure all shift at the same time. A marketing director who has to defend a trade-off in front of finance needs the first measurement, not the second.

What control does the CRM team keep over targeting and send time?

Everything that counts as intent stays with the marketing team. The frame stays explicit: the team sets the business rule, the amount, the observation window, the fallback hour, the excluded population. What gets delegated to Batch is the computation, never the decision about what matters. A live orchestration isn't an opaque one. Every criterion stays readable and editable in the interface, and the result stays verifiable profile by profile.

In short

Batch builds its platform on one simple principle: a decision that depends on customer data should be made when that data is fresh, not when the orchestration was built. Aggregates and Best Send Time are two applications of that principle. More are coming.

Alaïs Pluyaud

Reading time
min

Follow us

linkedin iconyoutube iconwttj icontwitter icon
Newsletter

La Newsletter du CRM

Toutes les nouveautés dans votre boîte mail !