The Instacart markup on my last Costco order came to $32.41 on a single pack of steak. The sticker on the package of Kirkland Signature USDA Choice thin cut boneless ribeyes said $69.40. My Instacart receipt for the same 4.63 pounds said $101.81.
I did the math. Divide $69.40 by 4.63 pounds and you get $14.99 a pound, the warehouse price. Instacart charged me $21.99 a pound. That is $7 more for every pound of meat, a 47% markup, before the delivery fee, the service fee and the tip. When the order first went through, the app estimated the package at 5.67 pounds. That means it initially set aside about $124 for steak I could have bought for $69.
I texted customer service. They told me prices are set according to Instacart marketplace pricing. So I looked it up.
Costco’s own Same Day delivery page says item prices are higher than your local warehouse in order to cover the service and delivery fees charged by Instacart. In other words, the cost of delivery is already built into the price of every item in the cart. Then Instacart adds a service fee at checkout. Then you tip the shopper. The cost of getting groceries to my door gets charged more than once.
I pay Costco every year for a membership. That card is the whole point of Costco: you pay the fee and you get warehouse prices. To get the best Same Day pricing, Costco tells members to order through Costco.com, which requires an active membership. I did that, and I still got charged an extra $32 on steaks. Instacart does not even require a Costco membership to buy Costco items on its own app. Shoppers without one can order anyway and simply pay a bigger markup. Members get a smaller Instacart markup, but a smaller markup is still a markup. I am paying for the card and then paying again for not walking into the warehouse.
I understand that delivery costs money. Someone has to drive to the warehouse, walk the aisles, pick my order and bring it to my door, and that person deserves to be paid well. I expect a delivery fee, and I tip. What I did not expect was a 47% surcharge on the groceries themselves, disclosed in a pricing policy most people never click on.
Nobody seems willing to own it either. When KARE 11 in Minneapolis investigated Costco orders on Instacart, Costco told the station that Instacart sets the prices, and Instacart said Costco sets the prices. Instacart’s position is that each retailer decides what to charge on its platform. Costco’s page says the markup exists to cover Instacart’s fees. The shopper is the only one in the deal with no say.
It does not have to work this way. CBC Marketplace in Canada compared identical grocery orders in stores and on Instacart. It found that Walmart charged the same price in both places, while Costco and Loblaws marked items up. Some retailers cover the cost of the delivery partnership another way. Costco passes it to members.
The Instacart markup on Costco items is also steeper than what competing apps charge. In a side by side test of the same 15 Costco items published in September, Uber Eats ran about 12% over store prices and DoorDash about 11%. Instacart came in 24% higher. Once fees and tip were added, the Instacart order cost about 32% more than shopping in the warehouse. My steaks beat that average by a mile.
There is also the question of whether two people even see the same price. Last December, Consumer Reports, the advocacy group Groundwork Collaborative and the news outlet More Perfect Union studied 437 shoppers in four cities. They found Instacart was running AI pricing experiments through a tool called Eversight, software Instacart bought in 2022 that lets retailers test different prices on different customers to see what people will pay. The study found shoppers could be charged up to 23% more for the same item from the same store at the same time. The same basket of groceries varied by about 7% on average. Costco was one of the retailers the researchers found testing the system.
Instacart said the tests were randomized and not based on anyone’s personal data. The Federal Trade Commission still sent the company a civil investigative demand about the tool. That is a formal legal order requiring a company to turn over information. Within days, Instacart announced that retailers could no longer run price tests through Eversight. That same month, Instacart agreed to pay $60 million in customer refunds to settle FTC claims that it falsely advertised free delivery and did not clearly disclose its service fees.
So when customer service tells me the price is “according to Instacart marketplace,” I hear a description of a system where the price is whatever the platform and the retailer decide to show me that day, with the explanation tucked into fine print.
I want three things. First, show the warehouse price next to the Instacart price on every item, right in the cart, so shoppers can see the Instacart markup before they pay it. Second, if Costco members are paying for warehouse pricing, honor it and charge an honest delivery fee instead of hiding the cost in a pound of ribeye. Third, if delivery is already priced into the food, stop charging a separate service fee for the same thing.
Until then, the math is simple. That pack of steaks cost $69.40 at Costco and $101.81 through Instacart. Convenience is worth something to me. It is not worth $32 on a single item, and I am not the only one paying it. I guess I will be driving to Costco and shopping myself now. That markup is pure robbery.
