Deep-dive into Cloudflare's Speed Test
Tags: performance, testing, productivity
Published: 2020-06-08 22:31:55

This blog post originally appeared on my [blog](https://qainsights.com/deep-dive-into-cloudflares-speed-test/).

<!-- wp:paragraph -->
<p>There are lot of web apps available to test your home internet connection. Your ISP will have their own tool, I use fast.com from Netflix and Netgear Genie to make sure I am connected to Internet or not. Couple weeks ago Cloudflare has released its home grown solution to test the home internet connection called Speed Test. You can access it from <a href="https://speed.cloudflare.com/">https://speed.cloudflare.com/</a> This blog post will deep-dive into Cloudflare's Speed Test.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>Why another speed test app?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>As I mentioned earlier, there are hundreds of web apps and mobile apps available to test the internet connection. But why Cloudflare has to (re)create again. I believe Cloudflare is the new Google. Here is the excerpt from Cloudflare:</p>
<!-- /wp:paragraph -->

<!-- wp:quote -->
<blockquote class="wp-block-quote"><p>Although there are a slew of speed testing tools out there, none of them give you precise insights into how they came to those measurements and how they map to real-world performance. With <a rel="noreferrer noopener" href="https://speed.cloudflare.com" target="_blank">speed.cloudflare.com</a>, we give you insights into what we’re measuring and how exactly we calculate the scores for your network connection.</p></blockquote>
<!-- /wp:quote -->

<!-- wp:paragraph -->
<p>Cloudflare's speed test doesn't have a fancy domain name like fast.com. It is hosted under sub-domain of cloudflare.com.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>How to get started?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Unlike other web or mobile app, there is no <code>start</code> button in Speed Test (let's call Speed Test). E.g. Speedtest.net has a <code>GO</code> button, if a user want to start the test, they can simply click on that button.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>After visiting https://speed.cloudflare.com/, your test will start immediately. After all the tests are completed, you can see the results instantly.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"align":"center","id":7376,"sizeSlug":"large"} -->
<div class="wp-block-image"><figure class="aligncenter size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-1024x522.png" alt="Deep-dive into Cloudflare's Speed Test" class="wp-image-7376"/><figcaption>Deep-dive into Cloudflare's Speed Test</figcaption></figure></div>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p>Speed Test displays key metrics such as Download speed, Latency, and Jitter in the main dashboard. Detailed measurements will get displayed just beneath the main dashboard. Server Location will get displayed in the right pane as shown above.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>Privacy Policy </h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>As mentioned in the Cloudflare Privacy Policy, they do not sell your data. Performance data is collected, anonymized and is governed by the terms of Cloudflare. For more details you can refer this link <a href="https://www.cloudflare.com/privacypolicy/">https://www.cloudflare.com/privacypolicy/</a></p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>Let's talk performance</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>After you launch the Speed Test, it will connect you to the nearest data center. You can see the map in the right pane as shown below. My closest data center is Chicago as shown below.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"align":"center","id":7378,"sizeSlug":"large"} -->
<div class="wp-block-image"><figure class="aligncenter size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-1.png" alt="Server Location" class="wp-image-7378"/><figcaption>Server Location</figcaption></figure></div>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p>If you zoom in to the Cloudflare data center, it will not reveal the exact location of data center, instead it will display the airport location. It uses Anycast network (from Cloudflare) to detect the nearest data center.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"align":"center","id":7379,"sizeSlug":"large"} -->
<div class="wp-block-image"><figure class="aligncenter size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-2.png" alt="Server Location using IATA code" class="wp-image-7379"/><figcaption>Server Location using IATA code</figcaption></figure></div>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p>After connecting to the nearest data center, Latency and Jitter test will kick off. </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Latency will be measured using 20 iterations and the median will be considered. Lower the number better the performance. Latency is nothing but time to first byte from browser perspective.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"align":"center","id":7380,"sizeSlug":"large"} -->
<div class="wp-block-image"><figure class="aligncenter size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-3.png" alt="Measurements and Chart representation" class="wp-image-7380"/><figcaption>Measurements and Chart representation</figcaption></figure></div>
<!-- /wp:image -->

<!-- wp:list {"ordered":true} -->
<ol><li>Each dot represents the individual measurement</li><li>Rectangle represents the measurements from 25th percentile to 75th percentile</li><li>Solid line inside the rectangle represents the median</li><li>Dotted line represents average.</li></ol>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Here is the zoomed in image.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":7381,"sizeSlug":"large"} -->
<figure class="wp-block-image size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-4-1024x299.png" alt="Latency Measurement Chart" class="wp-image-7381"/><figcaption>Latency Measurement Chart</figcaption></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p>Here is the definition of Jitter. Lower the number is better.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":7383,"sizeSlug":"large"} -->
<figure class="wp-block-image size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-5-1024x754.png" alt="Jitter" class="wp-image-7383"/><figcaption>Jitter</figcaption></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p>After Latency and Jitter measurement, the app will start downloading small files starting from 10kB and it reaches the threshold based on the performance. </p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>Important Note:</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>As mentioned above, the app will first connect to the data center and runs latency and jitter tests and then it will kick off the download tests. But this will cause <a href="https://www.bufferbloat.net/projects/bloat/wiki/Introduction/">Bufferbloat</a>. This issue has been raised in Cloudflare GitHub repository by Toke Høiland-Jørgensen <a href="https://github.com/tohojo">https://github.com/tohojo</a>. Here is the <a href="https://github.com/cloudflare/worker-speedtest-template/issues/13">issue id</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The suggestion from Toke is to continue the latency tests during the download tests. This suggestion will improve the metrics and performance.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>As you see my network performance, it was able to reach till 25 MB download test. More the file size, lesser the number of iterations. If your network performance is poor, you may not be able to reach for 10MB download test.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":7384,"sizeSlug":"large"} -->
<figure class="wp-block-image size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-6-1024x571.png" alt="Download Measurements" class="wp-image-7384"/><figcaption>Download Measurements</figcaption></figure>
<!-- /wp:image -->

<!-- wp:list -->
<ul><li>10kB has 10 iterations</li><li>100kB has 10 iterations</li><li>1MB has 8 iterations</li><li>10MB has 5 iterations</li><li>25MB has 3 iterations</li></ul>
<!-- /wp:list -->

<!-- wp:heading -->
<h2>Interesting Facts</h2>
<!-- /wp:heading -->

<!-- wp:list -->
<ul><li>Max file size that you can reach is 100MB :)</li></ul>
<!-- /wp:list -->

<!-- wp:list -->
<ul><li>If you open the file which Speed Test is downloading is nothing but string of zeroes and some random string at the end.</li></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>If you click on the chart, you can see the detailed metrics.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":7385,"sizeSlug":"large"} -->
<figure class="wp-block-image size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-7-1024x548.png" alt="Raw Data" class="wp-image-7385"/><figcaption>Raw Data</figcaption></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p>For the final download internet speed, it will calculate the overall 90th percentile. You can also download the metrics by clicking on Download button as shown below.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":7386,"sizeSlug":"large"} -->
<figure class="wp-block-image size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-8-1024x482.png" alt="Download Results" class="wp-image-7386"/><figcaption>Download Results</figcaption></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p>Here is my raw data:</p>
<!-- /wp:paragraph -->

<!-- wp:table -->
<figure class="wp-block-table"><table><tbody><tr><td>time</td><td>Formatted Timestamp</td><td>direction</td><td>bytes</td><td>latency</td><td>bps</td><td>Formatted Mbps</td><td>ttfb</td><td>duration</td><td>responseSize</td></tr><tr><td>1591643367414</td><td>8:09:27 PM</td><td>download</td><td>0</td><td>30.13502098</td><td>5492134.678</td><td>5.492134678</td><td>152.135</td><td>0.890000025</td><td>1611</td></tr><tr><td>1591643368111</td><td>8:09:28 PM</td><td>download</td><td>100000</td><td>31.51511296</td><td>174902506.4</td><td>174.9025064</td><td>49.51499996</td><td>4.585000046</td><td>101241</td></tr><tr><td>1591643368748</td><td>8:09:29 PM</td><td>download</td><td>0</td><td>27.91007098</td><td>5489820.271</td><td>5.489820271</td><td>51.90999998</td><td>0.835000013</td><td>1573</td></tr><tr><td>1591643370080</td><td>8:09:30 PM</td><td>download</td><td>0</td><td>33.08994298</td><td>1062008.745</td><td>1.062008745</td><td>98.08999998</td><td>1.144999987</td><td>1152</td></tr><tr><td>1591643370386</td><td>8:09:30 PM</td><td>download</td><td>0</td><td>29.075071</td><td>1460869.656</td><td>1.460869656</td><td>53.075</td><td>0.689999957</td><td>1126</td></tr><tr><td>1591643370590</td><td>8:09:31 PM</td><td>download</td><td>0</td><td>32.26987401</td><td>1231515.158</td><td>1.231515158</td><td>50.27000001</td><td>0.824999996</td><td>1127</td></tr><tr><td>1591643370919</td><td>8:09:31 PM</td><td>download</td><td>0</td><td>30.24003999</td><td>1651612.887</td><td>1.651612887</td><td>47.23999999</td><td>0.620000006</td><td>1128</td></tr><tr><td>1591643371292</td><td>8:09:31 PM</td><td>download</td><td>0</td><td>31.28508002</td><td>1296202.594</td><td>1.296202594</td><td>65.28500002</td><td>0.789999962</td><td>1128</td></tr><tr><td>1591643371527</td><td>8:09:32 PM</td><td>download</td><td>0</td><td>29.82011304</td><td>5209091.213</td><td>5.209091213</td><td>47.82000004</td><td>0.879999949</td><td>1573</td></tr><tr><td>1591643371898</td><td>8:09:32 PM</td><td>download</td><td>0</td><td>29.37009201</td><td>1228571.438</td><td>1.228571438</td><td>50.37000001</td><td>0.839999993</td><td>1129</td></tr><tr><td>1591643372098</td><td>8:09:32 PM</td><td>download</td><td>0</td><td>48.58994699</td><td>1385234.85</td><td>1.38523485</td><td>67.58999999</td><td>0.745000027</td><td>1129</td></tr><tr><td>1591643372255</td><td>8:09:32 PM</td><td>download</td><td>0</td><td>26.69980204</td><td>1664516.112</td><td>1.664516112</td><td>43.70000004</td><td>0.620000006</td><td>1129</td></tr><tr><td>1591643372376</td><td>8:09:32 PM</td><td>download</td><td>0</td><td>28.50486301</td><td>905263.1519</td><td>0.905263152</td><td>59.50500001</td><td>1.140000008</td><td>1129</td></tr><tr><td>1591643372487</td><td>8:09:32 PM</td><td>download</td><td>0</td><td>31.49487398</td><td>5942856.816</td><td>5.942856816</td><td>49.49499998</td><td>0.770000042</td><td>1572</td></tr><tr><td>1591643372584</td><td>8:09:33 PM</td><td>download</td><td>0</td><td>28.88513399</td><td>1563636.455</td><td>1.563636455</td><td>43.88499999</td><td>0.659999961</td><td>1129</td></tr><tr><td>1591643372667</td><td>8:09:33 PM</td><td>download</td><td>0</td><td>32.67480202</td><td>1155555.538</td><td>1.155555538</td><td>49.67500002</td><td>0.720000011</td><td>1104</td></tr><tr><td>1591643372750</td><td>8:09:33 PM</td><td>download</td><td>0</td><td>29.80004001</td><td>1011764.739</td><td>1.011764739</td><td>46.80000001</td><td>1.019999967</td><td>1129</td></tr><tr><td>1591643372870</td><td>8:09:33 PM</td><td>download</td><td>0</td><td>29.14511296</td><td>1885271.254</td><td>1.885271254</td><td>47.14499996</td><td>0.645000022</td><td>1152</td></tr><tr><td>1591643373006</td><td>8:09:33 PM</td><td>download</td><td>0</td><td>56.45492601</td><td>443290.0412</td><td>0.443290041</td><td>78.45500001</td><td>2.310000011</td><td>1128</td></tr><tr><td>1591643373102</td><td>8:09:33 PM</td><td>download</td><td>0</td><td>28.10509204</td><td>6366667.085</td><td>6.366667085</td><td>49.10500004</td><td>0.719999953</td><td>1573</td></tr><tr><td>1591643373174</td><td>8:09:33 PM</td><td>download</td><td>0</td><td>27.77011297</td><td>1220740.709</td><td>1.220740709</td><td>45.76999997</td><td>0.675000018</td><td>1103</td></tr><tr><td>1591643373272</td><td>8:09:33 PM</td><td>download</td><td>10000</td><td>30.41511297</td><td>102460756.9</td><td>102.4607569</td><td>48.41499997</td><td>0.79000002</td><td>11118</td></tr><tr><td>1591643373682</td><td>8:09:34 PM</td><td>download</td><td>10000</td><td>39.750206</td><td>66472129.26</td><td>66.47212926</td><td>55.75</td><td>1.220000035</td><td>11137</td></tr><tr><td>1591643373853</td><td>8:09:34 PM</td><td>download</td><td>10000</td><td>41.03020603</td><td>105756870.2</td><td>105.7568702</td><td>57.03000003</td><td>0.764999946</td><td>11113</td></tr><tr><td>1591643373969</td><td>8:09:34 PM</td><td>download</td><td>10000</td><td>33.92511102</td><td>111856553.1</td><td>111.8565531</td><td>74.92500002</td><td>0.724999991</td><td>11137</td></tr><tr><td>1591643374053</td><td>8:09:34 PM</td><td>download</td><td>10000</td><td>28.50004001</td><td>82552194.72</td><td>82.55219472</td><td>45.50000001</td><td>1.025000005</td><td>11577</td></tr><tr><td>1591643374144</td><td>8:09:34 PM</td><td>download</td><td>10000</td><td>28.56506101</td><td>116684892.9</td><td>116.6848929</td><td>42.56500001</td><td>0.694999995</td><td>11137</td></tr><tr><td>1591643374277</td><td>8:09:34 PM</td><td>download</td><td>10000</td><td>38.88990298</td><td>102713921.4</td><td>102.7139214</td><td>86.88999998</td><td>0.79000002</td><td>11143</td></tr><tr><td>1591643374407</td><td>8:09:34 PM</td><td>download</td><td>10000</td><td>38.11016402</td><td>82759187.61</td><td>82.75918761</td><td>60.11000002</td><td>0.979999953</td><td>11138</td></tr><tr><td>1591643374531</td><td>8:09:35 PM</td><td>download</td><td>10000</td><td>32.61020398</td><td>111090406.6</td><td>111.0904066</td><td>71.60999998</td><td>0.730000029</td><td>11137</td></tr><tr><td>1591643374620</td><td>8:09:35 PM</td><td>download</td><td>10000</td><td>31.30987403</td><td>114208451.8</td><td>114.2084518</td><td>49.31000003</td><td>0.709999993</td><td>11136</td></tr><tr><td>1591643374731</td><td>8:09:35 PM</td><td>download</td><td>100000</td><td>30.39518498</td><td>165389732.9</td><td>165.3897329</td><td>49.39499998</td><td>4.870000004</td><td>101681</td></tr><tr><td>1591643375035</td><td>8:09:35 PM</td><td>download</td><td>100000</td><td>51.87004002</td><td>138888312.4</td><td>138.8883124</td><td>68.87000002</td><td>5.774999969</td><td>101260</td></tr><tr><td>1591643375157</td><td>8:09:35 PM</td><td>download</td><td>100000</td><td>40.05478101</td><td>98209430.42</td><td>98.20943042</td><td>60.05500001</td><td>8.165000007</td><td>101235</td></tr><tr><td>1591643375320</td><td>8:09:35 PM</td><td>download</td><td>100000</td><td>30.74004001</td><td>113958208.7</td><td>113.9582087</td><td>47.74000001</td><td>7.035000017</td><td>101212</td></tr><tr><td>1591643375436</td><td>8:09:35 PM</td><td>download</td><td>100000</td><td>29.59521598</td><td>101120806.8</td><td>101.1208068</td><td>55.59499998</td><td>7.930000022</td><td>101236</td></tr><tr><td>1591643375522</td><td>8:09:36 PM</td><td>download</td><td>100000</td><td>32.359998</td><td>194393210.4</td><td>194.3932104</td><td>55.36</td><td>4.125000036</td><td>101234</td></tr><tr><td>1591643375644</td><td>8:09:36 PM</td><td>download</td><td>100000</td><td>34.385278</td><td>68490476.06</td><td>68.49047606</td><td>51.385</td><td>11.76000002</td><td>101681</td></tr><tr><td>1591643375757</td><td>8:09:36 PM</td><td>download</td><td>100000</td><td>60.48020599</td><td>149920000.2</td><td>149.9200002</td><td>76.47999999</td><td>5.349999992</td><td>101259</td></tr><tr><td>1591643375855</td><td>8:09:36 PM</td><td>download</td><td>100000</td><td>29.11989504</td><td>134430847.5</td><td>134.4308475</td><td>44.12000004</td><td>5.96499996</td><td>101235</td></tr><tr><td>1591643376033</td><td>8:09:36 PM</td><td>download</td><td>1000000</td><td>51.000061</td><td>103707593.7</td><td>103.7075937</td><td>65</td><td>77.23499998</td><td>1002232</td></tr><tr><td>1591643376253</td><td>8:09:36 PM</td><td>download</td><td>1000000</td><td>37.56491398</td><td>82013085.54</td><td>82.01308554</td><td>72.56499998</td><td>97.66500001</td><td>1002226</td></tr><tr><td>1591643376434</td><td>8:09:36 PM</td><td>download</td><td>1000000</td><td>34.27996802</td><td>97937372.39</td><td>97.93737239</td><td>50.28000002</td><td>81.78499999</td><td>1002226</td></tr><tr><td>1591643376640</td><td>8:09:37 PM</td><td>download</td><td>1000000</td><td>33.57990501</td><td>69885387.87</td><td>69.88538787</td><td>58.58000001</td><td>114.665</td><td>1002676</td></tr><tr><td>1591643376846</td><td>8:09:37 PM</td><td>download</td><td>1000000</td><td>36.30009199</td><td>93192321.14</td><td>93.19232114</td><td>57.29999999</td><td>85.94999998</td><td>1002235</td></tr><tr><td>1591643377023</td><td>8:09:37 PM</td><td>download</td><td>1000000</td><td>29.92496798</td><td>102189436.1</td><td>102.1894361</td><td>45.92499998</td><td>78.38000002</td><td>1002201</td></tr><tr><td>1591643377213</td><td>8:09:37 PM</td><td>download</td><td>1000000</td><td>38.399832</td><td>114295890.4</td><td>114.2958904</td><td>62.4</td><td>70.08000003</td><td>1002232</td></tr><tr><td>1591643377378</td><td>8:09:37 PM</td><td>download</td><td>1000000</td><td>34.02996798</td><td>126017621.1</td><td>126.0176211</td><td>50.02999998</td><td>63.56000004</td><td>1002210</td></tr><tr><td>1591643378017</td><td>8:09:38 PM</td><td>download</td><td>10000000</td><td>36.27003796</td><td>155131678.5</td><td>155.1316785</td><td>76.26999996</td><td>516.265</td><td>10012132</td></tr><tr><td>1591643378707</td><td>8:09:39 PM</td><td>download</td><td>10000000</td><td>39.07500797</td><td>138248324</td><td>138.248324</td><td>72.07499997</td><td>579.34</td><td>10012598</td></tr><tr><td>1591643379435</td><td>8:09:39 PM</td><td>download</td><td>10000000</td><td>33.78005901</td><td>132977885.5</td><td>132.9778855</td><td>70.78000001</td><td>602.275</td><td>10012157</td></tr><tr><td>1591643380149</td><td>8:09:40 PM</td><td>download</td><td>10000000</td><td>32.380059</td><td>136674065</td><td>136.674065</td><td>69.38</td><td>585.985</td><td>10012119</td></tr><tr><td>1591643380826</td><td>8:09:41 PM</td><td>download</td><td>10000000</td><td>54.29975799</td><td>153141530.7</td><td>153.1415307</td><td>100.3</td><td>522.975</td><td>10012149</td></tr><tr><td>1591643382446</td><td>8:09:42 PM</td><td>download</td><td>25000000</td><td>29.70008799</td><td>140018808.9</td><td>140.0188089</td><td>96.69999999</td><td>1429.96</td><td>25028662</td></tr><tr><td>1591643383906</td><td>8:09:44 PM</td><td>download</td><td>25000000</td><td>39.27496201</td><td>162604349.7</td><td>162.6043497</td><td>124.275</td><td>1231.34</td><td>25028655</td></tr><tr><td>1591643385432</td><td>8:09:45 PM</td><td>download</td><td>25000000</td><td>29.27995203</td><td>160793569.1</td><td>160.7935691</td><td>104.28</td><td>1245.23</td><td>25029122</td></tr></tbody></table></figure>
<!-- /wp:table -->

<!-- wp:paragraph -->
<p>90th percentile formula is <strong>=PERCENTILE.EXC(G2:G57,0.9)</strong>. Column G should have the speed in Mbps.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":7388,"sizeSlug":"large"} -->
<figure class="wp-block-image size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-9-1024x692.png" alt="CSV Data" class="wp-image-7388"/><figcaption>CSV Data</figcaption></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p>After your test is done, you can retest it. During the test you can pause the test. </p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>Upload Speed Test</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Upload Speed test has been temporarily turned off by Cloudflare due to some incorrect measurements. </p>
<!-- /wp:paragraph -->

<!-- wp:quote -->
<blockquote class="wp-block-quote"><p><strong><em>Note: we've temporarily disabled upload testing while we investigate reports of incorrect upload speed reports on very fast connections.</em></strong></p><cite>From Cloudlfare blog</cite></blockquote>
<!-- /wp:quote -->

<!-- wp:heading -->
<h2>Network Trace</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Here is the captured HTTP requests from developer tools in Edge.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":7392,"sizeSlug":"large"} -->
<figure class="wp-block-image size-large"><img src="https://qainsights.com/wp-content/uploads/2020/06/image-10-1024x337.png" alt="Network Trace" class="wp-image-7392"/><figcaption>Network Trace</figcaption></figure>
<!-- /wp:image -->

<!-- wp:list -->
<ul><li>170 HTTP requests</li><li>~30 seconds to finish the test</li><li>~68 MB resources</li><li>~61 MB transferred</li></ul>
<!-- /wp:list -->

<!-- wp:heading -->
<h2>Tech Stack</h2>
<!-- /wp:heading -->

<!-- wp:list -->
<ul><li><a href="https://workers.cloudflare.com/">Cloudflare Workers</a></li><li><a href="https://github.com/cloudflare/wrangler">Wrangler</a></li><li><a href="https://www.cloudflare.com/learning/cdn/glossary/anycast-network/">Anycast network</a></li></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Speed Test is the open source project in <a href="https://github.com/cloudflare/worker-speedtest-template">GitHub</a>. </p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2>Pros</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>I ran multiple tests in Speed Test. It is one of the best tool to measure the performance.</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul><li>Its light weight</li><li>Results download in CSV format</li><li>Intuitive user interface</li><li>Neat graphs and insights about measurements</li><li>Responsive web app</li><li>Open source</li></ul>
<!-- /wp:list -->

<!-- wp:heading -->
<h2>Cons</h2>
<!-- /wp:heading -->

<!-- wp:list -->
<ul><li>You cannot change the server location</li><li>Still the measurement needs more accuracy</li><li>No start button</li></ul>
<!-- /wp:list -->

<!-- wp:heading -->
<h2>Conclusion</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Cloudflare's Speed Test is very light weight web app to measure the performance of your home network. It is fast and the results are intuitive. As of now, no upload tests and the accuracy can be improved while enabling latency measurement during download tests.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>What is your favorite app to measure your internet performance? Please let me know in the <a href="https://qainsights.com">comments</a>.</p>
<!-- /wp:paragraph -->