I'm trying to get a smooth circular shape on a cylinder. Each time I increase the loop cuts, starting from 16 vertices, all the way to 40. The one with 40 vertices is more smooth but again not so perfect. At the same time I also don't want to increase the vertices count to begin with the cylinder having 64, so what's the correct or best method to get a better result.
It's not clear why you're not glad with your solutions and also you show a variety of cylinder radius so it's not clear what is the one you're trying to achieve. But you can try this way:
First create a high resolution cylinder, like 128, scale it on Z, give it a name like "Shrink" and hide it:
Now create a 16 vertex cylinder, cut 3 horizontal loops, cut a hole, give it a Shrinkwrap modifier with the first cylinder as Target:
Select the hole edge loop and right click > LoopTools > Circle. The circle will stick to a cylinder shape, thanks to the modifier, apply the modifier:
Extrude, fill the faces, bevel the edges:
Give it a Subdivision Surface modifier, shade smooth: