# On a Schedule: A Daily Summary Email from a Google Sheet in Make.com

> Build a Make.com scenario that runs every day at 5 PM, finds today's rows in Google Sheets with Search Rows, combines them with a Text aggregator and…

Source: https://learn.ynteractive.com/content/make-com-daily-summary-email-google-sheets-schedule · Updated 2026-10-10 · Free from Stepthrough (https://learn.ynteractive.com)

## Practice it step by step

[Start the free practice](https://learn.ynteractive.com/modules/make-daily-summary)

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, about 12 minutes, and nothing touches your real accounts. [Open full screen](https://learn.ynteractive.com/modules/make-daily-summary)

Free · Live now · [Make.com Automation Basics](https://learn.ynteractive.com/content/course/make-com-automation-basics) · [Make](https://learn.ynteractive.com/content/tool/make) · Google Sheets · Gmail · ~12 min · 40 steps · Beginner

Updated October 10, 2026. Built against the tool’s current screens and checked step by step. [How we check this lesson](https://learn.ynteractive.com/content/about#how-we-check)

In this free [Make.com](https://learn.ynteractive.com/content/tool/make) tutorial, you build a scenario that sends one summary email at the end of every day. Brookside Dental, a small family dental practice, logs every new patient request in a Google Sheet. The office manager does not want an email for each request. She wants one list at 5 PM. You search the sheet for today's rows, combine them with a Text aggregator, send the list with [Gmail](https://learn.ynteractive.com/content/tool/gmail), and put the scenario on a daily schedule.

## At a glance

| Question | Answer |
| --- | --- |
| What you build | 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. |
| Tools | Make |
| Time | About 12 minutes, 40 steps in 5 parts |
| Level | Beginner, no coding needed |
| Cost | Free |
| Ways to learn it | [Practice it step by step](https://learn.ynteractive.com/modules/make-daily-summary) |

### The 5 parts, in short

1. Find today's requests: Create a scenario, Add the first module, Google Sheets, Search Rows, and 8 more steps.
2. Combine them into one: Add the next module, Tools, Text aggregator, Source Module, and 7 more steps.
3. Send the email: Add the email, Gmail, Send an email, To, and 4 more steps.
4. Test it: Run once.
5. Run it every day: Every 15 minutes, Run scenario, Daily, 5:00 PM, and 4 more steps.

**Start here first:** [Your First Make.com Scenario: Google Forms to Google Sheets](https://learn.ynteractive.com/content/make-com-google-forms-to-google-sheets) (module 1 of Make.com Automation Basics)

**In the course:** [Part 8 · Make.com Automation Basics](https://learn.ynteractive.com/content/course/part-8-make-automation-basics) (Module 36 of the [full course](https://learn.ynteractive.com/content/course))

## What you will build

This is a new scenario with three modules. It has no app trigger. Instead, the first module runs on a schedule. Google Sheets Search Rows reads the New patient requests sheet and returns only the rows whose Date column matches today's date. A Tools Text aggregator turns those rows into one piece of text, one line per request. Gmail Send an email sends that text to the office manager.

You test the scenario with Run once, then open Schedule settings, choose Daily, set the time to 17:00, save the scenario and switch it on. From then on, Make runs it every day at 5 PM in your organization's time zone.

## Who this Make.com tutorial is for

This module is for small business owners, office managers and front-desk teams who keep a running list in Google Sheets and want a daily digest without opening the sheet. No coding is needed. It is the fourth module in the Make.com [Automation](https://learn.ynteractive.com/content/glossary/automation) Basics course, and it reuses the Google and Gmail connections from the earlier modules.

## Bundles, and why you need an aggregator

Search Rows returns each matching row as its own bundle, and every module after it runs once for each bundle. Without an aggregator, four requests would mean four separate emails, and four Gmail runs using your Make credits. An aggregator collects all the bundles from its source module and outputs a single bundle, so the modules after it run once.

The Text aggregator writes the Text field once for each row and joins the results into one text output.

## Filtering by today's date

The sheet's Date column holds the day each request came in, written as year, month, day, for example 2026-09-28. The Search Rows filter compares that column to today's date in the same format. The formula formatDate(now; "YYYY-MM-DD") takes the current moment and writes it that way, so the filter matches a different day each time the scenario runs. Make works out today using your organization's time zone.

If your sheet stores dates in another format, change the format in the formula to match what the cells show.

## Line breaks in a Gmail email

Gmail Send an email sends the body as HTML, and HTML ignores plain new lines. If you join the rows with a normal new line, the email shows them as one long run of text. Ending each row's text with a br tag gives every request its own line.

## Scheduling and time zones

A new scenario runs every 15 minutes by default. In Schedule settings, Run scenario offers At regular intervals, Once, Daily, Weekdays (Mon - Fri), Weekly, Monthly, Specified dates and On demand. Daily asks for one or more times in 24-hour H:mm format.

The time follows your organization's time zone, which the dialog shows under the field. An organization owner or admin can change it in the profile, under Time zone options. A schedule only runs when the scenario is switched on, so save it and turn on the switch in the toolbar.

## How to use this in your business

The same pattern works for any daily or weekly digest: a list of today's orders, the week's new leads, overdue invoices or tomorrow's appointments. Search for the rows you want, aggregate them into one bundle, then send it once. On days with nothing to report, set Stop processing after an empty aggregation to Yes in the Text aggregator's advanced settings, and Make skips the email.

## Try it yourself, free

Reading the steps is a start. Doing them is how it sticks. The interactive module walks you through every click in a practice copy of Make, checks each step, and never touches your real accounts.

[Start “On a Schedule: A Daily Summary Email from a Google Sheet in Make.com”](https://learn.ynteractive.com/modules/make-daily-summary)

## Step by step: On a Schedule: A Daily Summary Email from a Google Sheet in Make.com

All 40 steps of the interactive module, in order. In the module you watch each one, then do it yourself in a practice copy that checks your work.

### 1. Find today's requests

1. **Create a scenario.** Your scenario from the last modules is on the list. This is a new one: click **+ Create scenario**.
   Brookside Dental's office manager wants one email at five o'clock with every new patient request from that day. Your first scenario keeps filling the sheet. This is a separate scenario that reads it.
2. **Add the first module.** Click the big **+**.
   This scenario doesn't wait for an app event. It starts on a schedule, so the first module simply reads the sheet.
3. **Google Sheets.** Click **Google Sheets** in the list.
4. **Search Rows.** Click **Search Rows**.
   Search rows finds the rows that match a filter.
5. **Spreadsheet Name.** Your Google connection is already filled in. Keep **Select from My Drive** and open **Spreadsheet Name**.
   Your Google connection from the first module is already picked. Keep select from my drive, and open spreadsheet name.
6. **New patient requests.** Click **New patient requests**.
7. **Sheet Name.** Open **Sheet Name**.
8. **Sheet1.** Click **Sheet1**.
9. **Filter by column.** Keep **Table contains headers** as **Yes**. Under **Filter**, open the first box.
   The sheet now has a date column, E, with the day each request came in, written year, month, day. You only want today's rows, so under filter, open the first box.
10. **Date (E).** Click **Date (E)**.
11. **Today's date.** Keep the operator **Text operators: Equal to**. In the last box, paste **{{formatDate(now; "YYYY-MM-DD")}}**
    Keep equal to. The last box needs today's date in the same year, month, day format. It takes now and formats it, so it's a new date every day.
12. **Save the module.** Leave **Limit** empty and click **Save**.
    Leave the limit empty, so every match comes back.

### 2. Combine them into one

13. **Add the next module.** Click the **+** on the right of **Google Sheets**.
    Here's the catch. Search rows hands back each matching row as its own bundle, and every module after it runs once per bundle. Four requests would mean four emails. An aggregator gathers them into one.
14. **Tools.** Click **Tools**.
    The text aggregator is one of Make's built-in tools.
15. **Text aggregator.** Under **Aggregators**, click **Text aggregator**.
16. **Source Module.** Open **Source Module**.
    Source module tells the aggregator where the bundles come from.
17. **Search Rows.** Click **Google Sheets - Search Rows [1]**.
    Pick Google Sheets, search rows.
18. **Text.** Click the **Text** field.
    Text is the line written for each row.
19. **Map the name.** In the mapping panel, click **Name (A)**.
    The mapping panel shows the columns from search rows.
20. **A colon.** Type a colon and a space: **:**
21. **Map the reason.** Click **Reason (D)**.
22. **A line break.** Type **<br>** at the end.
    Gmail sends the body as H T M L, where a plain new line disappears. So end each line with a break tag.
23. **Save the module.** Click **Save**.

### 3. Send the email

24. **Add the email.** Click the **+** on the right of **Tools**.
    Now send the list.
25. **Gmail.** Click **Gmail**.
26. **Send an email.** Under **Actions**, click **Send an email**.
27. **To.** Check that **Connection** shows your Gmail connection. In **Recipient email address 1**, type **manager@yourbusiness.com**
    Check that your Gmail connection is picked. This email always goes to the same person, so type the office manager's address.
28. **Subject.** In **Subject**, type **Today's new patient requests**
29. **Content.** Check that **Body type** is **Raw HTML** (pick it if not). Click the **Content** field.
    Check that the body type is raw H T M L.
30. **Map the combined text.** Under **2. Tools - Text aggregator**, click **text**.
    The aggregator gives one item: text, the whole list in one piece.
31. **Save the module.** Click **Save**.

### 4. Test it

32. **Run once.** Click **Run once**.
    Test it now, instead of waiting for five o'clock.

### 5. Run it every day

33. **Every 15 minutes.** Every module ran once. Click **Every 15 minutes** in the toolbar.
    Each module ran once. Search rows found four requests, and the aggregator turned four bundles into one, so Gmail sent a single email. Now the schedule.
34. **Run scenario.** Open **Run scenario**.
35. **Daily.** Click **Daily**.
36. **5:00 PM.** In **Time 1**, type **17:00**
    The time uses the twenty-four hour clock, so five P M is seventeen hundred.
37. **Save the schedule.** Check the **Time zone** under the field, then click **Save**.
    Make runs it in your organization's time zone, shown under the field. If it's wrong, change it in your profile, under time zone options.
38. **Save the scenario.** Click the **Save** icon in the toolbar.
    Save the scenario with the save icon.
39. **Switch it on.** Click the switch next to **Daily at 5:00 PM**.
    A schedule only runs once the scenario is on.
40. **Check the email.** Open the **Gmail** tab to see the email from your test run.
    Done.

## Frequently asked questions

**Why does my Make.com scenario send one email per row?**

Search Rows returns one bundle per row, and every module after it runs once per bundle. Put a Text aggregator (or Array aggregator) between Search Rows and Gmail, set its Source Module to the Search Rows module, and Gmail runs once with all the rows.

**How do I run a Make.com scenario every day at a set time?**

Click Every 15 minutes in the scenario toolbar to open Schedule settings, set Run scenario to Daily, enter the time in Time 1 in 24-hour H:mm format, such as 17:00, and save. Then save the scenario and switch it on.

**Which time zone does a Make.com schedule use?**

Your organization's time zone. It is shown under the time field in Schedule settings and can be changed by an owner or admin in the profile, under Time zone options.

**How does the interactive lesson work?**

Each step is shown to you first on the left (Watch), with a short voice-over. Then you do it yourself on a practice copy of Make on the right (Your turn), and every click is checked. If you get stuck, press Do it for me. Nothing touches a real Make, Google or Gmail account.

[Start this module free](https://learn.ynteractive.com/modules/make-daily-summary)

- Previous in Make.com Automation Basics: [Add AI to Make.com: ChatGPT Writes a Personal Reply, Gmail Sends It](https://learn.ynteractive.com/content/make-com-chatgpt-gmail-personalized-reply)
- Next in Make.com Automation Basics: [Webhooks: Connect a Website Form to Make.com](https://learn.ynteractive.com/content/make-com-webhook-website-form-google-sheets)

## More in Make.com Automation Basics

- [Your First Make.com Scenario: Google Forms to Google Sheets](https://learn.ynteractive.com/content/make-com-google-forms-to-google-sheets): Build your first Make.com scenario: every new Google Forms response becomes a new row in Google Sheets. Trigger, connection, mapping, Run once and a schedule.
- [Filters and Routers in Make.com: Send Urgent Requests One Way, Routine Ones Another](https://learn.ynteractive.com/content/make-com-router-and-filters): Add a router to your Make scenario, email the front desk about urgent requests with a filter, and send everything else to Google Sheets with a fallback route.

[All 5 modules in Make.com Automation Basics](https://learn.ynteractive.com/content/course/make-com-automation-basics)

## Terms in this lesson

Plain-English definitions, each with an example from a free lesson.

[Scenario (Make)](https://learn.ynteractive.com/content/glossary/make-scenario) · [Automation](https://learn.ynteractive.com/content/glossary/automation)

[The full AI glossary](https://learn.ynteractive.com/content/glossary)

## Browse related tutorials

[Make.com Automation Basics (5)](https://learn.ynteractive.com/content/course/make-com-automation-basics) · [Make tutorials (5)](https://learn.ynteractive.com/content/tool/make)
