15CARTS ok Sign in

FAQ

The questions that probably brought you here.

Why "15 CARTS"?
New Buffalo prices can get pretty wild for first-timers. With 30+ dispensaries in the county, many selling the same brands at competitive prices, I got tired of opening tab after tab to build a 15-cart basket at every shop — or doing $4.25 × 15 (× 2) math to spot the best deal. 15CARTS is built for people like me who want their dollar to stretch further and drive fewer miles. The legal hook: Michigan caps adult-use concentrate possession at 15 grams per transaction, and a standard vape cart is about 1 gram — so 15 carts ≈ one full legal load. The flagship report at /carts/15pack ranks every shop by how cheap that exact basket is.
Where does the data come from?
Each dispensary's own publicly available online menu, checked on a schedule — every 30 minutes during peak hours (8am–10pm ET), hourly off-peak. We don't talk to any private API or POS system. If a shop doesn't publish a public menu we can read, we don't see it. We are not affiliated with, partnered with, or endorsed by any menu platform or dispensary.
Is this affiliated with any dispensary?
No. No money changes hands with any shop. No ads, no sponsored placement, no promoted listings. Rankings are pure dollars-per-milligram-of-THC or dollars-per-gram math.
Why isn't [my shop] listed?
Two reasons: (a) the shop doesn't publish a public online menu we can read; (b) it's outside the Berrien County / New Buffalo cluster we currently cover. If you want a shop added that meets both criteria, drop a note.
How fresh are the prices?
The freshness dot in the top-right of every page shows the age of the latest update in minutes. Green is fresh (under 75 min), amber is stale, red is failing. The /health endpoint returns the same status as JSON.
Can I trust that the prices match in-store?
We mirror what each shop publishes publicly. If their public menu is wrong, we're wrong. Every product card links out to that shop's own menu so you can confirm before driving over. For anything with a tight price difference between shops, placing a pre-order through the shop's own menu is the safe move.
Do you sell anything?
No. No cart, no checkout, no inventory. Every "buy" link goes to the shop's own online menu.
Why only New Buffalo / Berrien County?
New Buffalo is cute as hell. And the price competition between shops in that small radius is tight enough that comparison actually saves real money. Other Michigan clusters may follow if there's demand.
How do I report bad data or request a feature?
/contact. The form goes to the maintainer's inbox — honeypot + rate-limited so it's open without spam.
Do you have a Discord or newsletter?
Not yet. If you want one, send a note via /contact — that's the signal that gets things built.
Oh great, another datacenter sucking the Great Lakes dry?
Nope — not one. It runs on a computer in my house, not a rented datacenter, cloud region, or server farm humming away in some industrial park. No VPS, no AWS. It's served out through a Cloudflare tunnel so my home network isn't exposed directly, but the box doing the math is sitting in my living room, quietly running up my own electric bill. And since there's no datacenter behind it — no warehouse of servers, no million-gallon cooling loop drinking down a watershed — Michigan water stays pure. If that ever changes — if traffic outgrows the home machine and I move it to a proper host — I'll update this answer to say so.
How do you make money?
A $5/month subscription unlocks the best-deal rows; the comparison tables, the shop map, and the /api stay free for everyone. That subscription is the only money 15CARTS takes — no ads, no sponsored placement, no affiliate cut from any shop, so the rankings stay honest. Running costs so far: about $31 ? since May 2026.
What do the column names mean?
$/g THC
Total basket cost in dollars divided by total grams of THC. A cart at 80% potency contains 0.8 g THC, so a 15-pack of 80% carts holds 12 g. Lower is better. Used on /carts/15pack.
$/g
Raw price per gram — total dollars divided by total grams, with no potency math. Different from $/g THC: a 3.5 g eighth of flower at $35 is $10/g regardless of how potent it is. Used on /bulk-deals cross-shop arbitrage.
$/100mg
Pack cost in dollars divided by total THC mg, scaled to 100 mg. For a pack of 10 mg gummies this equals the cost per gummy. Used on /edibles/cheapest.
Potency %
Average THC percentage across the basket or pack. An 80% cart holds 0.8 g THC per gram of oil. Used on /carts/15pack.
THC mg
Total milligrams of THC in an edible pack, parsed from the product name (e.g. Wyld Pineapple Gummies 200mg → 200). Used on /edibles/cheapest.
Basket $ vs Sticker $
Basket $ is the total for the 15 carts with the best $/mg THC at a shop (the ones you'd actually want). Sticker $ is the total for the 15 cheapest by raw price. Often the same 15 carts, sometimes not.
Tier
A weight bucket the cross-shop ranking compares prices within (1 g, 3.5 g, 1/8oz, 1/4oz, 1oz, …). Slash-ounce and gram listings for the same size are folded together — 1/8oz and 3.5 g both land under 1/8oz. Used on /bulk-deals.
Buy / vs N×
The pack-size comparison on tier-break tables. Buy is the deal (e.g. 28 g @ $112); vs N× is what stacking N units of the smaller pack would cost (e.g. 28×1 g @ $280). Savings % falls out of the gap. Used on /bulk-deals and /edibles/cheapest.
Savings %
How much the larger pack beats stacking smaller ones at the same shop: (stack cost − pack cost) ÷ stack cost. Only deals above the slider threshold are surfaced. Used on within-shop tier breaks.
% below median
For one Tier, how far the cheapest shop’s $/g sits below the county median at that same tier. The bigger the gap, the better the arbitrage. Used on /bulk-deals cross-shop.
Listings
How many in-stock variants exist at a given Tier across the whole county. Not unique shops — one shop with 12 SKUs at the 1 g tier contributes 12. Used as a signal threshold: tiers with too few listings are hidden because the median can’t be trusted with thin data. Used on /bulk-deals cross-shop.
Deal
The shop has flagged the product as discounted from list price. The displayed price is the discounted one; the original sticker is shown crossed out where relevant.
Stock
How many distinct in-stock 1 g cart SKUs the shop has right now. One SKU is one product line — e.g. Wyld Pineapple Live Resin 1g counts as one, regardless of how many of that exact cart they have on the shelf. The number tracks variety, not physical inventory. Used as a tiebreaker — a shop with 60 distinct carts to choose from is generally a safer bet than one with 4.
Cluster
A geographic grouping of shops by access road (Exit 1, Exit 4a, US-12 south, M-239, Grand Ave). Helpful for chaining several stops on one trip.

Question not answered? Drop a note.