We're reader-supported and only partner with brands we trust. When you buy through links on our site we may receive a small commission at no extra cost to you. Learn More. Product prices and availability are accurate as of the date and time indicated and are subject to change.

Valentine’s Day flower markups can be as high as 250% at local florists. But while florists are marking flowers up during Valentine’s Day, supermarkets and big box stores mark them down.

How much are a dozen roses? A dozen roses cost $15 or less at ALDI, Costco, Whole Foods, and Trader Joe’s.

Here are some of the best Valentine’s flower deals we’re seeing right now, (and some you can expect based on 2021 deals). You could buy these locally, or get them delivered nationwide. But keep in mind: some of these deals don’t start until Feb. 10th or 11th.

Also, check out these other Valentine’s Day articles to get into the mood!

Valentine’s Puns for Kids
Dollar Store DIYs for Valentine’s Day
Valentine’s Day Crafts for Kids


Trader Joe’s has a dozen Valentine’s Day roses for just $8.99 — but prices rise on Feb. 10.

single tin of assorted roses at trader joes for $8.99

You’ll need to act fast on this Valentine’s deal: Trader Joe’s is one store that doesn’t discount roses for Valentine’s Day. In fact, every year they inflate their regular $8.99/dozen price between Feb 10-14 to $12.99, at $1.08 per rose.



If you miss the deal on roses, Trader Joe’s also has DOUBLE dozen tulips for $12.99.

assorted bouquets of muti color tulips at trader joes

Hands down, the best deals on tulips you’ll see all year come from Trader Joe’s every February, while supplies last. Get 24 stems for only $12.99. That’s an incredible deal.

Who wants roses when tulips are this cheap? I’m team tulips, all the way. Skip the roses and use the money you save to pick up some truffles, please. XOXO

See all Trader Joe’s deals.



And you can’t miss Trader Joes’ Mini Valentine’s Day succulents for just $4.99.

mini succulents in footed ceramic pots at trader joe's

These ADORABLE mini succulents for Valentine’s Day are trendy, sweet, and cheap. Pick one up for just $4.99. They come in a little red pot with hearts on them.

Trader Joe’s usually has a whole bunch of them, so take your pick:

mini potted succulents at trader joes for valentine's day



From You Flowers is offering $15 off Valentine’s Day flowers starting at $39.99.

from you flowers valentines day bouquet arrangement in pink mason jar

Take $15 off your order from FromYouFlowers.com through Valentine’s Day with code MB1. You can add a notecard to your delivery for free, or add a vase, bear, or chocolates for an additional cost.



ALDI sells cheap Valentine’s Day flowers — a dozen roses for $9.99.

valentines day rose bouquets for cheap

Leave it to ALDI to come in with one of the best Valentine’s Day flower deals! At $9.99 per dozen, you’ll only pay $0.83 per stem.

According to the ALDI Weekly Ad, these other Valentine’s Day flower deals are set to start Feb. 11 in stores:

  • Premium Valentine’s Day Bouquet, Assorted Colors: $14.99
  • 5-inch Easy Potted Orchid: $5.99
  • Valentine’s Day Cactus or Succulent: $3.99
  • 10-Stem Tulip Bouquet, Assorted Colors: $4.89

See all ALDI deals.



Whole Foods sells two dozen Valentine’s Day roses for $19.99.

From Feb. 9-15, Amazon Prime members can save $10 on the retail price of $29.99 for two dozen roses. This brought the price point down to compete with ALDI at only $0.83 per rose.

See all Whole Foods deals.



Sam’s Club stores sell Valentine’s Day flowers — 21 stems for only $15.98.

Sam’s Club is offering premium Valentine’s Day bouquets for $15.98, which comes out to $0.76 per stem, and one of the best deals of the year. This deal is available in stores only while supplies last, but you can order online for curbside pickup, too.

See all Sam’s Club deals.



Walmart’s flower prices come out to $15.97 for a dozen roses.

Walmart’s Valentine’s Day flower deals aren’t nearly as good as Whole Foods or Sam’s Club, but they’re still worth checking out. For a dozen roses, you’ll pay about $1.33 per stem. In the days leading up to Valentine’s Day, you can expect to see more flower and rose displays in the center aisles by the registers.
See all Walmart deals.



But Walmart’s 3-Rose Mini Bouquets are just $4.87 for Valentine’s Day.

Bouquets of roses for sale at Walmart

Walmart’s three-rose (mini) bouquet came in at a price point under $5 — your cheapest entry into the rose market, but not the cheapest cost per stem ($1.62 each).




Act early to get the Costco Valentine’s flower deal — 50 roses for as low as $40.

Bouquets of roses on display for sale

In 2021, you could order 50-stem roses for your Valentine from Costco.com for $39.99. Costco offered 15 colors and color combinations at $0.80 per stem. The closest delivery date to Valentine’s Day was early — Feb. 5 — and at that price, they sold out quickly. So, this option works best if you can move on it right when it shows up and you don’t mind sending your flowers a week early.

Costco.com also has had Valentine’s Day 50-Stem Roses for $54.99. You can pick the arrival date between Feb. 9-12, which is closer to Valentine’s Day than the cheaper bundle. In 2021, the last day to order for Feb. 12 delivery was Feb. 9.

See all Costco deals.



Target’s Valentine’s Day flower deals aren’t great — $19.99 for one dozen roses.

valentine's day dozen rose bouquets on display at target

In-store roses hit Target shelves around Feb. 7 each year. Their standard 12-count rose bouquets are $19.99, but If you want your roses pre-arranged in a vase, it’ll cost you $34.99.

Pay with your RedCard and save an extra 5% on your Valentine’s Day flowers! RedCard connects to your checking account, so it’s like using cash, not a credit card.

See all Target deals.



But these potted Valentine’s Day tulips are just $6.99 at Target.

Each pot comes with about 5 tulips — so you’re looking at a price of about $1.40/stem. It’s not the BEST deal, but tulips for under $7? I won’t say no.



CVS takes the crown for the worst Valentine’s roses deal — $12.99 for a single stem.

single stem valentine's day rose special at cvs in February

CVS typically doesn’t carry roses until about two days before Valentine’s day, but in 2022, they released a single-stem special for $12.99. It’s a terrible deal, even if you have ExtraBucks from couponing at CVS.

Don’t expect CVS flower deals to get much better before Valentine’s Day — in 2021, they offered a half-dozen roses for $12.99 in the days leading up to Feb. 14. Better, but still not great.



UP NEXT: The Best Valentine’s Day Deals

Where to Buy Valentine's Day Flowers for Cheap