UI Draws every frame with no changes? FPS loss?

It seems my UI is eating a lot of my fps when nothing has changed or moved. Why is it drawn every frame? Is there not a way for me to make it only re-draw when something changes?.. Seems pretty stupid that with nothing changing or moving on my screen, deleting a simple UI nets me ~250 fps. While moving around it chews upwards of 500 fps. I’m using camera space and only have 12 panels (that don’t change or move) and 2 sliders.

Basically what I’m asking is if there is a way that I can draw my UI canvas to a separate canvas or something, and only redraw it when something actually changes.

Its a piece of geometry in the scene, it needs to be drawn every time else the transparencies/sorting would be wrong. Is the issue actually the drawing or is it the UI updating itself before drawing? Have you run the profiler to see the details?
Also could this be a fill-rate / shader issue? Optimizing Unity UI - Unity Learn

Perhaps, though I’m not quite sure how to apply a shader to a UI. Do I just apply it to a material and then set that to the images shown?.

Will look into fill-rate in the mean time.

Yes that’s what you do. For example try swapping all your UI elements so that they use the Sprites-Default material instead, this is a bit lighter than the UI shader however it does not support masking.