Those flower delivery services are great, but they can be very costly to use. The story is the same with the local florists in my area. Valentine’s Day flowers don’t have to break the bank, though. Read on to discover some places where you can pick up a bouquet for a reasonable price! Keep in mind that most of these stores have access to a finite supply of flowers, so get them while you can!


If you want to go big this year, Costco has 50 stem roses for $54.99 if you pre-order online today. It’s also possible to find a dozen roses in-store for $16 or other types of flowers for as low as $10.

Whole Foods/Amazon

Since Amazon owns Whole Foods, you can use your Amazon Prime membership to get bouquets from there for as low as $7 when you order through Prime Now. It’s also possible to pick up two dozen roses for only $19.99.


Kroger is offering a dozen roses for $20 in-store, along with other flower bouquets for as low as $6. Make sure you’re a Kroger Plus member to get the best deal.

Trader Joe’s

If tulips are more your thing for Valentine’s Day, Trader Joe’s is the place to go. Right now you can pick up two dozen tulips for just $10.99. They also have the more standard dozen roses for $12.99.


Lidl just released their ad for the week and they have a dozen roses in assorted colors for just $9.99. They have several other bouquets starting as low as $4.99 while supplies last.


Not to be done by its German competitor, Aldi has similar deals to Lidl. You can find a dozen long-stemmed roses for $9.99 and other flower arrangements for as low as $4.


Wegmans has some stunning bouquets for as low as $4 this week. A dozen of their finest roses will set you back $19.99.

Sam’s Club

At Sam’s Club, while the pickings are fresh, you can score 18 roses for just $15.98. This deal is only good in-store.


If you’re thinking of something a little smaller, Walmart has 3-rose bouquets for $4.87 in various colors in-store only.