Batwoman is one of the rare Arrowverse shows that met an unfortunate early demise. The show was on the bubble during The CW's sale to Nexstar but there was hope that it would get at least one more season since it was one of the network's more consistent performers.
It wasn't a top performer, but it did have one of the most consistent viewership bases on the network, so it would have made sense to close it out with a fourth and final season. The CW had the same thought process it seems as, again, the network reportedly wanted to renew it and Legends but it wasn't to be.
The unexpected silver lining in all of this is that the creative team behind Batwoman planned their season 3 finale so well that it essentially functioned like a series finale - and what a series finale it was. Not only did it wrap up the third season really well, it featured some of the show's most ambitious set pieces, with the Batwoman/Marquis showdown on the Bat-blimp looking great (not to mention the fact it paid tribute to Tim Burton's 1989 classic Batman).
By the end of Batwoman season 3, Ryan Wilder had regained access to Wayne Enterprises and the Batcave, order was restored and Gotham City's protector was back in action. Her long-teased relationship with Sophie Moore had finally started to blossom too, and the Bat-Team were ready to continue their work in the Batcave. Yes, the teaser at the end involving a mysterious new villain was technically a cliffhanger designed to set up season 4, but it also works well as a conclusion to the show. In Gotham City, the adventures will always continue. It's just unfortunate that they will continue off-screen.
Batwoman had finally found its footing in season 3 and the finale was no different. I hate that it had to go, but the show went out on a high.