How To Make A Latte Art Swan

 Last Updated June 7, 2024

In this guide you will learn how to make a latte art swan. The Swan combines  3 coffee art techniques of the past: the rosetta, the tulip and the heart. On top of that there is an added coffee art technique called the ‘drag’, which is what creates the neck of the swan.

I recommend being comfortable with the basic coffee designs before giving the swan a go as it requires a steady hand and technique.


Prior Knowledge

How To Pour A Latte Art Swan

1. Pour The Rosetta Wing

The Swan is created in one pour. To begin start by making a rosetta on one side of the cup. However, instead of running the milk through the middle of the rosetta waves like you normally would, pull the milk along side the rosetta. This creates the wing.

2. Create The Body

Next, when your jug reaches the bottom of the wing hold your jug still while shaking the jug side-to-side like you would when making a heart. This creates the body of the swan.

Make sure the shakes are small as you only want to make a small circle body. Also nudge the jug forward a little like you would when making a tulip coffee design.

3. Pour The Neck

Once the body is complete you will hold the jug still and ‘drag’ it towards you to make the swan’s neck. When you reach the top of the cup, bend the swan’s neck down in a ‘U’ shape motion. It is important to keep the jug close to the crema of the coffee when making the neck as you want the foam to drag behind.

4. Complete With The Head

Finally, hold the jug still and shake it side-to-side to make a small circle like you would when making a mini heart. Lift the jug to create thin and steady stream of milk and follow-through with the milk through the circle. This creates the swan’s head and you complete the coffee design

latte art swan

Keep learning! More latte art guides below...

About The Author 

Ivan Bez

Ivan is the founder of Latte Art Guide and a barista with 10 years of experience. He loves coffee and aims to help people improve their coffee making skills.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}