Unit 1 · Make Basics: Aggregators

Introducing Aggregators

7 min read Updated May 21, 2026

Unit introduction

Welcome to course four “An Introduction to Aggregators” within Make Basics.

In this unit you will learn:

  • what is aggregation
  • why are aggregators useful

What is an aggregator?

Let’s first understand what aggregation is.

Put simply, aggregation is the process of combining multiple values into a single value.

Think of this as building a wall.

You have a stack of bricks, and you combine them together to build a wall. Therefore the aggregation of bricks makes a wall.

Within Make there are several tools that can be used which will perform aggregation. These are aggregators!

Similar to combining bricks, the aggregator in Make takes items from multiple bundles of the same structure. Then it combines items to a new single bundle.

What is an aggregator doing?

To dive a bit deeper, aggregators do two things: mapping and reduction.

Mapping in the context of aggregation, is selecting the items that you want to use from your source.

Reduction is combining and then transforming the selected items into a new item.

Let’s revisit the wall example for an overview of this:

  • You have multiple palettes of bricks delivered, but some of these have been broken during transport.
  • Selecting the bricks that were not broken that will be used in construction of the wall is mapping.
  • The reduction is then assembling the wall with cement.

Mapping Stage

When deciding on the materials to be used in the construction of the wall, this is the mapping stage.

There are an assortment of materials that can be used to build the wall.

  • Brick types: clay, sand lime, concrete. And the Brick color: grey, brown and blue.

Unfortunately, these are sold at different stores. These are our sources.

  • Store 1 sells brown clay bricks, and grey concrete bricks.
  • Store 2 sells grey / blue clay bricks, and brown sand lime bricks.

The intention is to build a wall composed of grey concrete bricks, and blue clay bricks.

The mapping summary would therefore be: “Buy grey concrete bricks from store 1, and buy blue clay bricks from store 2”.

Reduction Stage

When we’re gathering the materials and beginning construction of our wall, this is the reduction stage.

The reduction stage is simply bringing those items together – driving to the store and picking up the items, unpacking them, and constructing the wall.

The reduction stage would therefore be a constructed wall, composed of grey concrete bricks, and blue clay bricks.

Why are aggregators useful?

Aggregation is not just about combining data and resources, but using the aggregated information to influence outcomes.

For example, you have a box of colored pencils. You can use an aggregator to group the pencils by color, so you can see how many red, green, purple, and blue pencils you have.

This helps you to understand the bag of pencils better and see if there are any patterns or trends; for example - “I have 1 red, 1 blue, 3 green, 5 purple”.

The conclusions you can draw with this information are:

  • you have 10 pencils in total
  • you use red and blue the most - buy more of these!
  • you do not need to buy any purple

Let’s look at what aggregators look like in Make, and where they can be used.

Aggregators within Make

There are multiple types of aggregators located within Make; both will perform the same function of aggregation - which is merging bundles of data into a single bundle, but with different options.

These can be found under the Tools and Flow Controls sections within Make.

Tools Aggregators

There are three aggregator types located in Tools: Table, Text and Numeric aggregators.

For example: with the Numeric aggregator you can perform the functions Average, SUM, COUNT, MAX/min value.

Thinking back to the brick wall example from earlier. You could use the SUM numeric aggregator function:

If each brick weighs 2 kilograms and 14 bricks were used, then the aggregated SUM of the wall would be 28 kilograms.

Array Aggregator

The Array aggregator is a really powerful tool that allows you to take fields from multiple bundles, and aggregate them into a single array.

The Array aggregator also allows you to customize the output bundle of information using the fields you select.

The example here shows two separate bundles of information from two modules – the first module contains products at a library, and the other contains users.

The Array aggregator includes magazines but omits books (module one), and includes users (module two).

Use cases for aggregators using grouping

Aggregators do not necessarily need to output just a single array.

You can group your output into different bundles based on a specific value to help you analyze and process your data. This is known as grouping.

Let’s have a look at a practical use case where aggregators are essential. Pierre is a plumber who lists all of the jobs he does by: date / job type / revenue / hours worked.

Here is the raw data Pierre collects:

Date / DayJob typeRevenueHours workedCustomer
04-10-23 MonRepair2002Zoe
04-10-23 MonRepair2002Alex
04-10-23 MonInspection801Arthur
04-11-23 TueInstallation6004Arthur
04-12-23 WedInspection801Lukas
04-12-23 WedInspection801Stefania
04-12-23 WedInstallation6004Iveta
04-13-23 ThuInspection801Scott
04-14-23 FriRepair2002Lukas

Each of these data-driven aggregations give Pierre a better understanding of how his business is performing, and make data-driven decisions about which types of jobs he can focus on, which customers to prioritize, and how to better plan his schedule and pricing strategy.

Job type

Pierre uses an aggregator to calculate the total revenue earned for each job type, for example: Boiler repair / installation / inspection.

This gives him an idea of which types of jobs are the most profitable for his business based on the amount earned from each job type, and the frequency.

Date / DayJob typeRevenueFrequency of jobs
04-10-23 MonRepair6003
04-10-23 MonInspection3204
04-11-23 TueInstallation12002

Revenue by customer

Pierre is able to calculate the total revenue earned from each customer over the past month.

This will give him an idea of which customers are generating the most revenue for his business.

CustomerTotal Revenue
Zoe200
Alex200
Arthur680
Lukas280
Stefania80
Iveta680
Scott80

Hours worked by job type

Pierre can calculate the average number of hours spent on each type of job.

This will help him estimate how long it will take to complete similar jobs in the future and better plan his schedule.

Job typeRevenueHours worked
Repair6006
Installation12008
Inspection3204

Jobs done per day

Pierre calculates the average amount of jobs he does within a day.

This allows him to identify when his busiest and therefore most profitable days are.

Date / DayJobs done per day
04-10-23 Mon3
04-11-23 Tue1
04-12-23 Wed3
04-13-23 Thu1
04-14-23 Fri1

Element - text / text and image (Portrait) - LARGE

You now have a very basic overview of what an aggregator can do, as well as its benefits, and where the tools are located within Make.

But in order to understand this fully, let’s see aggregators within Make in action. Over the next 2 units you will create 2 separate scenarios which will explore the text and numeric aggregators.

Array aggregators will be covered in Make Intermediate.

The purpose of these scenarios is to introduce aggregators, and to build on the knowledge you have accumulated so far within Make Basics; so you will combine aggregation with some functions used so far.