Free ยท No signup ยท Instant feedback

Master Make.com & n8n expressions by actually writing them.

Short, realistic labs with real webhook payloads. Type the formula, run it in the simulator, and learn exactly why it works.

31 Make.com labs ยท 32 n8n labs ยท 3 levels ยท 0 solved by you

๐Ÿงฉ

Real payloads

Webhooks, arrays, nested JSON โ€” the data you meet in client projects.

โšก

Instant feedback

Check your answer in the simulator, with hints when you're stuck.

๐Ÿง 

Understand why

Every lab ends with an explanation and a pro tip you can reuse.

Browse by topic

All practice labs

Your progress is saved in this browser.

n8nBeginner

Extract Nested Email from Webhook JSON in n8n

Learn how to extract a deeply nested customer email from a Webhook JSON payload in n8n using dot notation.

Make.comBeginner

Get First Item from an Array in Make.com

Practice using the first() and get() functions in Make.com to extract the first element of an array.

n8nBeginner

Access the First Item of an Array in n8n

Learn how to use zero-based indexing in n8n expressions to get the first object in a JSON array.

Make.comIntermediate

Extract Values from an Array of Collections using map() in Make

Master the Make.com map() function to convert an array of complex objects into a simple array of emails.

n8nBeginner

Format Current Date as YYYY-MM-DD in n8n using Luxon

Practice using n8n's built-in $now Luxon variable to format dates for APIs and databases.

Make.comBeginner

Write a Conditional if() Formula in Make.com

Learn how to write inline if() statements in Make.com to return different values based on a number.

n8nBeginner

Clean and Lowercase Email Strings in n8n

Learn how to chain JavaScript string methods .trim() and .toLowerCase() inside n8n expressions.

Make.comBeginner

Split Full Name into First Name in Make.com

Learn how to combine split() and first() in Make.com to extract a customer's first name.

n8nIntermediate

Reference Data from a Previous Node in n8n

Learn how to use the $('Node Name') syntax in n8n to pull data from earlier steps in your workflow.

Make.comBeginner

Format a Date Using formatDate() in Make.com

Practice converting timestamps into readable dates using Make's formatDate() function.

n8nIntermediate

Filter Active Users in n8n Code Node

Learn how to use JavaScript filter() method inside an n8n Code node to keep only active users.

Make.comBeginner

Calculate Sum of an Array of Numbers in Make.com

Master the sum() aggregator function in Make.com to total line item amounts.

n8nIntermediate

Parse JSON String Data in n8n

Learn how to use JSON.parse() inside n8n expressions to convert stringified JSON into an object.

Make.comBeginner

Replace Substrings Using replace() in Make.com

Learn how to use the replace() function in Make.com to clean phone numbers or text.

n8nIntermediate

Use JavaScript Ternary Operator in n8n Expressions

Learn how to write shorthand if/else ternary conditions inside n8n expressions.

Make.comBeginner

Join Array Items into a Comma-Separated String in Make

Master the join() function in Make.com to merge an array of tags into a single text string.

n8nIntermediate

Extract Domain Name from URL using JavaScript in n8n

Learn how to parse URLs using standard JavaScript URL constructor inside n8n expressions.

Make.comBeginner

Capitalize First Letter of a String in Make.com

Learn how to format lowercase customer names using capitalization functions in Make.

n8nBeginner

Round Decimal Numbers in n8n using JavaScript Math

Practice rounding float numbers to two decimal places using Math.round() ortoFixed() in n8n.

Make.comBeginner

Get Array Length Count in Make.com

Learn how to count how many items exist inside an array using the length() function in Make.

Make.comBeginner

Convert Text to Lowercase with lower() in Make.com

Practice normalizing email addresses to lowercase in Make.com using the lower() text function.

Make.comBeginner

Convert Text to Uppercase with upper() in Make.com

Learn how to format country codes and IDs in uppercase using Make.com's upper() function.

Make.comBeginner

Remove Extra Spaces with trim() in Make.com

Practice cleaning leading and trailing spaces from form inputs using trim() in Make.com.

Make.comIntermediate

Extract Part of a String with substring() in Make.com

Learn how to extract the first characters of an ID or code with Make.com's substring() function.

Make.comBeginner

Check if Text Contains a Keyword with contains() in Make.com

Practice detecting keywords in email subjects using Make.com's contains() function.

Make.comIntermediate

Find a Character Position with indexOf() in Make.com

Learn how to find the position of a character inside a string with indexOf() in Make.com.

Make.comBeginner

Set a Default Value with ifempty() in Make.com

Practice replacing empty fields with a fallback value using ifempty() in Make.com.

Make.comIntermediate

Map Values with switch() in Make.com

Learn how to translate status codes into labels with Make.com's switch() function instead of a Router.

Make.comBeginner

Round a Number with round() in Make.com

Practice rounding decimal numbers to the nearest whole number in Make.com.

Make.comIntermediate

Round Up with ceil() in Make.com

Learn how to calculate the number of pages for API pagination using ceil() in Make.com.

Make.comBeginner

Calculate an Average with average() in Make.com

Practice calculating the average of an array of numbers using Make.com's average() function.

Make.comBeginner

Find the Highest Value with max() in Make.com

Learn how to get the largest number from an array with max() in Make.com.

Make.comAdvanced

Format Numbers with Thousands Separators in Make.com

Master formatNumber() in Make.com, including the decimal and thousands separator arguments that trip up most users.

Make.comBeginner

Get the Last Item of an Array with last() in Make.com

Practice getting the final element of an array with Make.com's last() function.

Make.comIntermediate

Sort an Array with sort() in Make.com

Learn how to sort arrays in ascending or descending order with Make.com's sort() function.

Make.comBeginner

Remove Duplicates with deduplicate() in Make.com

Practice removing duplicate values from an array with Make.com's deduplicate() function.

Make.comIntermediate

Check if an Array Contains a Value in Make.com

Learn how to check whether an array includes a specific value with contains() in Make.com filters.

Make.comBeginner

Add Days to a Date with addDays() in Make.com

Practice calculating future dates like due dates and reminders with addDays() in Make.com.

Make.comAdvanced

Parse a Custom Date Format with parseDate() in Make.com

Master converting day/month/year text into a real date with parseDate() in Make.com.

Make.comIntermediate

Get a Nested Value with get() and Dot Paths in Make.com

Learn how to read deeply nested collection values in Make.com using get() with a dot path.

Make.comAdvanced

Sum a Field Across Line Items with sum(map()) in Make.com

Combine map() and sum() in Make.com to total a field across an array of collections โ€” no Iterator needed.

n8nBeginner

Convert a String to Uppercase in n8n

Practice formatting country codes and IDs in uppercase with toUpperCase() in n8n expressions.

n8nBeginner

Split a String and Get the First Word in n8n

Learn how to extract a first name from a full name with split() in n8n expressions.

n8nIntermediate

Remove Characters with replaceAll() in n8n

Practice cleaning phone numbers by removing every dash with replaceAll() in n8n.

n8nBeginner

Check if a String Contains a Word in n8n

Learn how to detect keywords in text with includes() in n8n expressions and IF nodes.

n8nBeginner

Count Characters with length in n8n

Practice validating message length (e.g. for SMS limits) with the length property in n8n.

n8nBeginner

Count Items in an Array in n8n

Learn how to count array items with length in n8n, e.g. to skip emails without attachments.

n8nBeginner

Get the Last Element of an Array in n8n

Practice reading the last item of an array with at(-1) or last() in n8n expressions.

n8nIntermediate

Extract a Field from Every Object with map() in n8n

Learn how to turn an array of objects into an array of values using map() in n8n.

n8nIntermediate

Filter an Array of Objects in an n8n Expression

Practice keeping only matching objects in an array with filter() inside n8n expressions.

n8nIntermediate

Find One Object in an Array with find() in n8n

Learn how to look up a single record in an array by ID with find() in n8n expressions.

n8nAdvanced

Sum Values with reduce() in n8n

Master reduce() in n8n expressions to calculate totals from an array of line items.

n8nAdvanced

Sort an Array of Objects by a Field in n8n

Learn how to sort objects by a numeric field with a compare function in n8n expressions.

n8nIntermediate

Get All Field Names with Object.keys() in n8n

Practice listing the keys of a JSON object with Object.keys() in n8n โ€” handy for dynamic payloads.

n8nIntermediate

Avoid Errors on Missing Fields with Optional Chaining in n8n

Learn how to safely read nested fields that may not exist using ?. in n8n expressions.

n8nBeginner

Set a Default Value with ?? in n8n

Practice providing fallback values for empty fields with the nullish coalescing operator in n8n.

n8nBeginner

Convert a String to a Number in n8n

Learn how to convert numeric strings to real numbers with parseInt() or Number() in n8n.

n8nIntermediate

Find the Maximum Value in an Array in n8n

Practice getting the highest number in an array with Math.max() and the spread operator in n8n.

n8nIntermediate

Add Days to a Date with Luxon plus() in n8n

Learn how to calculate due dates and reminders by adding days to $now in n8n.

n8nAdvanced

Format an ISO Date String in n8n

Master turning API timestamps into readable dates with DateTime.fromISO() and toFormat() in n8n.

n8nAdvanced

Collect Values from All Input Items in an n8n Code Node

Learn how to read every incoming item with $input.all() in the n8n Code node and collect a field.

n8nBeginner

Convert an Object to a JSON String in n8n

Practice converting objects to JSON text with JSON.stringify() for HTTP bodies and logs in n8n.

n8nAdvanced

Extract an Email from Text with Regex in n8n

Master pulling an email address out of free text with match() and a regular expression in n8n.

Tools to practice on

Everything here runs on these platforms.

Store

Make.com โ†’ n8n Migration Playbook

Move real scenarios from Make to n8n without breaking them: module-to-node mapping, 5 step-by-step migrations, error handling, dedup and a cost model.

Get it for $15 → See all guides