Why do you need an aggregator?
Without one, every module after a search runs once per bundle. A Search Rows module that finds six requests would send six separate emails.
The Text aggregator stops that. It waits for all bundles from the source module, writes one line per bundle and outputs a single bundle with one field called text. The Gmail module after it runs once.
How do you set up the Text aggregator?
Add it from Tools, under Aggregators, then set the source module and the text for one row.
The lesson's setup, step by step:
- Click the + on the right of Google Sheets, click Tools, and under Aggregators click Text aggregator.
- Open Source Module and click Google Sheets - Search Rows [1].
- Click the Text field. In the mapping panel, click Name (A).
- Type a colon and a space, click Reason (D), then type
<br>at the end. - Click Save.
In Gmail's Send an email, set Body type to Raw HTML, click Content and pick text under 2. Tools - Text aggregator. The manager gets one email that lists each patient and reason on its own line.
Try it free, step by step
On a Schedule: A Daily Summary Email from a Google Sheet in Make.com. Build a Make scenario that runs every day at 5 PM, finds today's rows in Google Sheets, combines them with a Text aggregator and emails one summary with Gmail. You do every step yourself in a practice copy of Make, it checks your work as you go, and “Do it for me” finishes any step you get stuck on. Free, and nothing touches your real accounts.
Start the free lessonText aggregator examples for office work
Each example is what you put in Text for one bundle. The aggregator repeats it for every row.
| Use | Text for one row |
|---|---|
| Daily request list (HTML email) | {{1.Name}}: {{1.Reason}}<br> |
| Bulleted list (HTML email) | <li>{{1.Client}}: {{1.Status}}</li> then wrap the Content in <ul>…</ul> |
| Plain-text email | - {{1.Name}} ({{1.Phone}}) with a newline as the row separator |
| Overdue invoices | {{1.Invoice}} from {{1.Vendor}}, due {{1.Due}}, ${{1.Total}}<br> |
| A CSV line for a file | {{1.Name}},{{1.Email}},{{1.Topic}} with a newline separator |
| Slack message | • {{1.Task}} (owner: {{1.Owner}}) with a newline separator |
The {{1.Name}} pills here stand for fields you click in the mapping panel; the number is the source module's position.
Should I use a row separator or <br>?
Use <br> (or list tags) when the email body is HTML, and the row separator's New row option when the destination is plain text.
HTML email ignores ordinary line breaks, so a list joined with new lines shows up as one long paragraph. That is why the lesson types <br> and checks that Body type is Raw HTML.
What about the Array aggregator?
The Array aggregator outputs a list of bundles instead of text. Use it when the next module needs structured items, such as a module that takes an array of attachments or line items. For a readable email or message, the Text aggregator is simpler.
What if Search Rows finds nothing?
The aggregator outputs nothing and Gmail does not run, so no empty email is sent on a quiet day. If you want a "nothing new today" email anyway, add a router before the aggregator or use ifempty() in the email body.
Key takeaways
- The Text aggregator turns many bundles into one, so the next module runs once.
- Source Module must be the module that produced the bundles, here Search Rows.
- Use
<br>with Raw HTML email bodies; use New row separators for plain text. - Choose the Array aggregator when the next module needs a list, not text.
Frequently asked questions
- What is an aggregator in Make?
An aggregator is a module that combines several bundles into one. Make has Text, Array, Numeric and Table aggregators, among others, under Tools and in some apps.
- Where is the Text aggregator in Make?
Add a module, click Tools, and look under Aggregators. Text aggregator is listed there.
- Why does my Make scenario send one email per row?
There is no aggregator between the search and the email. Add a Text aggregator with the search as its Source Module and map its text into the email.
- Which free course covers this?
The Make & Zapier Jump Start course. It is also part of AI for Operations Teams.

