No, most big website offer multiple sources tags within a video tag for different browsers and platforms.
Firefox and Opera for instance will not play mp4 files and only accepts webm and ogg. (Well, until today at least. Firefox 33 released just today now natively supports mp4, thanks to cisco.) Internet Explorer and Safari only support mp4. Chrome has supported all 3 for quite a while.
Mobile devices are even more fragmented. Many devices only support baseline profile, (which kinda sucks) though the newer ones are starting to support main and high profiles. Very few of them have acceleration for decoding webm or ogg. And even then it’s highly recommended to use something like HLS that serves the video in chunked format so that it doesn’t waste mobile bandwidth.
So, if you want a “single encode” that has the most broad support you can try the following:
ffmpeg -i <input_file> -c:v libx264 -crf 20 -g 45 -profile:v baseline -pix_fmt yuv420p -c:a libfdk_aac -vbr 3 -f mp4 -movflags faststart <output_file>