This is because the elgato software takes the output from the device directly and encodes it straight up without any processing. OBS is designed for full scene mixing so you can add overlays and stuff like that to the scene.
* Elgato software takes the output directly from the device, encodes it, and is done.
* OBS on the other hand takes the output from elgato, converts it to RGB, uploads it to the GPU with whatever else, renders the scene, downloads the scene from the GPU to RAM, then encodes it. So it's going to take a little more power to do so. Also it has to mix the audio from devices and such.
If you want to increase the saved file quality, take a look at Joe's guide here:
viewtopic.php?f=18&t=1764
Generally to increase the saved file quality you need to lower the CRF and increase the bitrate/buffersize by quite a fair amount.