Begin by lining two large baking trays with parchment paper. Use trays that don't have a high edge - a little lip on the edges is okay. I would recommend using macaron templates for piping the shells, especially if you are a beginner. You can download and print my 2 inch macaron template here (you will need 3 copies). Place the template under the parchment paper. Set the trays aside for now. If using whole eggs, separate the whites from the yolks. Ensure you do not get any of the yolks into your whites. Weigh out the egg whites and then set them aside for now.
Place the almond flour and powdered sugar into a food processor (this step is optional, but recommended - see note 1). Process for about 5 seconds, give the ingredients a mix and then process again for another 5 seconds. Do not overprocess it (see note 2).
Once processed, transfer the dry ingredients to a sieve and sift. Once you get to the end, use your hands or a spoon to break any large lumps and gently push the remaining ingredients through the sieve. If there are any large bits remaining (this is usually just larger pieces of almond flour), discard it. If you discard a lot of it (more than half a teaspoon or so), add a bit more almond flour to the dry ingredients to make up for this. Set the dry ingredients aside for now.
Next is the meringue. Place your egg whites in a large bowl and add in the salt. Using a hand or stand mixer (use the whisk attachment if using a stand mixer) on a medium speed, whip for 30 seconds until the eggs become frothy. Once frothy, gradually add in the granulated sugar. Once all the sugar is added in, continue to whip until you reach stiff peaks. You should be able to lift up the meringue and the peaks shouldn't fold over - they should stay upright (see video for demonstration).
Next add in vanilla and gel colour if using. Mix into the meringue on a low speed until well combined. Set the mixer aside as the remainder of the mixing will be done by hand.
Next is the macaronage. Add half of the dry ingredients into the meringue, and using a spatula, gently fold in a 'J' motion, sweeping around the egde of the bowl and then cutting through the middle of the batter (see video for demonstration). Once the first half of the dry ingredients is almost mixed in, add in the remaining half. Continue to fold until combined.
Once combined, begin gently pushing the batter up against the sides of the bowl to remove large air bubbles. As you do this, the batter will become looser in consistency. You know the batter is ready when you can lift the batter up with the spatula and slowly create a figure 8 without the batter breaking. If the batter breaks before you can complete the figure 8, mix a little more. Another sign is checking if the batter sinks into itself for about 10-15 seconds then stops. Keep checking the consistency of the batter frequently to ensure you aren't overmixing it.
Once ready, transfer the batter to a piping bag with a 1A large round piping tip on it. Pipe the shells perpendicular to the trays to ensure they're even. Because the batter will spread a little, pipe the shells slightly smaller than the size that you want. To prevent the parchment paper from moving while piping, place a spoon or fork on the edges to weigh the paper down.
Once all the shells are piped, carefully remove the templates (and anything used to weigh the parchment down) and drop the trays on the counter and then use your hands to bang the bottoms of the trays as well. Any large air bubbles should come to the top, which you can then pop with a toothpick or knife. At this point the shells should be smooth with no tips in the middle. If there is still a tip in the middle, it means the batter is undermixed.
Allow the macaron shells to dry for 30 minutes to an hour, or until a skin forms on the top. You should be able to gently run your finger across the top of the shell without the batter breaking. If you live in a humid climate, it can take up to 2 hours for a skin to form. About 20 minutes into the shells drying, preheat your oven to 150C/300F (no fan - see note 3).
Once a skin has formed, bake 1 tray at a time in the middle rack of your oven for 18-22 minutes. You know the macrons are ready when you gently touch/move the tops and the feet do not move. Check at the 18 minute mark, and if the macarons are not ready, check every minute after that as they can overbake very quickly.
Once baked, allow the shells to completely cool before gently peeling them away from the parchment paper. There should be little to no residue left behind.
Pipe your desired frosting or filling into the middle of a shell (I use a 1A piping tip to do this), leaving a little space on the edges. Place another shell on top and gently press down to push the filling to the edges of the macaron. Repeat this step with the remaining macarons. Store in an airtight container in the fridge to mature for 24-48 hours. Once ready, allow them to come to room temperature to soften before serving.