Wi-Fi speeds are subject to interference with signals from other local equipment and other nearby equipment and Wi-Fi networks, and signal degradation due to local structures including reflections.
Wi-Fi speeds are also effected by the Wi-Fi generation. Current Wi-Fi (Wi-Fi 6, -6E) can outrun gigabit Ethernet. Older Wi-Fi routers or installations with interference, not so much.
ISP-provided Wi-Fi routers tend to be chosen for bulk price and for ease of remote support, and less so or not for performance. Slower Wi-Fi connectivity can be considered beneficial to ISPs too, as it inherently throttles the load on the ISP network. It’s also routine for ISPs to only replace older Wi-Fi gear with newer generations when the existing and older and slower gear fails hardware tests or fails performance tests.
It’s also possible the Wi-Fi gear is malfunctioning. I’ve met some older Apple Wi-Fi gear for instance, that just dropped out for somewhere between fifteen and thirty seconds at random, then picked up again, and with no device errors reported. Network performance stank, unsurprisingly.
Run some network scans for local Wi-Fi activity, and determine which Wi-Fi generation the router has implemented, as a starting point. I use the Mac App Store Wi-Fi Explorer app, and have access to Wi-Fi gear that can show local traffic and conflicting network setups. There are some in-built tools in macOS for this, but the add-on traffic displays are vastly better.
Network signal readings for the Wi-Fi network can be helpful, too. For signal strength values (Mac calls this RSSI, in dBm), the larger the value shown, the better. For noise values (in dBm), the lower the value shown, the better. You can option-click on the Wi-Fi icon in the menu bar to get the values. If you want, screenshot and post that display, though obfuscate / scribble your MAC addresses before posting.
Related reading (particularly Measure Client RSSI section): macOS wireless roaming for enterprise customers - Apple Support