Move preload responsibility to the backend