In regards to GIF in OBS, I discovered this a while back:
I kept running into an issue where OBS was using a ridiculous amount of resources, so much I had to hard reset the computer after a few minutes to even escape the program. I scoured the forums trying to figure it out, I never saw a clear answer so I started removing assets from the overlay including a couple of animated ones looking for anything that was a strain on the cpu. I discovered that while I was experimenting with webm and transparent video files to reduce the resource drain and still get the look I wanted (I couldn't properly encode them so I gave up on it) I had made all the gifs but one into a media source rather than an image source. One single 11 frame repeating animated gif was responsible for thousands of dropped frames over a 2 hour stream. Once I changed it to a media source my stream was perfect.
The reactive images in this now include gif, so I gave it a try. OBS normally takes up about 8-15% cpu in task manger with my two gif images in the overlay, with the reactive image it jumped to 26% and dropped frames every few seconds, which I think because it's treating the gif as an image source rather than a media source, much like the problem I had before.
This was with Envenc encoder, but I'm not sure it matters, because the problem was originally occurring regardless of the encoded, without even actively streaming or recording.
My computer is a windows 10, Intel i5 4670, with 24gb of ram and nvidia gtx1650 gpu if that helps any.