Preheat the oven to 170°F or set it to a “warm” setting. Place a baking sheet on the top rack.
Preheat a waffle iron to the highest or second highest setting.
In a medium bowl, whisk together the buckwheat flour, almond meal, coconut, cocoa powder, ground flaxseed, baking powder, cinnamon, arrowroot, and salt. Once combined, add in the non-dairy milk, non-dairy yogurt, coconut oil, maple syrup, and vanilla. Gently stir the mixture with a spatula until fully combined. The batter will be very thick!
Lightly grease the waffle iron with coconut oil. Drop a level ⅓ cup of the batter into the center of the waffle iron and press the lid down. Wait for the timer to go off. The finished waffle should be dry to the touch on top and a deep brown colour. The edges will still be slightly damp/granular looking. If your waffle isn’t there yet, bring the lid back down and keep cooking it.
Very carefully extract the waffle from the waffle iron with a fork, slowly lifting up one edge. The waffle will feel delicate and slightly undercooked. This is okay! It will continue to set up in the warm oven.
Transfer the cooked waffle to the baking sheet in the oven to keep warm. Repeat the waffle making process with the remaining batter.
Serve the buckwheat coconut waffles warm with maple syrup, extra dollops of non-dairy yogurt, and fruit of choice.