We Tested Every Non-Dairy Milk Option at Starbucks to Find the Best Coffee Companion

The world of plant-based milk offerings continues to grow larger and larger every year. Gone are the days when your coffee shop offerings were limited to soy milk and soy milk only; coffee giants like Starbucks now offer a selection of four different non-dairy milks to choose from. At Starbucks, your options are oat milk, almond milk, soy milk, and coconut milk. But which plant-based milk comes out on top when paired with coffee?



As a former barista myself, I was excited to sample every non-dairy milk that Starbucks has to offer; not to discover how they taste on their own, but to find out how they each taste with Starbucks’ espresso. I almost always opt for non-dairy milk in my coffee — whether I’m ordering from a coffeehouse or making it myself — so I’m familiar with the flavor profile of each milk and how it foams up. But there can still be a lot of differences with plant-based milks from brand to brand, especially when you actually get into pairing them with espresso — so it was important for me to sample each and every one of Starbucks’ non-dairy milks straight from the chain itself in the form of a hot latte. 

4. Almond milk

Full disclosure: I’ve enjoyed almond milk in my Starbucks coffees many times, but I haven’t tried it with a plain latte before. To me, it still tastes pretty good, but I do have to acknowledge that the flavor of the almond milk in a plain hot latte comes through in a way that it doesn’t in other drinks. In short, it tastes really nutty. There’s a distinct aftertaste of almonds that makes it impossible to forget that you’re drinking plant-based milk, even for a second.

In some drinks, I think this could be a benefit. If you’re trying to achieve a rich, nutty flavor in your vanilla latte or add a little boost to your hazelnut cold brew, for example, then almond milk should be your new go-to. Almond milk may also taste slightly less, well, almond-y when enjoyed cold, so lattes over ice could be a totally different story.

But for a hot cup of coffee at Starbucks, stay away from ordering almond milk if you’re trying to mimic the taste of non-dairy milk as much as possible. The milk itself just has too much flavor to taste like a plain ol’ latte. It doesn’t interact well with Starbucks’ espresso; the almond flavor overpowers the aftertaste of the espresso, almost making it taste like you’re drinking two different drinks at once.

3. Coconut milk

Coconut milk can have its benefits as a dairy substitute; it’s usually known for being rich, creamy, and slightly sweet. But surprisingly, coconut milk didn’t quite function the same as dairy milk when it came to Starbucks’ coconut milk latte. Those who cut their lattes with milk will likely be used to the flavor and strength of the espresso being diluted. Coconut milk, however, didn’t create this effect; in fact, it made the espresso taste more bitter than it normally would. When I tried a plain coconut milk latte at Starbucks, the taste of the espresso was a lot stronger than it would be with dairy milk. Some customers have said that they prefer coconut milk in Starbucks’ iced drinks rather than hot, because steaming can give it an acidic taste.

This isn’t a deal-breaker for everyone — in fact, some people will really enjoy the fact that they have an easy hack to make their Starbucks latte taste stronger. But for those who prefer to order a latte to cut down on the bitterness of their espresso, you should probably consider trying a different non-dairy milk at Starbucks, first.

In my opinion, coconut milk will not make your latte taste like coconut; it allows the notes of the espresso to shine through. If it weren’t for the unusual acidity, you probably wouldn’t be able to tell that you were drinking a plant-based latte. But its slight bitterness is something to keep in mind if you want your coffee to taste light and sweet.

2. Soy milk

I’ll admit it: Soy milk is actually my personal favorite non-dairy milk to order at Starbucks. It’s so good, I practically never order a drink without it. But there is a reason why I’m not able to give it top spot.

Soy milk at Starbucks mostly just tastes like regular milk. You don’t get that earthy taste that you would when drinking soy milk plain. It foams really nicely, has a dairy-esque richness to it, and allows the flavor of Starbucks’ espresso to shine through without overpowering it, either. However, the soy milk that Starbucks uses is sweetened. In fact, it’s vanilla-flavored.

This makes for an absolutely delicious latte (in my opinion, as well as many others’), but it’s not a perfect replacement or the absolute best substitute for dairy milk, because it always comes flavored. I think that it pairs beautifully with Starbucks’ espresso; you won’t pick up all the same tasting notes that you would if you enjoyed espresso with plain milk, but sweet vanilla and fresh espresso are a delicious complement to one another. However, if you don’t have a sweet tooth and want to enjoy your coffee with absolutely no other flavors, you’ll have to pass up the opportunity to try out Starbucks’ soy milk. I still stand by the fact that most people will love it; the flavor isn’t overwhelmingly sweet and it balances the flavor of Starbucks’ espresso nicely. But it’s still clear that you’re not drinking regular dairy milk, if only because of the light vanilla flavor.

1. Oat milk

Plain, unflavored oat milk takes the top spot out of all of Starbucks’ non-dairy options. There is still a little bit of a taste to it — mostly of cereal — that sometimes kicks in to let you know that you’re not drinking dairy milk, but to me, it’s a very light flavor that doesn’t detract from the espresso whatsoever. Starbucks’ oat milk steamed up really nicely, created a light yet very stable foam, and had the right level of creaminess for a classic latte.

You will get a hint of earthiness here and there while you drink, but oat milk takes the cake (or the cup) for plant-based milks that, uh, don’t taste like plants. In my opinion, the cereal flavor isn’t a deal-breaker because it also blends really nicely with Starbucks’ espresso; cereal is a normal note to encounter in the coffee world, so it doesn’t stand out much even if you do notice it from time to time. Compared to the other plant milk options, I would argue that Starbucks’ oat milk comes the closest to providing a neutral flavor and smooth creaminess that embodies a classic latte. Starbucks commonly uses the oat milk brand Oatly, but also stocks Chobani in some locations — the latter of which is what the store I went to offered. If you’re curious, here’s how Oatly and Chobani compare to each other.

The verdict? Oat milk for the (almost) perfect dairy substitute, soy milk for the flavored yet delicious dairy substitute. Honestly, though, depending on your personal preferences, Starbucks truly offers a non-dairy milk for every palate — especially since all non-dairy milks can be subbed into your drink for the low, low price of free.

Methodology

To sample these drinks, I ordered a short Starbucks latte — one of two Starbucks cup sizes that are smaller than tall – which comes with one shot of espresso in an eight-ounce cup and steamed milk to the top. Each drink was made with a different type of non-dairy milk, but there were no other add-ons. 

The kind baristas at my local Starbucks were essential to the success of this article and made all four drinks in quick succession, double-cupping each drink so they would stay hot. I sampled each drink right after all four were made.

The Starbucks latte is a standard drink, which means it’ll taste the same no matter where you order it from. Starbucks also doesn’t charge extra for any of its non-dairy milks, so I did not take pricing into account when sampling these drinks. Instead, I focused on finding a non-dairy milk that I thought would appeal to the most people while also being a good substitute for regular milk. I did not try any of these non-dairy milks on their own; the goal was to find the best milk to pair with Starbucks’ espresso specifically, rather than the best all-around dairy milk.