1. Synchronous scripts block page rendering, so scripts should be loaded asynchronously. 2. Front-end dependencies like social media widgets can cause slowdowns if they fail to load. Blackholing domains in tests can show these slowdowns. 3. "Bootstrap scripts" from content delivery networks often have short cache times, increasing chances of failures. But they can be made self-updating while keeping long cache times.