This is coming up again and again. That's why I'm gonna explain it one more time and then pin this topic.
The Basics
The software you are using Voukoder with (i.e. Premiere, VEGAS Pro, ...) needs to render frames first before it hands them over to Voukoder so it can encode them (using CPU, NVENC, ...). The rendering process is mostly done on the CPU and depending on your system and the complexity of your project it takes its time - lets say it can render 13 frames per second.
That means Voukoder gets 13 frames per second which it should then encode with the fastest GPU available (lets assume an imaginary RTX 7090 TI which can do like 700 fps 8K with NVENC).
So you would like to get an export speed of 700 fps because that's what you've just bought this awesome GPU for, right? But how can the GPU do that when it just gets 13 fps from the rendering engine?
This is a so called "bottle-neck" and will be visible as low GPU utilization.
A Step Further
The above assumes the chosen rendering engine is using all CPU cores. But what if it is only using 4 cores (for whatever reason)? Your new AMD Ryzen 9950X with 256 cores is mostly ideling, just as your GPU. And still, Voukoder can't do anything about it, it just takes what it gets and tries to do its best.
In Depth Explanation
See this forum thread: https://www.voukoder.org/forum/thread/352
Edit:
By the way: Container formats create a multiplexed data stream of alternating video and audio packets, like:
VAVAVAVAVAVAVAVAV ...
So after one video frame we have to encode one (or more) audio frames to keep the muxer happy and the video encoder is idleing for that time span:
(Frame #0/x = video, Frame #1/x = audio)