The main reason most companies open source stuff is because they had to build something for some reason or another, the thing works, but they don't want to maintain it because it's plumbing and it's not mission-critical.
Sometimes it's easier to throw the thing on GitHub (where others might find it and at least use it) than throw it in your company's internal repository (where nobody will ever find it and it will rot away).
Most of the time it's much easier to leave stuff in internal repos than doing the effort to review and approve stuff for publishing.
In my mind, the best revenue model for OSS is something that is opt-in. For example, if a company wants to pay for enhanced support they can, but if not they can use the software and rely on community/best-effort support.
The main goal in my mind should be making greater resources available to the project while still allowing free use.
Now there are many great secondary reasons as an individual, in no particular order: I learn a lot, I got some paying gigs from my open source, better code through more eyeballs, it builds curriculum/personal brand, it feels good to be complimented, etc. For companies I'll guess also it's a great recruiting tool as you are not a name in the dark but you show your code (I've considered that when looking for a job).
Oh wait, I totally (honestly) forgot about your main question when listing the benefits. I would say that the common feeling (at least in JS world) is that open source does not give direct money, so few projects start with the intention of getting it and later on it's more difficult.
If you try to do it there is a whole topic on this: https://opensource.guide/getting-paid/
To OP, since you've opened this discussion would you please share your thinking as well?