Go to the Store > Configuration > General > Web > Session Validation Settings > Use SID on Storefront and set its value to No
Here is the good answer about the SID:
The SID is a "session ID". Magento uses this to track a user's
activity within the same Magento installation. Normally, Magento
powers one website and one store from one installation (database).
Magento could power multiple websites with multiple stores from one
installation though. The SID allows users to stay logged in while
navigating across these websites/stores.
I think if you have the function enabled, the SID is sent when
accessing catalog URLs so Magento can update the session with the
user's location/state for the current website/store.
If you're not running a multi-website or multi-store environment, it's
safe to disable the SID on the frontend.