If you have very many raster files and you create overviews for individual images, then the rendering software must open lots of files for constructing a small scale output. In extreme case if you want to show the hole site all of the images must be opened, even just the smallest overview with not much data gets read from each file. I would say that opening 10 images is OK but opening 100 images feels slow for the user.
If you create first a virtual raster and then create overviews for that you'll get just one file that hold the overviews. It is faster to use. However, if you need to update just one raster file you must create the huge overview file for the hole site. The file size of .ovr file is about 33% of the total size of the source rasters if the compression method is the same.
If it is not a problem for you to handle one file with size that is 133% of the total raster data then the fastest result might be achieved by taking the VRT as input and converting it into a cloud optimized geotiff with the COG driver https://gdal.org/drivers/raster/cog.html.
Most usable solution may be to do a compromize. Create the first few, like 2 4 (8) overviews for the images and rest for the VRT. Depending on the imagery it may not be necessary to update the smallest overviews because user would not see any difference at those scales.