Loading a page involves finding a server, establishing a connection, requesting data, and downloading the response. A delay at any stage can make the page slower to appear.
Scanfully reports DNS lookup, TCP connection, TLS/SSL handshake, TTFB, and content download timings so you can investigate those stages separately.

What Happens When You Visit a Website?
DNS Lookup: Finding the Website’s Address
A DNS (Domain Name System) lookup resolves a name such as “example.com” to an IP address the browser can use to reach the server.
A slow DNS lookup delays the connection to that server.
TCP Connection: Starting the Conversation
TCP (Transmission Control Protocol) establishes a reliable connection for transferring data between the browser and server.
When establishing that connection takes longer, the browser waits longer before it can use it to request the page.
TLS/SSL Handshake: Securing the Connection
The TLS/SSL handshake establishes a secure connection between the browser and server before they exchange encrypted application data.
A slow handshake delays that encrypted exchange.
TTFB: Waiting for the First Reply
TTFB stands for Time To First Byte: the time from requesting a page until the first data in the response arrives.
A high TTFB means the browser spends longer waiting for that first data.
Downloading Content: Getting the Full Message
The browser downloads the response and resources needed to display the page.
Slow downloads delay access to the resources the page needs.
How Do These Elements Impact Your Experience?
Use the individual timings to find where a request is spending time. The next step depends on which stage is slow.
Choose Changes Based on the Slow Stage
How Can Website Performance Be Improved?
Optimize DNS Lookups
1. Use a Reliable DNS Provider: Compare DNS resolution times when assessing providers.
2. Reduce DNS Lookups: Minimize the number of different domains your page needs to request.
3. Implement DNS Prefetching: This lets the browser resolve names before it needs to request resources from those domains.
More detail can be found in our How To Improve DNS Lookup Time article.
Accelerate TCP Connections
1. Use Persistent Connections: Keep-alive lets a TCP connection serve multiple requests to the same server.
2. Reduce the Number of Server Requests: Minimize unnecessary requests and the connections they may require.
More details can be found in our How To Optimize TCP Connection Performance article.
Secure Connections Efficiently with TLS/SSL
1. Use TLS 1.3: TLS 1.3 makes the handshake process more efficient.
2. Implement OCSP Stapling: The server supplies certificate-status information, reducing the need for a separate client check.
Learn more about how to improve TLS/SSL Handshake Time.
Improve TTFB (Time To First Byte)
1. Optimize Server Processing: Use faster servers or improve their configuration to reduce request-processing time.
2. Use a Content Delivery Network (CDN): A CDN stores copies of content at locations around the world.
3. Enable Caching: Reuse stored responses or data instead of generating them again for each request.
Accelerate Download Content
1. Optimize File Sizes: Compress images, minify CSS and JavaScript, and consider efficient image formats such as AVIF or WebP.
2. Prioritize Loading of Critical Assets: Load resources needed for the visible content first.
3. Use Lazy Loading: Defer non-critical resources until they are needed.
4. Check What the Page Needs: Avoid adding heavy images that do not help explain the content.
General Best Practices
Also review these recurring sources of slowdowns:
Use a Content Delivery Network (CDN): A CDN can greatly improve your website’s load time by storing your content on servers across the globe. This way, users receive data from the server closest to them, reducing the travel time for data.
We recommend using Cloudflare for your CDN.
Optimize Images and Videos: Large images and videos can slow down your site. Compress them without losing quality to ensure they load faster. Tools like TinyPNG or WebP format for images can help.
Minify Code: Minification is the process of removing unnecessary characters from your code without changing its functionality. Use tools to minify HTML, CSS, and JavaScript to reduce file sizes.
Reduce Redirects: Each redirect creates additional HTTP requests, adding to load time. Keep them to a minimum.
Improve Server Response Time: Look for performance bottlenecks like slow database queries, slow routing, or a lack of adequate memory and address them.
Avoid Excessive DOM Elements: A complex Document Object Model (DOM) can slow down your page. Simplify your site’s structure where possible.
Use Scanfully’s site performance monitoring to compare timings before and after a change. Check for regressions as well as improvements.
Leave a Reply