I think alot depends on what you are hosting.
1. if you have a site that gets few visitors most of the time, shared hosting is probably more cost effective.
2. if you have a site that gets very busy, but only for short periods, then shared hosting is probably more performent.
Some of our new shared hosting servers have 256GB and even 512GB of RAM (we like to cache everything) and 20 to 40 CPU cores, the allocation of memory that a given user is given will perform way better on a shared hosting machine than giving the individual a VPS with the same memory.
The LVE environment that CloudLinux offers, is almost identical to having an OpenVZ VPS. (After all CloudLinux, is an "altered" OpenVZ Kernel)
Since we changed exim to send and receive email through the IP address on which the domain is hosted, a dedicated IP gives you almost every advantage of a VPS, without the management overhead, or the overhead of the OS or DB cache memory, yet still allows you to select with version of PHP, and which modules you have loaded.
Unless you are using very funky software or need privileged access, or you site is busier than a shared host can tolerate, then I would argue that a VPS is just something you want, rather than need.
We sell VPSs, but only with a minimum of 2GB, and 4GB if you want a control panel, otherwise you would be better off on the shared hosting platform. (and it's the 2GB servers we get the most "performance related" tickets for; strange....)
Our main issue with VPS is that customers want to do everything with too little memory.
To save $5, they would prefer to move memory I/O to disk I/O, then wonder why nanseconds to milliseconds (100,000 times slowet seek rate) and a 10,000+ times slower transfer rate slows down their site.
So unless you have some admin experience, or access to someone with admin experience (which may be a managed/semi-managed VPS) it's probably not of benefit.