Try an experiment:
Create two pictures of 800x600 pixel dimensions.
One being a single color, the other being multi colors, as random as you can make it (I used a fractal pattern).
Save both as JPG images.
Then look at the sizes.
In my experiment I found that the single color picture was under 4k bytes, and the multi-colored picture was over 181k bytes.
Any guess why? because JPG compression, actually any compression, can compress a repeating pattern MUCH MORE than a non-repeating pattern.
Now, use those same two pictures and now save them as 24 bit color BMP (bitmap).
In my test I found that BOTH images saved as 1407k bytes.
One last test. Again take those same images and now save them as 8 bit color BMP images.
In my test, then BOTH images were saved as 470k bytes.
Notice that in BMP images, regardless of the colors and patterns, the size of the resultant file depends upon the pixel dimensions, and the color depth.
The formula would be H*W*D (Height * Width * Depth)
Not so with JPG. Hence, there can be no 'standard formula' for JPG.
OH, one last point. Remember I mentioned that any compression program can compress repeating patterns better than non-repeating patterns? I then took the two 1407k byte BMP images (one a single color, the other a very random color pattern) and zipped them both.
The single color BMP compressed to about 2k bytes, whereas the multi-colored one only compressed to 1379k bytes. Not much savings there, huh.