Skip to content

Commit 31faed1

Browse files
[Speed] Updates to Speed docs (#25411)
* Updates to Speed docs * Apply suggestions from code review Co-authored-by: marciocloudflare <[email protected]> * Update src/content/docs/speed/observatory/index.mdx --------- Co-authored-by: marciocloudflare <[email protected]>
1 parent f58edae commit 31faed1

File tree

9 files changed

+186
-60
lines changed

9 files changed

+186
-60
lines changed

src/content/docs/speed/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Use Observatory to conduct tests with both synthetic and real user data to ident
3131

3232
</Feature>
3333

34-
<Feature header="Optimization" href="/speed/optimization/">
34+
<Feature header="Settings" href="/speed/optimization/">
3535

3636
Get recommendations of Cloudflare products and settings to improve your website’s performance.
3737

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
---
2+
pcx_content_type: reference
3+
title: Observatory dashboard
4+
sidebar:
5+
order: 2
6+
---
7+
8+
The Observatory overview dashboard provides a single view of your zone's performance over the past seven days. It combines synthetic monitoring, real user data, and Cloudflare's analysis to help you quickly identify performance bottlenecks and receive actionable recommendations.
9+
10+
## Suggestions
11+
12+
The **Suggestions** panel highlights tailored optimizations you can make to improve performance. Examples include:
13+
14+
- Reduce Largest Contentful Paint (LCP) with Polish.
15+
- Reduce Time to First Byte (TTFB) with Argo Smart Routing.
16+
17+
These recommendations will vary based on your site's observed performance.
18+
19+
Selecting a suggestion expands it to show more detail:
20+
21+
- **Why you're seeing this**: Explains the performance issue detected.
22+
- **What you can do**: Lists recommended actions you can take.
23+
24+
## Core Web Vitals
25+
26+
The dashboard integrates **Core Web Vitals**, showing values at the 75th percentile (p75). These metrics reflect real user experiences:
27+
28+
- **Largest Contentful Paint (LCP)**: How quickly the main content of a page becomes visible.
29+
- **Interaction to Next Paint (INP)**: How responsive the site is to user interactions.
30+
- **Cumulative Layout Shift (CLS)**: How visually stable the page layout is.
31+
32+
If insufficient real user data is available, metrics may show as **No data**.
33+
34+
## Network Performance
35+
36+
The **Network Performance** section shows timing data that can help pinpoint where latency occurs.
37+
38+
- **Time to First Byte (TTFB)**: Measures the time between the initial request and the first byte of the response.
39+
- **Time to Last Byte (TTLB) Breakdown**: Provides a breakdown of response phases:
40+
41+
- DNS resolution time
42+
- TCP connection time
43+
- Request processing time at the server
44+
- Response transfer time
45+
46+
This breakdown helps identify whether delays are caused by DNS, connection setup, server processing, or response delivery.
47+
48+
## HTTP Traffic
49+
50+
The **HTTP Traffic** section shows how traffic is handled between Cloudflare and your origin server:
51+
52+
- **Served by**: Percentage of requests served from Cloudflare versus from your origin.
53+
- **4xx errors**: Client errors, broken down by Cloudflare edge versus origin.
54+
- **5xx errors**: Server errors, broken down by Cloudflare edge versus origin.
55+
56+
This view helps distinguish between Cloudflare-side issues and origin-side issues.
57+
58+
## Synthetic Monitoring
59+
60+
The **Synthetic Monitoring** table shows automated test results for your site. Each row includes:
61+
62+
- **URL tested**
63+
- **Last test run**
64+
- **Repeats** (if scheduled multiple times)
65+
- **Score** (Pass/Fail)
66+
67+
Synthetic monitoring allows you to proactively test site availability and performance under consistent conditions, complementing real user monitoring (RUM).
68+
69+
## Using the dashboard
70+
71+
Use the Speed Overview dashboard to:
72+
73+
- Review **Suggestions** for actionable optimizations.
74+
- Track **Core Web Vitals** to ensure a good user experience.
75+
- Analyze **Network Performance** to identify latency bottlenecks.
76+
- Diagnose errors with **HTTP Traffic** insights.
77+
- Confirm site reliability using **Synthetic Monitoring** results.

src/content/docs/speed/observatory/faq.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,14 @@ Check your WAF custom rules to make sure that you are not blocking traffic from
3131

3232
There are several reasons why users might not see any Real User Monitoring (RUM) data on the map in Observatory:
3333

34-
- Limited Traffic to Specific URL Paths: When users see the map in Observatory, they are filtering data by a specific URL path. If there is no traffic to that particular path, there will be no corresponding RUM data available to display on the map.
35-
3634
- Time Required for RUM Data Population: Populating the RUM database takes some time. It means that newly enabled RUM might not have immediate data available, and users may need to wait for some time before RUM data starts appearing on the map.
3735

3836
- Progressive Sampling: RUM data is progressively sampled, which means that not all requests are captured. Some requests may pass through the sampling period, resulting in incomplete or missing data points on the map.
3937

4038
- Adblockers Impact on RUM Data: RUM data collection relies on third-party JavaScript executing on the real-user browser. However, adblockers or similar browser extensions can block this script, preventing the collection of RUM data, and thereby affecting the completeness of the analytics presented on the map.
4139

40+
- The RUM feature needs to be enabled and configured in your environment. If it has not been turned on, or if configuration is incomplete, RUM data may not appear.
41+
4242
## What are the potential reasons for discrepancies between RUM analytics and traffic analytics in Observatory?
4343

4444
Differences between Real User Monitoring (RUM) analytics and traffic analytics in Observatory can occur due to the following reasons:

src/content/docs/speed/observatory/index.mdx

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,20 @@ Observatory uses synthetic tests and real user data from browsers to assess the
1717

1818
As its name suggests, synthetic testing uses servers to simulate the conditions that a user might encounter when accessing your website. This has the advantage of being consistent, as the conditions are easily replicated each time the test is run. It also allows you to have an analysis of how a code change might affect the overall performance of your website, as well as test any URL you want. However, due to its synthetic nature, it cannot replicate the breadth and diversity of different conditions that real users will experience.
1919

20+
Observatory provides two different types of synthetic tests:
21+
22+
### Browser test
23+
24+
The browser test loads the requested page in a headless browser and runs Google Lighthouse on it. This reports key performance metrics and provides light suggestions for improvement.
25+
26+
### Network test
27+
28+
The network test is focused on giving a detailed breakdown of the network and back-end performance of an endpoint. For more information on metrics collected, refer to [Network monitoring metrics](/speed/observatory/test-results/#network-monitoring-metrics).
29+
30+
### Network comparison test
31+
32+
You can also compare network tests in Observatory by selecting any two completed tests. The results for each test are displayed side by side as histograms, allowing you to easily visualize and compare the full distribution of data points across both tests.
33+
2034
## Real user monitoring (RUM)
2135

2236
Real user monitoring (also known as RUM), on the other hand, captures real metrics from real users accessing a website. This provides information that synthetic tests cannot capture, as users might access your website from different parts of the world, with different network conditions, ISPs, browsers and computer hardware. However, RUM data is only applied to your own website. Real user data also includes two user interaction metrics that synthetic tests do not offer - [First Input Delay (FID)](https://web.dev/fid/) and [Interaction to Next Paint (INP)](https://web.dev/inp/).

src/content/docs/speed/observatory/rum-beacon.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ The data collected from the browser is summarized in the table below:
3636
| `FCP` | 209 | First Contentful Paint metric. | [web-vitals module](https://www.npmjs.com/package/web-vitals) [^1] |
3737
| `LCP` | 209 | Largest Contentful Paint metric. | [web-vitals module](https://www.npmjs.com/package/web-vitals) [^1] |
3838
| `CLS` | 0.001 | Cumulative Layout Shift metric. | [web-vitals module](https://www.npmjs.com/package/web-vitals) [^1] |
39-
| `FID` | 1.12 | First Input Delay metric. | [web-vitals module](https://www.npmjs.com/package/web-vitals) [^1] |
39+
|
4040
| `TTFB` | 0.03 | Time to First Byte metric. | [web-vitals module](https://www.npmjs.com/package/web-vitals) [^1] |
4141
| `INP` | 1.23 | Interaction to Next Paint metric. | [web-vitals module](https://www.npmjs.com/package/web-vitals) [^1] |
4242
| `landingPath`| https://cfrumtest.com/ | The landing page URL. | [performance.getEntriesByType("navigation")](https://developer.mozilla.org/en-US/docs/Web/API/Performance/getEntriesByType) |

src/content/docs/speed/observatory/run-speed-test.mdx

Lines changed: 69 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,12 @@ import { Render } from "~/components";
1111
## Run Synthetic test
1212

1313
1. Log in to the [Cloudflare dashboard](https://dash.cloudflare.com/login), and select your account and domain.
14-
15-
2. Go to **Speed** > **Observatory**.
16-
14+
2. Go to **Speed** > **Synthetic Monitoring**.
1715
3. Enter the URL you want to test. The URL must belong to the zone you are testing from.
18-
19-
4. Select the **Region** the automated browser will use.
20-
21-
5. Then, you can select, depending on your plan, **Run test once**, **Run daily test** or **Run weekly test**. Refer to the [Quotas](/speed/observatory/run-speed-test/#quotas) section for information on the test frequency available for your plan.
22-
23-
6. After the test finishes running, you will get a Lighthouse score and you will have access to the list of the tests run. The test result page will give you details regarding the performance of your website, both for the desktop and mobile versions. Refer to [Understand test results](/speed/observatory/test-results/) for more information.
16+
4. Select the test type you want to use: **Browser** or **Network tests**.
17+
5. Select the **Region** the automated browser will use.
18+
6. Depending on your plan you can select to run the test **once**, **daily** or **weekly**. Refer to the [Quotas](/speed/observatory/run-speed-test/#quotas) section for information on the test frequency available for your plan. Note that these limits may change over time.
19+
7. After the test finishes running, you will get a Lighthouse score and you will have access to the list of the tests run. The test result page will give you details regarding the performance of your website, both for the desktop and mobile versions. Refer to [Understand test results](/speed/observatory/test-results/) for more information.
2420

2521
<Render file="user-agents" product="speed" />
2622

@@ -36,8 +32,7 @@ In the Tested URLs table, in the last column, you can select the three dots > **
3632

3733
Once a test has been run, you can enable RUM data in the test results page:
3834

39-
1. In **Real user measurements**, select **Enable Rum for free**. You can always manage your website preferences in the **Web Analytics** section in the dashboard which also uses RUM data.
40-
35+
1. Go to **Observatory** and select **Enable Rum**. You can choose to enable globally or enable everywhere except the EU.
4136
2. Once RUM data is running on your site, you can access **Real user measurements** on your test results page. Usually it takes less than five minutes to see the data coming in, but it will depend on traffic.
4237

4338
Refer to [Understand test results](/speed/observatory/test-results/) for more information about the results provided by real user data.
@@ -50,47 +45,67 @@ RUM uses a lightweight JavaScript beacon to collect the information Observatory
5045

5146
Quota limits for the number of tests you can run per month are currently the following:
5247

53-
<table>
54-
<tr>
55-
<th>Plan</th>
56-
<th>Number of one-off tests</th>
57-
<th>Number of recurring tests</th>
58-
<th>Frequency of recurring tests</th>
59-
<th>Regions</th>
60-
</tr>
61-
<tr>
62-
<td>Free</td>
63-
<td>30</td>
64-
<td>1</td>
65-
<td>Weekly</td>
66-
<td>Iowa, USA</td>
67-
</tr>
68-
<tr>
69-
<td>Pro</td>
70-
<td>50</td>
71-
<td>5</td>
72-
<td>Daily</td>
73-
<td rowspan="3">
74-
Everything in Free and <br /> - South Carolina, USA <br /> - North
75-
Virginia, USA <br /> - Dallas, USA <br /> - Oregon, USA <br /> - Hamina,
76-
Finland <br /> - Madrid, Spain <br /> - St. Ghislain, Belgium <br /> -
77-
Eemshaven, Netherlands <br /> - Milan, Italy <br /> - Paris, France <br />{" "}
78-
- Changhua County, Taiwan <br /> - Tokyo, Japan <br /> - Osaka, Japan{" "}
79-
<br /> - Tel Aviv, Israel <br /> - London, England <br /> - Jurong West,
80-
Singapore <br /> - Sydney, Australia <br /> - Frankfurt, Germany <br /> -
81-
Mumbai, India <br /> - São Paulo, Brazil
82-
</td>
83-
</tr>
84-
<tr>
85-
<td>Business</td>
86-
<td>100</td>
87-
<td>10</td>
88-
<td>Daily</td>
89-
</tr>
90-
<tr>
91-
<td>Enterprise</td>
92-
<td>150</td>
93-
<td>15</td>
94-
<td>Daily</td>
95-
</tr>
48+
<table border="1" cellpadding="8" cellspacing="0" style="border-collapse: collapse; width:100%; text-align:center;">
49+
<thead style="background-color:#f5f5f5;">
50+
<tr>
51+
<th>Plan</th>
52+
<th>One-off tests</th>
53+
<th>Recurring tests</th>
54+
<th>Frequency of recurring tests</th>
55+
<th>Available Regions</th>
56+
</tr>
57+
</thead>
58+
<tbody>
59+
<tr>
60+
<td>Pro</td>
61+
<td>50</td>
62+
<td>5</td>
63+
<td>Daily</td>
64+
<td rowspan="3" style="text-align:left;">
65+
<ul>
66+
<li>Iowa, USA</li>
67+
<li>South Carolina, USA</li>
68+
<li>North Virginia, USA</li>
69+
<li>Dallas, USA</li>
70+
<li>Oregon, USA</li>
71+
</ul>
72+
<ul>
73+
<li>Hamina, Finland</li>
74+
<li>Madrid, Spain</li>
75+
<li>St. Ghislain, Belgium</li>
76+
<li>Eemshaven, Netherlands</li>
77+
<li>Milan, Italy</li>
78+
<li>Paris, France</li>
79+
<li>London, England</li>
80+
<li>Frankfurt, Germany</li>
81+
</ul>
82+
<ul>
83+
<li>Changhua County, Taiwan</li>
84+
<li>Tokyo, Japan</li>
85+
<li>Osaka, Japan</li>
86+
<li>Jurong West, Singapore</li>
87+
<li>Sydney, Australia</li>
88+
<li>Mumbai, India</li>
89+
</ul>
90+
<ul>
91+
<li>Tel Aviv, Israel</li>
92+
</ul>
93+
<ul>
94+
<li>São Paulo, Brazil</li>
95+
</ul>
96+
</td>
97+
</tr>
98+
<tr>
99+
<td>Business</td>
100+
<td>100</td>
101+
<td>10</td>
102+
<td>Daily</td>
103+
</tr>
104+
<tr>
105+
<td>Enterprise</td>
106+
<td>150</td>
107+
<td>15</td>
108+
<td>Daily</td>
109+
</tr>
110+
</tbody>
96111
</table>

src/content/docs/speed/observatory/test-results.mdx

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,16 @@ These metrics are collected as part of the real user data, as they require real
3636
| Metric | Definition |
3737
| ------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
3838
| Interaction to Next Paint ([INP](https://web.dev/inp/)) | Aims to represent a page's overall responsiveness by measuring all click, tap, and keyboard interactions made with a page. |
39-
| First input delay ([FID](https://web.dev/fid/)) | Measures the time from when a user first interacts with a page to the time when the browser is actually able to begin processing event handlers in response to that interaction. |
39+
40+
Refer to [Data and metrics](/web-analytics/data-metrics/) for more information about the metrics you can find in the Real User Monitoring dashboard. You can find details about [Core Web Vitals](/web-analytics/data-metrics/core-web-vitals/), the debug view and the data collected.
41+
42+
## Network monitoring metrics
43+
44+
| Metric | Definition |
45+
| ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
46+
| Wait Time | Measures the time spent waiting for the server to send back the first byte of a response after a request is made. |
47+
| Load Time | Measures the total time it takes for a web page to fully load in a user’s browser from the network. |
48+
| Time to First Byte ([TTFB](https://web.dev/articles/ttfb)) | Measures the duration between initiating a web page request and receiving the first byte from the server. |
49+
| Server Response Time | Measures the time it takes for a server to respond to a request from a user's browser. |
50+
| Connect Time | Measures the time taken to establish a connection between the user's browser and the web server. |
51+
| TLS Time | Measures the time required to complete the TLS/SSL handshake between the user's browser and the web server. |

src/content/docs/speed/optimization/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
pcx_content_type: navigation
3-
title: Optimization
3+
title: Settings
44
sidebar:
55
order: 4
66
group:
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
pcx_content_type: reference
3+
title: Smart Shield
4+
sidebar:
5+
order: 4
6+
external_link: /smart-shield/
7+
8+
---

0 commit comments

Comments
 (0)