Knowledge

Web performance

Source 📝

348:
Shift (CLS) and Largest Contentful Paint (LCP) allow for website owner to gain insights into issues that might hurt the performance of their websites making it seem sluggish or slow to the user. Other metrics including Request Count (number of requests required to load a page), DOMContentLoaded (time when HTML document is completely loaded and parsed excluding CSS style sheets, images, etc.), Above The Fold Time (content that is visible without scrolling), Round Trip Time, number of Render Blocking Resources (such as scripts, stylesheets), Onload Time, Connection Time, Total Page Size help provide an accurate picture of latencies and slowdowns occurring at the networking level which might slow down a site.
225:(HTTP) request submitted when downloading a web page. These requests total the number of page elements required for download. However, a browser is limited to opening only a certain number of simultaneous connections to a single host. To prevent bottlenecks, the number of individual page elements are reduced using resource consolidation whereby smaller files (such as images) are bundled together into one file. This reduces HTTP requests and the number of "round trips" required to load a web page. 45:. Web performance also leads to less data travelling across the web, which in turn lowers a website's power consumption and environmental impact. Some aspects which can affect the speed of page load include browser/server cache, image optimization, and encryption (for example SSL), which can affect the time it takes for pages to render. The performance of the web page can be improved through techniques such as multi-layered cache, light weight design of presentation layer components and 88: 363:. Google publishes a library, the core-web-vitals library that allows for easy measurement of these metrics in frontend applications. In addition to this, Google also provides the Lighthouse, a Chrome dev-tools component and PageSpeed Insight a site that allows developers to measure and compare the performance of their website with Google's recommended minimums and maximums. 255:. Requests web browsers make are typically routed to the HTTP cache to validate if a cached response may be used to fulfill a request. If such a match is made, the response is fulfilled from the cache. This can be helpful for reducing network latency and costs associated with data-transfer. The HTTP cache is configured using request and response headers. 284:
of images and video reduces initial page load time, initial page weight, and system resource usage, all of which have positive impacts on website performance. It is used to defer initialization of an object right until the point at which it is needed. The browser loads the images in a page or post
347:
In recent years, several metrics have been introduced that help developers measure various aspects of the performance of their websites. In 2019, Google introduced metrics such as Time to First Byte (TTFB), First Contentful Paint (FCP), First Paint (FP), First Input Delay (FID), Cumulative Layout
261:
distinguishes discrepancies between codes written by web developers and how network elements interpret code. Minification removes comments and extra spaces as well as crunch variable names in order to minimize code, decreasing files sizes by as much as 60%. In addition to caching and compression,
204:. They employ several techniques that streamline web optimization tasks to decrease web page load times. This process is known as front end optimization (FEO) or content optimization. FEO concentrates on reducing file sizes and "minimizing the number of requests needed for a given page to load." 250:
to store copies of documents passing through their system. Subsequent requests from the cache may be fulfilled should certain conditions apply. Web caches are located on either the client side (forward position) or web-server side (reverse position) of a CDN. Web browsers are also able to store
65:
Steve Souders coined the term "web performance optimization" in 2004. At that time Souders made several predictions regarding the impact that WPO as an "emerging industry" would bring to the web, such as websites being fast by default, consolidation, web standards for performance, environmental
61:
by Patrick Killelea, some of the early techniques used were to use simple servlets or CGI, increase server memory, and look for packet loss and retransmission. Although these principles now comprise much of the optimized foundation of internet applications, they differ from current optimization
69:
One major point that Souders made in 2007 is that at least 80% of the time that it takes to download and view a website is controlled by the front-end structure. This lag time can be decreased through awareness of typical browser behavior, as well as of how
211:—a group of proxy servers spread across various locations around the globe—is an efficient delivery system that chooses a server for a specific user based on network proximity. Typically the server with the quickest response time is selected. 236:(HTML). As web pages grow in complexity, so do their code files and subsequently their load times. File compression can reduce code files by as much as 80 percent, thereby improving site responsiveness. 293:
Since web browsers use multiple TCP connections for parallel user requests, congestion and browser monopolization of network resources may occur. Because HTTP/1 requests come with associated
57:
In the first decade or so of the web's existence, web performance improvement was focused mainly on optimizing website code and pushing hardware limitations. According to the 2002 book
266:
techniques (similar to those used with audio files) remove non-essential header information and lower original image quality on many high resolution images. These changes, such as
41:
Faster website download speeds have been shown to increase visitor retention and loyalty and user satisfaction, especially for users with slow internet connections and those on
366:
In addition to this, tools such as the Network Monitor by Mozilla Firefox help provide insight into network-level slowdowns that might occur during transmission of data.
335:
Instead of a website's hosting server, CDNs are used in tandem with HTTP/2 in order to better serve the end-user with web resources such as images, JavaScript files and
270:
complexity or color gradations, are transparent to the end-user and do not noticeably affect perception of the image. Another technique is the replacement of
285:
when they are needed such as when the user scrolls down the page and not all images at once, which is the default behavior, and naturally, takes more time.
160: 132: 529: 502: 810: 383: 351:
Modules to measure metrics such as TTFB, FCP, LCP, FP etc are provided with major frontend JavaScript libraries such as
139: 743: 719: 692: 668: 179: 117: 762: 109: 146: 566: 539: 512: 485: 113: 453: 218: 405: 128: 556: 222: 214:
The following techniques are commonly used web optimization tasks and are widely used by web developers:
586: 475: 352: 258: 46: 635: 786: 233: 431: 942: 208: 98: 102: 336: 243: 153: 294: 835: 8: 531:
Designing for Sustainability: A Guide to Building Greener Digital Products and Services
504:
Designing for Sustainability: A Guide to Building Greener Digital Products and Services
325: 319: 62:
theory in that there was much less of an attempt to improve the browser display speed.
739: 715: 688: 664: 562: 535: 508: 481: 263: 907: 859: 339:(CSS) files since a CDN's location is usually in closer proximity to the end-user. 275: 271: 193: 883: 201: 936: 197: 42: 397: 312: 281: 305: 27: 445: 297:, web performance is impacted by limited bandwidth and increased usage. 376: 229: 252: 239: 87: 247: 23: 811:"Front-End Performance Checklist 2021 (PDF, Apple Pages, MS Word)" 278:. Vector substitution is best suited for simple geometric images. 356: 331:
allows servers to "push" responses proactively into client caches
572: 196:(UX) when visiting a website and therefore is highly desired by 610: 360: 267: 38:
is the field of knowledge about increasing web performance.
71: 787:"Measuring Web Performance in 2023: The Definitive Guide" 207:
In addition to the techniques listed below, the use of a
66:
impacts of optimization, and speed as a differentiator.
763:"Measuring performance - Learn web development | MDN" 636:"HTTP/2 – A Real-World Performance Test and Analysis" 712:
Performance Optimization: Techniques And Strategies
423: 934: 228:Web pages are constructed from code files such 251:content for re-use through the HTTP cache or 16:Speed web pages are downloaded and displayed 480:. Sebastopol: O'Reilly Media. p. 480. 454:"Web performance optimization for everyone" 116:. Unsourced material may be challenged and 26:are downloaded and displayed on the user's 836:"Measuring Performance | Create React App" 406:"WPO | Preparing for Cyber Monday Traffic" 384:"Google Adds Site Speed To Search Ranking" 77: 242:reduces server load, bandwidth usage and 180:Learn how and when to remove this message 736:Responsive Web Design with HTML5 and CSS 561:. Farnham: O'Reilly Media. p. 170. 473: 554: 507:. Boston: O'Reilly Media. p. 195. 935: 587:"Lazy loading - Web Performance | MDN" 534:. Boston: O'Reilly Media. p. 56. 288: 192:Web performance optimization improves 757: 755: 706: 704: 527: 500: 318:can therefore use one connection for 451: 114:adding citations to reliable sources 81: 661:Mobile Web Performance Optimization 611:"HTTP/2 Frequently Asked Questions" 429: 13: 908:"User-centric performance metrics" 752: 701: 403: 32:Web performance optimization (WPO) 14: 954: 246:. CDNs use dedicated web caching 86: 900: 876: 852: 828: 803: 779: 728: 677: 653: 628: 603: 685:The Web Performance Collection 579: 548: 521: 494: 467: 328:compression to reduce overhead 315:instead of ordered and blocked 1: 369: 219:Transmission Control Protocol 49:with server side components. 22:refers to the speed in which 274:with resolution-independent 7: 300:Compared to HTTP/1, HTTP/2 223:Hypertext Transfer Protocol 221:(TCP) connections for each 217:Web browsers open separate 10: 959: 474:Killelea, Patrick (2002). 342: 52: 47:asynchronous communication 558:High Performance Websites 234:Hypertext Markup Language 240:Web Caching Optimization 209:content delivery network 555:Souders, Steve (2007). 78:Optimization techniques 477:Web Performance Tuning 432:"Web First for Mobile" 59:Web Performance Tuning 767:developer.mozilla.org 591:developer.mozilla.org 337:Cascading Style Sheet 860:"@nuxtjs/web-vitals" 840:create-react-app.dev 110:improve this section 36:website optimization 528:Frick, Tim (2016). 501:Frick, Tim (2016). 289:HTTP/1.x and HTTP/2 615:HTTP Working Group 452:Bellonch, Albert. 308:instead of textual 815:Smashing Magazine 259:Code minification 190: 189: 182: 164: 129:"Web performance" 950: 930: 922: 921: 919: 918: 904: 898: 897: 895: 894: 884:"vue-web-vitals" 880: 874: 873: 871: 870: 856: 850: 849: 847: 846: 832: 826: 825: 823: 822: 807: 801: 800: 798: 797: 783: 777: 776: 774: 773: 759: 750: 749: 732: 726: 725: 708: 699: 698: 681: 675: 674: 657: 651: 650: 648: 646: 632: 626: 625: 623: 621: 607: 601: 600: 598: 597: 583: 577: 576: 575:on 8 March 2019. 571:. Archived from 552: 546: 545: 525: 519: 518: 498: 492: 491: 471: 465: 464: 462: 460: 449: 443: 442: 440: 438: 430:Souders, Steve. 427: 421: 420: 418: 416: 401: 395: 394: 392: 390: 380: 185: 178: 174: 171: 165: 163: 122: 90: 82: 958: 957: 953: 952: 951: 949: 948: 947: 943:Web development 933: 932: 928: 926: 925: 916: 914: 906: 905: 901: 892: 890: 882: 881: 877: 868: 866: 858: 857: 853: 844: 842: 834: 833: 829: 820: 818: 809: 808: 804: 795: 793: 791:Request Metrics 785: 784: 780: 771: 769: 761: 760: 753: 746: 734: 733: 729: 722: 710: 709: 702: 695: 683: 682: 678: 671: 659: 658: 654: 644: 642: 634: 633: 629: 619: 617: 609: 608: 604: 595: 593: 585: 584: 580: 569: 553: 549: 542: 526: 522: 515: 499: 495: 488: 472: 468: 458: 456: 450: 446: 436: 434: 428: 424: 414: 412: 402: 398: 388: 386: 382: 381: 377: 372: 345: 291: 276:vector graphics 272:raster graphics 194:user experience 186: 175: 169: 166: 123: 121: 107: 91: 80: 55: 20:Web performance 17: 12: 11: 5: 956: 946: 945: 924: 923: 899: 875: 851: 827: 802: 778: 751: 744: 727: 720: 700: 693: 676: 669: 652: 627: 602: 578: 567: 547: 540: 520: 513: 493: 486: 466: 444: 422: 404:Sharon, Bell. 396: 374: 373: 371: 368: 344: 341: 333: 332: 329: 322: 316: 309: 290: 287: 202:web developers 188: 187: 94: 92: 85: 79: 76: 54: 51: 43:mobile devices 15: 9: 6: 4: 3: 2: 955: 944: 941: 940: 938: 931: 913: 909: 903: 889: 885: 879: 865: 861: 855: 841: 837: 831: 816: 812: 806: 792: 788: 782: 768: 764: 758: 756: 747: 745:9781803231723 741: 737: 731: 723: 721:9783944540948 717: 713: 707: 705: 696: 694:9781492069805 690: 686: 680: 672: 670:9781785284625 666: 662: 656: 641: 637: 631: 616: 612: 606: 592: 588: 582: 574: 570: 564: 560: 559: 551: 543: 537: 533: 532: 524: 516: 510: 506: 505: 497: 489: 483: 479: 478: 470: 455: 448: 433: 426: 411: 407: 400: 385: 379: 375: 367: 364: 362: 358: 354: 349: 340: 338: 330: 327: 323: 321: 317: 314: 310: 307: 303: 302: 301: 298: 296: 286: 283: 279: 277: 273: 269: 265: 260: 256: 254: 249: 245: 241: 237: 235: 231: 226: 224: 220: 215: 212: 210: 205: 203: 199: 198:web designers 195: 184: 181: 173: 162: 159: 155: 152: 148: 145: 141: 138: 134: 131: –  130: 126: 125:Find sources: 119: 115: 111: 105: 104: 100: 95:This section 93: 89: 84: 83: 75: 73: 67: 63: 60: 50: 48: 44: 39: 37: 33: 29: 25: 21: 927: 915:. Retrieved 911: 902: 891:. Retrieved 887: 878: 867:. Retrieved 863: 854: 843:. Retrieved 839: 830: 819:. Retrieved 817:. 2021-01-12 814: 805: 794:. Retrieved 790: 781: 770:. Retrieved 766: 735: 730: 711: 684: 679: 660: 655: 643:. Retrieved 639: 630: 618:. Retrieved 614: 605: 594:. Retrieved 590: 581: 573:the original 557: 550: 530: 523: 503: 496: 476: 469: 457:. Retrieved 447: 435:. Retrieved 425: 413:. Retrieved 409: 399: 387:. Retrieved 378: 365: 350: 346: 334: 299: 292: 282:Lazy loading 280: 257: 238: 227: 216: 213: 206: 191: 176: 167: 157: 150: 143: 136: 124: 108:Please help 96: 68: 64: 58: 56: 40: 35: 31: 19: 18: 320:parallelism 313:multiplexed 264:compression 28:web browser 917:2023-01-09 893:2023-01-09 869:2023-01-09 845:2023-01-09 821:2023-01-09 796:2023-01-09 772:2023-01-09 640:CSS Tricks 596:2022-03-15 568:0596529309 541:1491935774 514:1491935774 487:059600172X 459:4 December 437:4 December 415:4 December 410:CDNetworks 389:4 December 370:References 230:JavaScript 140:newspapers 311:is fully 253:web cache 97:does not 24:web pages 937:Category 738:. 2022. 687:. 2018. 663:. 2015. 645:14 April 620:14 April 295:overhead 248:software 170:May 2017 912:web.dev 343:Metrics 244:latency 154:scholar 118:removed 103:sources 74:works. 53:History 929:  742:  718:  691:  667:  565:  538:  511:  484:  357:NuxtJS 326:header 306:binary 262:lossy 156:  149:  142:  135:  127:  353:React 324:uses 268:pixel 161:JSTOR 147:books 34:, or 740:ISBN 716:ISBN 689:ISBN 665:ISBN 647:2017 622:2017 563:ISBN 536:ISBN 509:ISBN 482:ISBN 461:2012 439:2012 417:2012 391:2012 359:and 232:and 200:and 133:news 101:any 99:cite 72:HTTP 888:npm 864:npm 361:Vue 304:is 112:by 939:: 910:. 886:. 862:. 838:. 813:. 789:. 765:. 754:^ 714:. 703:^ 638:. 613:. 589:. 408:. 355:, 30:. 920:. 896:. 872:. 848:. 824:. 799:. 775:. 748:. 724:. 697:. 673:. 649:. 624:. 599:. 544:. 517:. 490:. 463:. 441:. 419:. 393:. 183:) 177:( 172:) 168:( 158:· 151:· 144:· 137:· 120:. 106:.

Index

web pages
web browser
mobile devices
asynchronous communication
HTTP

cite
sources
improve this section
adding citations to reliable sources
removed
"Web performance"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
user experience
web designers
web developers
content delivery network
Transmission Control Protocol
Hypertext Transfer Protocol
JavaScript
Hypertext Markup Language
Web Caching Optimization
latency
software
web cache

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.