Learn which file formats your app supports, what they can do, and when they should be used. Contrary to popular belief, JPEG is poorly suited for some task. It's an old, lossy 24-bit color standard that sometimes requires larger files sizes to get acceptable results compared to other formats.
Grayscale textures is a common example. Most artist leave their photo app in the default color mode and save everything as full-color 24-bit or 32-bit images. However, spectacular, AO, SSS, bump/height-map, and opacity/transparency are all channels were texture color info is either rarely used or ignored by the renderer. Using full-color images for these is waste of disk space and for items with 50-100 textures or more, that adds up quick! Photo apps usually support grayscale images, it just requires switching the image mode to "grayscale" first. Though JPEG technically supports grayscale, it's not optimized for it. Other formats such as PNG have different color modes and are optimized for such use. In my experience, most textures saved as grayscale PNG are smaller, even 50% or less, than a comparable JPEG--without sacrificing quality.