It depends on the pitch. I'd say 0.65 mm and up are very doable with JLCPCB process (they can do down to 0.09/0.09 mm traces, 0.15 mm drills and 0.25/0.3 mm via pads, but latter for additional fee), and they can also do via in a pad (which I recently tested and found very useful) - and even do so at NO EXTRA CHARGE for 6+ layer PCBs. You only need microvias for 0.5 mm pitch and below, or very large devices with many hundreds of balls.
You can check out a project in my signature for an example of a 4 layer board designed around JLCPCB process which contains 1 mm and 0.8 mm pitch BGAs. I've also almost completed a 10 layer design which is going to contain a rather large 484 balls BGA and use via in a pad, also intented to be manufactured by JLCPCB, and since BGA pitch is rather large 1 mm, I've managed to get it done using only 0.1/0.1 mm traces and 0.2/0.4 mm vias to save a bit of money on manufacturing - they have quite a jump between 0.2 mm drills and 0.15 mm ones, but if needs must, of course you can take a step down. I've limited myself to 0.2 mostly because I wanted to see if I can actually get it done, knowing that an option to step down the drill size is still there should I absolutely need it. That design breaks out every single ball out of 484 ones, and it also contain a large 64 bit DDR3 interface to an SODIMM socket, so I needed all the routing space I can get, but in the end it worked out beatifully.