WooCommerce Case Study: Brodo Bone Broth Subscriptions, From First Order to $90K a Month
WooCommerce case study: Rowerr built Brodo’s WooCommerce store from scratch in 2014 and handled development and SEO from the first order onward. By 2019 the store was making about $90,000 a month with 700–900 orders a month. We then trained Brodo’s team to run the site themselves, and still handle technical work, including a September 2026 fix for subscription switches that timed out.
- CLIENT & LOCATION
- Brodo · New York City, USA (USD)
- PLATFORM
- WordPress · WooCommerce · WooCommerce Subscriptions
- PROJECT HISTORY
- 2014 build · 2019 handover · Sep 2026 fix
- ROWERR'S ROLE
- Development from scratch, SEO, team training, technical support

Results at a glance
| Business task | Take a New York bone-broth takeout brand online with one-off and subscription orders shipped across the US. |
|---|---|
| Before | No online store. Rowerr built it from scratch in 2014. |
| Constraints | Subscriptions with 1–6 week delivery intervals, subscription discounts, plan switching, US-wide shipping. |
| What we changed | Built the store, ran development and SEO, trained the team in 2019, and fixed the subscription switch timeout in September 2026. |
| How we checked | For the 2026 fix: repeated plan switches on a test subscription and checked prices, proration and the final subscription. |
| Measured result | About $90K a month and 700–900 orders a month by 2019, peaking at 893 orders. Plan switching works again. |
| Status | Solved. Brodo’s team runs the site day to day; Rowerr handles technical work. |
Figures reported by the client and Rowerr's project records, published with the client's approval, November 2026.
Book a free consultation →Project Overview
Brodo is a chef-founded bone-broth brand that started as a takeout window in New York City. It now ships broth boxes, individual flavours and gift cards across the US. Customers can pick a prepared box or build their own, then buy once or subscribe with delivery every one to six weeks and a subscription discount.
Rowerr built Brodo’s WooCommerce store from scratch in 2014 and was with the business from its very first online order, handling development and SEO. By 2019 the store made around $90,000 a month. We then trained Brodo’s team to manage the website themselves, and today they contact us for technical work.
Business Challenges
- From takeout to nationwide: a local NYC broth window needed an online store that ships across the US.
- Subscriptions: flexible delivery intervals, discounts and self-service plan switching.
- Growth: getting found in search and scaling to hundreds of orders a month.
- Independence: the team needed to run the store without a developer for daily tasks.
- 2026 bug: switching subscription plans never finished loading and ended in a Cloudflare 524 timeout.
How Customers Buy & The Stack
| Step | What happens |
|---|---|
| Choose | Pick a ready-made broth box or build your own from individual flavours. |
| Buy | Pay once, or subscribe with delivery every 1–6 weeks and a subscription discount. |
| Manage | Subscribers change, skip or switch plans in their Subscriber Dashboard. |
| Need | Tool |
|---|---|
| Theme | Custom brodo-2021 theme with a Brodo features plugin |
| Store and subscriptions | WooCommerce, WooCommerce Subscriptions |
| Pricing rules | Advanced Dynamic Pricing for WooCommerce |
| Email marketing | Klaviyo |
| Analytics | Metorik, Plausible Analytics, server-side Google Tag Manager |
| Error monitoring | Sentry |
Building the Store From Scratch
The problem: a takeout brand with no online store.
Brodo wanted to sell its broth beyond its New York window.
How we solved it
We built the WooCommerce store from scratch with one-off and subscription purchases, and handled development and SEO as the business grew from its first online order to hundreds a month.
Selling subscriptions on WooCommerce?
We build, grow and fix WooCommerce subscription stores.
Discuss Your WooCommerce Project Explore WooCommerce ServicesGrowth to $90K a Month, Then Handover
The result: a store the team can run.
By 2019 the store was making about $90,000 a month with 700–900 orders a month; the highest month we recorded at that time was 893 orders. We then trained Brodo’s owners and staff to manage the website themselves, so today they only contact us for technical work.
Fixing Subscription Switches That Timed Out
The problem: plan switching never finished.
When a subscriber tried to switch plans, the page kept loading until Cloudflare returned a 524 timeout.
What caused it
The store ran Advanced Dynamic Pricing for WooCommerce 4.14.0 with WooCommerce Subscriptions 9.2.0, WooCommerce 11.1.2, WordPress 7.1.2 and PHP 8.5. ADP’s subscription compatibility code kept adding new metadata values while reading the first one, so the switch filter never saw its guard flag and called itself again and again. The plugin developers fixed this loop in ADP 5.0.0. Raising timeout limits would only hide the symptom.
How we fixed it
- Exported the pricing rules and took a restorable backup.
- Installed a compatible ADP release that includes the 5.0.0 fix on staging.
- Repeated a customer’s plan-switch journey on a test subscription.
- Removed the temporary recursion guard only after the native fix passed.
- Checked prices and proration, then deployed. No plugin files were hand-edited.
How we verified it
- Opened switching from each subscription interval with no 524 or recursion error.
- Checked recurring price, cart totals and proration against the intended plan.
- Completed a test switch and confirmed the subscription moved to the right product and interval.
- Confirmed role and quantity pricing rules still work outside the switch flow.
Status: solved.
Results
| Year | Business challenge | Solution and outcome |
|---|---|---|
| 2014 | No online store | WooCommerce store built from scratch, with subscriptions |
| 2014–2019 | Grow online sales | Development and SEO; ~$90K a month, 700–900 orders, peak 893 |
| 2019 | Run the site in-house | Owners and staff trained to manage it |
| Sep 2026 | Plan switches timing out | ADP updated with the 5.0.0 fix, tested, deployed; solved |
WooCommerce Subscriptions FAQ
01Why does a WooCommerce subscription switch end in a Cloudflare 524 timeout?
On Brodo, Advanced Dynamic Pricing 4.14.0 kept calling its subscription switch filter in a loop, so the page never finished and Cloudflare gave up with a 524. ADP 5.0.0 fixed the loop.
02Should I raise timeout limits to fix a 524 error?
No. That only hides the problem. Find what keeps the request running, here a plugin loop, and apply the vendor’s fix.
03How do you test a WooCommerce subscription switch fix?
Switch from each delivery interval on a test subscription, check recurring price, cart totals and proration, complete a switch, and confirm the subscription ends up on the right product and interval.
04Can a store owner manage WooCommerce without a developer?
Yes. We trained Brodo’s owners and staff in 2019, and they now run the site themselves and only call us for technical work.
05How do bone broth subscriptions work on Brodo?
Customers pick a box or build their own, then buy once or subscribe with delivery every one to six weeks and a subscription discount, managed in a Subscriber Dashboard.
Key Takeaway
A subscription store lives on its switch, skip and renew flows. Build them well, teach the team to run the store, and when a flow breaks, fix the cause with the vendor’s update instead of raising timeouts.
Selling subscriptions on WooCommerce?
We build, grow and fix WooCommerce subscription stores.
Discuss Your WooCommerce Project Explore WooCommerce Services