I’ll break down mine because shoulder season used to drive me crazy too.
Pool is 25x10, average depth just under 5 feet, so right around 13 to 14k gallons. I’m running a 110k BTU heat pump, which is technically a bit oversized for that volume, but in spring and fall our nights drop into the high 50s. I’d rather have it cycle comfortably than run flat out all day.
Location wise, it’s fully outside with nothing within about 3 feet on the discharge side. Early on I had it closer to a fence and you could literally feel it pulling its own cold exhaust back in. Efficiency tanked. Once I moved it and gave it clean airflow, it held temp way better.
Plumbing is simple: pump → cartridge filter → heat pump → chlorinator, with a three way bypass. I use the bypass to fine tune flow because heat pumps like steady, moderate GPM. When heating, I run my variable speed pump around 2300 rpm. That keeps filter pressure stable and gives solid heat transfer without pushing unnecessary head loss.
The biggest lesson though was evaporation control. I use a 12 mil clear solar cover and it goes on every night, no excuses. Before that, I was losing 4 degrees overnight in windy shoulder months. With the cover, loss is usually 1 to 2 degrees. That difference is huge. The heater can recover 2 degrees in an afternoon. It struggles to recover 5 without running forever.
I also only heat when ambient air is warmest, usually mid afternoon into early evening. Trying to heat early morning when air temps are low just isn’t efficient for a heat pump.
If you’re struggling to hold temperature, I’d look at three things in order: overnight heat loss, airflow around the unit, and then BTU sizing. A lot of times it’s not that the heater is too small, it’s that the pool is bleeding heat all night.
If you can share pool dimensions, average depth, and your typical daytime and nighttime temps in spring and fall, it’s pretty easy to sanity check whether you need more capacity or just better retention.