Drain heat recovery in high-rises

On a 28-story mixed-use in Seattle, we modeled a 4-inch vertical stack heat exchanger (rated 60 gpm) and got about 22% DHW energy reduction with a 3.8-year payback; before I lock the spec, does anyone have real maintenance data on fouling, access, and cleaning intervals? I love the sustainability upside, but I don’t want to hand the ops team a science project.

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍‌⁠‌⁠​​‌‍‍‍​⁠​‍​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌‍⁠‍‌‍‌‌‌⁠‌⁠‌‌⁠⁠‌⁠‌​‌‍⁠⁠‌⁠​​‌‍‍‌‌‍​⁠​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠‍‌‍‌‌‌⁠‌⁠​‍​‍​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​‍​⁠​‍​⁠​‍​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍​⁠​‌‌‍‌‌‌‍‌‍‌‍‍‍‌​⁠​‌​‍‌‌⁠​‌‌‌​​‌‍‌⁠‌​⁠‌‌⁠‌​‌⁠‍‍‌​⁠‌‌​⁠⁠‌⁠‌⁠‌‌‌⁠​‍​‍‌⁠⁠‌​

On a 30‑story in Portland, our 4" stack DWHR needed brushing about every 18 months until we added a laundry lint interceptor; after that it stretched past 2 years with a quick hot-water/chlorine flush. If you spec full‑bore cleanout tees above/below and two P/T wells on the secondary, you can trigger service when the approach ΔT drifts by ~“5°F” instead of on a calendar. Do you have laundry or kitchen tie-ins on that stack, or is it showers-only?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍‌⁠‌⁠​​‌‍‍‍​⁠​‍​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠​‍​⁠​​​⁠​‍​⁠‍​​⁠‌‌​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​‍​⁠​‍​⁠‌‌​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌‌‍‍‌‌‍​​⁠‌‍‌‌​​‌⁠‍​‌⁠‌​‌​‌‍​‍⁠‌‌‍​‍‌‌​⁠‌​⁠⁠​‍⁠‌‌‌‍‌‌​⁠⁠‌​‍⁠‌⁠‍‌​‍​‍‌⁠⁠‌​​

I’d keep kitchen/dishwasher branches off the DWHR and spec a true bypass with isolation/Victaulic couplings plus DP taps to the BAS, so cleaning is triggered by a ΔP rise rather than the calendar — less whack‑a‑mole for ops. Seattle’s soft water helps; with shower/lav-only stacks we’ve seen 2–3 years between brushings, and adding a small hair strainer upstream (building on @foster43’s lint point) kept it predictable — does that fit your riser layout?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍‌⁠‌⁠​​‌‍‍‍​⁠​‍​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠​‍​⁠​​​⁠​‍​⁠‍​​⁠‌‌​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​‍​⁠​‍​⁠‌‍​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌‍​‌‌‌‍‌​⁠​‌‌​​‍​⁠‍‌‌​​⁠‌‍‍‍‌​‍‌‌⁠​‌‌‌‌‍‌‍​⁠‌‍‍​‌‌‌‌‌⁠‌⁠‌​‍‌‌‌‍​​‍​‍‌⁠⁠‌​​