Hi I am in the camp of both having hired out and DIY refinished hardwood floors. Happy to share both experiences! It is totally doable to DIY, but I would only DIY with a very specific product (Rubio Monocoat). If you definitely want to use polyurethane (oil or water based), I would go with the pros!
Here’s my story and path to Rubio Monocoat…
I hired out when we refinished our downstairs red oak hardwood floors. This was a big job for 5+ rooms. It took 2 coats of stain (a dark Minwax stain) and 3 coats of oil poly (Fabulon in a matte satin). This also meant it took 4 days to complete because each coat of polly needs 24 hrs to dry and then to be buffed in between. It seemed very worth the price tag for this level of effort in a large space. I was thrilled with the results and after 3+ years the floors have really held up and look brand new.
Having seen the professional crew do it, I knew I would never want to DIY this type of job. Sanding seemed easy enough but because of the large area and the poly application, the margin for error seemed really high (air bubbles, cloudiness, etc). Not to mention the horrible smell of poly products.
When it came time to refinish a few rooms upstairs in our house, I hired out again but used a different contractor. And this time, it took the crew only 1 day to sand, stain, and seal the floors in 3 rooms. I was amazed! Enter: Rubio Monocoat.
Having seen this crew use the product, I knew I could DIY this in future. And from here on out, that’s what I’ve done for the rest of the rooms in our house.
The DIY Route is pretty straightforward. First you sand, then you stain and seal. Sanders are pretty easy to rent from local or big box hardware stores. The Renovation Husbands recently refinished their floors and have a good writeup of the process here: Refinishing Our Own Floors — Renovation Husbands. They used a water based poly and were pretty honest on social about likely never DIYing the poly step again. But their sanding steps are spot on.
Once you’ve sanded, then you apply Rubio Monocoat. The name may give it away, Rubio Monocoat is a stain and sealer all-in-one product. So it only takes one coat to apply. It’s a natural hard wax oil, which makes it more eco friendly and no VOC. You apply it like you would stain by wiping it on, waiting a few minutes, and then wiping/buffing it off. I used white rags to do this. It’s really hard to mess up. No air bubbles to worry about and no multiple coats.
Unlike poly which sits on top of the wood, Rubio Monocoat penetrates the wood. Because of this, you can spot repair scratches by sanding and re-waxing (serious miracle product ), which is nearly impossible to do with poly, you’d have to completely redo the whole floor. And if you have a large area of flooring you’re refinishing, you can stop midway and just pick up the next day where you left off (also not possible with poly).
The only downside to Rubio Monocoat is that it’s only available in matte finishes so you can’t get the same shiny look as you can get with a poly.
Fun fact: Rubio Monocoat is used in all Google offices because it can withstand wear and tear and be spot repaired.
Happy to share more or answer any Qs!