Speed problems rarely have a single cause. These are the ones we find most often.
Oversized images. Photos uploaded straight from a camera or phone and served at full size to a screen that shows them a fraction as wide.
Too many plugins and scripts. Every chat widget, tracking tag, slider and page builder adds code the browser has to download and run before the page settles.
Underpowered hosting. Cheap shared hosting puts your site on a server with many others, so it slows down whenever they get busy.
No caching. Without caching, the server rebuilds every page from scratch for every visitor.
Bloated themes. Multipurpose themes ship styles and scripts for features you never use, and every page loads them anyway.