The Website Performance Analyzer API allows developers and businesses to instantly evaluate the technical performance of any web page by simply providing its URL. Based on advanced metrics and real-time analysis, this API provides accurate information about how efficiently a site loads, executes scripts, and manages layout stability. By returning structured diagnostic data, it helps identify performance bottlenecks, JavaScript execution overloads, caching inefficiencies, and cumulative layout shifts that can negatively impact the user experience.
When a request is made, the API generates a comprehensive performance audit that includes key metrics such as startup time, CPU usage, script parsing and compilation duration, and total JavaScript execution time. It also evaluates caching efficiency to determine whether assets are served with optimal lifetime, and provides details on layout shifts to assess visual stability during page load. The API reports the number of scripts, fonts, and requests made by the web page, as well as metrics such as total block time (TBT), cumulative layout shift (CLS), and first contentful paint (FCP).
Essentially, the website performance analyzer API acts as an automated digital performance auditor. It helps you identify where resources are being wasted, where rendering delays occur, and how to prioritize critical requests. Whether you manage large-scale websites or individual landing pages, this API provides the transparency and actionable data needed to maintain top-notch web performance, improve SEO rankings, and ensure a smooth browsing experience across all devices.
Analyze the web performance of any URL, detect JavaScript execution time, caching, and recommended optimizations to improve speed and efficiency.
Perfomance Information - Endpoint Features
| Object | Description |
|---|---|
url |
[Required] |
{"cached":false,"ok":true,"raw":{"analysisUTCTimestamp":"2025-10-14T17:32:16.035Z","captchaResult":"CAPTCHA_NOT_NEEDED","id":"https://www.google.com/","kind":"pagespeedonline#result","lighthouseResult":{"audits":{"bootup-time":{"description":"Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn how to reduce Javascript execution time](https://developer.chrome.com/docs/lighthouse/performance/bootup-time/).","details":{"headings":[{"key":"url","label":"URL","valueType":"url"},{"granularity":1,"key":"total","label":"Total CPU Time","valueType":"ms"},{"granularity":1,"key":"scripting","label":"Script Evaluation","valueType":"ms"},{"granularity":1,"key":"scriptParseCompile","label":"Script Parse","valueType":"ms"}],"items":[{"scriptParseCompile":155.73839999999998,"scripting":413.6075999999994,"total":604.7987999999995,"url":"https://www.google.com/xjs/_/js/k=xjs.hm.en.zHypCaZPyKI.2018.O/am=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAABAABAAAQCAAAAAAAAAAAAEAAAAAAAAAAAAAAAJBABAAAAAAAAAAAAAACAIAAAAAAAAADCAAABCBEABAwCAAAAAAAAAAAAAgEEAAAgADgD4ARAAAAJABgAWgAAAACAgAAgAAAAEAAAAABAAAAAAAAAQAAAAAAAAAAIAAACAAAAAEAAAAAAAAAAAAAAAAAAAADAAAAAAEAAAAAAAAAAOAAACEAAMAgigQAAAAAAABADwAeCAwpKAAAAAAAAAAAAAAAAAAAAIADbMEZBBCAAAAAAAAAAAAAAAAAAAAAAAAASAi7GhA/d=1/ed=1/dg=4/br=1/rs=ACT90oFUuWbvGZtexgGDdtTDoLIiEcqMag/ee=ALeJib:B8gLwd;AfeaP:TkrAjf;BMxAGc:E5bFse;BgS6mb:fidj5d;BjwMce:cXX2Wb;CIZTGb:Kqhykb;CxXAWb:YyRLvc;DQEued:Fevhcf;DULqB:RKfG5c;Dkk6ge:JZmW9e;DpcR3d:zL72xf;Du7NI:C6zLgf;EABSZ:MXZt9d;EVNhjf:pw70Gc;EjXHpb:pSHqh;EmZ2Bf:zr1jrb;EnlcNd:WeHg4;F9mqte:rlHKFc;FSxmUe:fiZR8b;Fmv9Nc:O1Tzwc;G0KhTb:LIaoZ;GEkGdd:e1RzQd;GleZL:J1A7Od;HMDDWe:G8QUdb;IBADCc:RYquRb;IoGlCf:b5lhvb;JXJSm:ii1RGf;JXS8fb:k0T3Ub;JqSq7d:y9ePhe;JsbNhc:Xd8iUd;K5nYTd:ZDZcre;KOxcK:OZqGte;KQzWid:ZMKkN;KcokUb:KiuZBf;KpRAue:Tia57b;LBgRLc:SdcwHb,XVMNvd;LEikZe:byfTOb,lsjVmc;LXA8b:q7OdKd;LsNahb:ucGLNb;NJ1rfe:qTnoBf;NPKaK:SdcwHb;NSEoX:lazG7b;Np8Qkd:Dpx6qc;Nyt6ic:jn2sGd;OgagBe:cNTe0;OiqE2c:TFpEK;OoK5v:Sp69O;OohIYe:mpEAQb;Pjplud:PoEs9b;PpTLXd:pJYjx;Q1Ow7b:x5CSu;QGR0gd:Mlhmy;QYLF2b:pAQYUd;Qw8Feb:jpavUe;R4IIIb:QWfeKf;R9Ulx:CR7Ufe;RCF5Sd:X1kBmd;SLtqO:Kh1xYe;SMDL4c:fTfGO,fTfGO;SNUn3:ZwDk9d,xD8Kp;ScI3Yc:e7Hzgb,e7Hzgb;ShpF6e:N0pvGc;SwCqAd:fXbCZc;SzQQ3e:dNhofb;TIUVQd:M8uRWb;TroZ1d:vVVzjb;U96pRd:FsR04;UBKJZ:LGDJGb;UDrY1c:eps46d;UVmjEd:EesRsb;UVzb9c:IvPZ6d;UYRIEb:HzTAQc;UyG7Kb:wQd0G;V2HTTe:RolTY;VGRfx:VFqbr;VN6jIc:ddQyuf;VOcgDe:YquhTb;VhA7bd:vAmQFf;VsAqSb:PGf2Re;WCEKNd:I46Hvd;WDGyFe:jcVOxd;Wfmdue:g3MJlb;Y3c5sd:FGbfLe;YIZmRd:A1yn5d;YV5bee:IvPZ6d;ZSH6tc:QAvyLe;ZWEUA:afR4Cf;ZlOOMb:P0I0Ec;a56pNe:JEfCwb;aAJE9c:WHW6Ef;aCJ9tf:qKftvc;aVZq3e:EMeVIb;aZ61od:arTwJ;bDXwRe:UsyOtc;bcPXSc:gSZLJb;cEt90b:ws9Tlc;cFTWae:gT8qnd;coJ8e:KvoW8;dIoSBb:ZgGg9b;dLlj2:Qqt3Gf;dowIGb:ebZ3mb,ebZ3mb;dtl0hd:lLQWFe;eBAeSb:Ck63tb;eBZ5Nd:audvde;eHDfl:ofjVkb;eJKchc:ATg1be;eO3lse:UefOmb;euOXY:OZjbQ;g8nkx:U4MzKc;gaub4:TN6bMe;gtVSi:ekUOYd;h3MYod:ws9Tlc;hK67qb:QWEO5b;hVic1b:Kqhykb;heHB1:sFczq;hjRo6e:F62sG;hlqGX:FWz1ic;hsLsYc:Vl118;hwoVHd:zw4U8c;iFQyKf:QIhFr;iySzae:a6xXfd;jJj2G:kF2o2b;k2Qxcb:XY51pe;kbAm9d:MkHyGd;lOO0Vd:OTA3Ae;lbfkyf:MqGdUd;liAz7d:kF2o2b;lkq0A:JyBE3e;mWzs9c:fz5ukf;nJw4Gd:dPFZH;nrDcw:SuEoDe;oGtAuc:sOXFj;oSUNyd:fTfGO,fTfGO;oUlnpc:BO43gd;okUaUd:wItadb;pKJiXd:VCenhc;pNsl2d:gsJLOc,j9Yuyc,kJ6Ooc,wJMPhe;pXdRYb:JKoKVe;pj82le:ww04Df;qGV2uc:HHi04c;qZx2Fc:j0xrE;qaS3gd:yiLg6e;qafBPd:sgY6Zb;qavrXe:zQzcXe;qddgKe:d7YSfd,x4FYXe;rmWaj:PMS6Sd;ropkZ:hjoqoe;sTsDMc:kHVSUb;sZmdvc:rdGEfc;slIQ5d:pnOULd;tH4IIe:Ymry6;tbg2ob:nMC03e;teSRSb:BMLai;tosKvd:ZCqP3;trZL0b:qY8PFe;uuQkY:u2V3ud;vEYCNb:FaqsVd;vRlMvf:Iw9Xo;vfVwPd:lcrkwe;w3bZCb:ZPGaIb;w4rSdf:XKiZ9;w9w86d:dt4g2b;wQlYve:aLUfP;wR5FRb:O1Gjze,TtcOte;wV5Pjc:L8KGxe;xBbsrc:NEW1Qc;ysNiMc:CpIBjd;yxTchf:KUM7Z;z97YGf:oug9te;zB3wie:WtgrP;zOsCQe:Ko78Df;zaIgPb:Sl0pxd/m=bct,cdos,hsm,jsa,qim,rr4R9e,cEt90b,SNUn3,qddgKe,sTsDMc,dtl0hd,eHDfl,YV5bee,d,csi"},{"scriptParseCompile":28.5924,"scripting":196.632,"total":238.8984,"url":"https://www.google.com/xjs/_/js/k=xjs.hm.en.zHypCaZPyKI.2018.O/ck=xjs.hm.y-0YhYxcgzY.L.B1.O/am=QAhQAhAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAQAAAAAAAAABAEBIAzQCgAAAAAGAAAAAMABhAIAAAAAAFAAAJBABAAAIAAAAAAAAARCAIIALggAAAAnGgABBCBEABAwKAAABACAgAABAJgEOACKgBDwD4ARGEgwJANgAWgAAAACggdghAAC0EU8DAqDSAeADgAAEQgAAAAAAAAQIhAACAAAEAEAAQFAuKZgAQAAAEYAgAgDQAAwAAEBAAAAEAAAAOACACMAYMAhigQAAAAAAABADwAeCAwpKAAAAAAAAAAAAAAAAAAAAIADbMEZBBCAAAAAAAAAAAAAAAAAAAAAAAAASAi7GhA/d=0/dg=0/br=1/ujg=1/rs=ACT90oFSsXT_hPWlXBIHoEAIQgo5BprNKQ/m=sy19b,sy19a,SJpD2c,SMquOb,syz3,syz1,sye0,d5EhJe,sy11c,sy1lm,sy1ll,sy1lk,sy1lj,syvu,sy124,sy123,syzd,syze,sywd,syw7,T1HOxc,sy16k,fCxEDd,syzb,syz8,syz9,syz6,syov,zx30Y,sy1lo,sy1ln,sy1j2,syzh,Wo3n8,sy3va,sy3uu,sy444,sy3xd,sy3v0,sy3uz,sy3uy,sy3uv,sy51p,sy2od,hmxkV,sy1kp,sy1kn,sy1ko,Ix7YEd,sy15z,nqQ5fe,sy1ks,sy1kr,sy1kq,dp6JMc,sy1ov,L3vX2d,sy1ou,KWMuje,sy1ox,syyj,sy1ow,syyk,sy1m6,syyw,syyg,syyv,syyo,syyi,syyp,V23Ql,sy1oy,OPwjEf,sy170,EbPKJf,sy135,sy133,sykf,sypx,CnSW2d,syui,syug,syuf,DPreE,sy173,sy172,sy137,pFsdhd,sy1oz,aBr2Mc,sy1p3,sy1p2,sy1p0,syw9,sywc,sy1p1,EkevXb,bIMMof,sy13b,sy13a,KbYvUc,sy1ns,sy12z,sy119,sy114,sy112,sy11a,sy113,sy11e,sy1nr,KHourd,sy17j,oSkgIf?xjs=s3"},{"scriptParseCompile":16.2852,"scripting":69.46560000000017,"total":224.2404000000001,"url":"https://www.google.com/"},{"scriptParseCompile":42.6072,"scripting":66.51720000000002,"total":112.84440000000001,"url":"https://www.gstatic.com/og/_/js/k=og.qtm.en_US.CelFTev3ejs.2019.O/rt=j/m=qabr,q_d,qcwid,qapid,qads,q_dg/exm=qaaw,qadd,qaid,qein,qhaw,qhba,qhbr,qhch,qhga,qhid,qhin/d=1/ed=1/rs=AA2YrTvmWBZSAxh723iRtzGY78qOiNZH_Q"},{"scriptParseCompile":0,"scripting":9.123599999999996,"total":98.75280000000022,"url":"Unattributable"},{"scriptParseCompile":48.84119999999999,"scripting":40.89119999999999,"total":95.22959999999998,"url":"https://www.google.com/xjs/_/js/k=xjs.hm.en.zHypCaZPyKI.2018.O/ck=xjs.hm.y-0YhYxcgzY.L.B1.O/am=QAhQAhAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAQAAAAAAAAABAEBIAzQCgAAAAAGAAAAAMABhAIAAAAAAFAAAJBABAAAIAAAAAAAAARCAIIALggAAAAnGgABBCBEABAwKAAABACAgAABAJgEOACKgBDwD4ARGEgwJANgAWgAAAACggdghAAC0EU8DAqDSAeADgAAEQgAAAAAAAAQIhAACAAAEAEAAQFAuKZgAQAAAEYAgAgDQAAwAAEBAAAAEAAAAOACACMAYMAhigQAAAAAAABADwAeCAwpKAAAAAAAAAAAAAAAAAAAAIADbMEZBBCAAAAAAAAAAAAAAAAAAAAAAAAASAi7GhA/d=0/dg=0/br=1/ujg=1/rs=ACT90oFSsXT_hPWlXBIHoEAIQgo5BprNKQ/m=sb_wiz,aa,abd,U9EYge,sy10o,syel,sy10k,sy10q,sy10p,syc4,syby,sy10s,syfk,syfj,sy10n,sy10a,sy109,sy105,syzw,sy18q,sy17w,sy10f,sy10e,syzy,syv8,syv7,sy101,sy17v,sy10u,sy104,sy10c,syzx,sywb,sywa,sy17u,sy106,sy108,sy10d,syzm,syzz,sy17x,sy10t,sy10r,sy10j,async,foot,pHXghd,sy4py,sonic,sy4q2,sy49n,sy14i,syvg,syvl,syv5,syv3,syv4,syv2,syv6,sy47c,syeu,sy458,syvp,syah,sya2,sya3,sya1,sy9z,spch,sy1qd,loL8vb,sy1qe,sy1qa,sy19d,ms4mZb,sy1nt,HoZvlf,sy1or,eT8Xz,syei,syeg,syee,mI3LFb,syem,lazG7b,syt9,xRxDld,syf4,Wq6lxf,sytr,sytp,syto,sypq,syp0,syj7,syk4,syj8,syjb,syix,syiy,syge,sygf,syh5,sygw,sypr,OZLguc,sy197,sytv,sys1,sypd,sypb,sys2,Mbif2,ipWLfe,sy199,QVaUhf,sy81,sy80,syg1,syfx,syg7,syg5,syfw,sy8e,sy8h,syfu,syft,syc0,sybq,syay,sybl,syba,sybj,syas,syb0,syaz,sybp,syb3,syb7,syb6,syb2,syb8,sybm,sybb,sya6,syaa,syan,syaw,syc8,sybd,syau,syax,syao,syc6,syak,syar,sybn,syfs,syfr,syfo,syfm,sy8l,uxMpU,syfb,sycb,sycd,sybg,syca,syc5,sy92,sy8z,sy8y,sy8x,sy8w,sy8v,Mlhmy,QGR0gd,PoEs9b,Pjplud,OTA3Ae,sy8s,A1yn5d,YIZmRd,sy8b,sy89,sy8a,sy88,sy87,sy85,byfTOb,lsjVmc,LEikZe,sy83,kWgXee,ovKuLd,sgY6Zb,qafBPd,ebZ3mb,dowIGb,sy19c?xjs=s3"}],"sortedBy":["total"],"summary":{"wastedMs":1088.3015999999996},"type":"table"},"displayValue":"1.1\u00a0s","id":"bootup-time","metricSavings":{"TBT":650},"numericUnit":"millisecond","numericValue":1088.3015999999996,"score":1,"scoreDisplayMode":"metricSavings","title":"JavaScript execution time"},"cache-insight":{"description":"A long cache lifetime can speed up repeat visits to your page. [Learn more](https://web.dev/uses-long-cache-ttl/).","details":{"debugData":{"type":"debugdata","wastedBytes":0},"headings":[{"key":"url","label":"Request","valueType":"url"},{"displayUnit":"duration","key":"cacheLifetimeMs","label":"Cache TTL","valueType":"ms"},{"displayUnit":"kb","granularity":1,"key":"totalBytes","label":"Transfer Size","valueType":"bytes"}],"items":[],"type":"table"},"id":"cache-insight","metricSavings":{"FCP":0,"LCP":0},"score":1,"scoreDisplayMode":"metricSavings","title":"Use efficient cache lifetimes"},"cls-culprits-insight":{"description":"Layout shifts occur when elements move absent any user interaction. [Investigate the causes of layout shifts](https://web.dev/articles/optimize-cls), such as elements being added, removed, or their fonts changing as the page loads.","details":{"items":[{"headings":[{"key":"node","label":"Element","subItemsHeading":{"key":"extra"},"valueType":"node"},{"granularity":0.001,"key":"score","label":"Layout shift score","subItemsHeading":{"key":"cause","valueType":"text"},"valueType":"numeric"}],"items":[{"node":{"type":"text","value":"Total"},"score":0.0024803308288881766},{"node":{"boundingRect":{"bottom":823,"height":56,"left":0,"right":412,"top":767,"width":412},"lhId":"page-1-DIV","nodeLabel":"Dark theme: off\nSettings\nPrivacyTerms","path":"1,HTML,1,BODY,5,DIV,3,DIV","selector":"body > div#gb-main > div","snippet":"<div>","type":"node"},"score":0.0024803308288881766}],"type":"table"}],"type":"list"},"id":"cls-culprits-insight","metricSavings":{"CLS":0},"score":1,"scoreDisplayMode":"informative","title":"Layout shift culprits"},"critical-request-chains":{"description":"The Critical Request Chains below show you what resources are loaded with a high priority. Consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load. [Learn how to avoid chaining critical requests](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains/)."}}}},"_note":"Response truncated for documentation purposes"}
curl --location --request GET 'https://zylalabs.com/api/10771/website+performance+analyzer+api/20436/perfomance+information?url=https://google.com' --header 'Authorization: Bearer YOUR_API_KEY'
| Header | Description |
|---|---|
Authorization
|
[Required] Should be Bearer access_key. See "Your API Access Key" above when you are subscribed. |
No long-term commitment. Upgrade, downgrade, or cancel anytime. Free Trial includes up to 50 requests.
The Performance Information endpoint returns detailed metrics about a web page's performance, including startup time, CPU usage, JavaScript execution time, caching efficiency, and layout stability metrics like cumulative layout shift (CLS) and first contentful paint (FCP).
Key fields in the response include total block time (TBT), number of scripts and requests, JavaScript execution time, caching details, and layout shift metrics. Each field provides insights into specific performance aspects of the analyzed web page.
The response data is structured in a JSON format, organized into sections for performance metrics, JavaScript execution details, caching information, and layout stability. This structure allows for easy parsing and analysis of the performance audit results.
The endpoint accepts a URL parameter, which is the web page to be analyzed. Users can customize their requests by specifying additional parameters, such as the desired metrics to focus on, if supported by the API.
Typical use cases include optimizing website performance, identifying bottlenecks in loading times, improving SEO rankings, and enhancing user experience. Developers and businesses can use the data to prioritize optimizations based on performance insights.
Data accuracy is maintained through real-time analysis using advanced performance metrics and algorithms. The API continuously updates its methods to reflect the latest web standards and practices, ensuring reliable performance assessments.
Users can utilize the returned data by analyzing key performance metrics to identify areas for improvement. For example, high JavaScript execution times may indicate the need for script optimization, while poor caching efficiency could suggest adjustments to asset management.
Standard data patterns include consistent metrics for startup time, CPU usage, and layout shifts across similar web pages. Users can expect variations based on page complexity, resource loading, and optimization levels, which can guide targeted improvements.
Please have a look at our Refund Policy: https://zylalabs.com/terms#refund
To obtain your API key, you first need to sign in to your account and subscribe to the API you want to use. Once subscribed, go to your Profile, open the Subscription section, and select the specific API. Your API key will be available there and can be used to authenticate your requests.
You can’t switch APIs during the free trial. If you subscribe to a different API, your trial will end and the new subscription will start as a paid plan.
If you don’t cancel before the 7th day, your free trial will end automatically and your subscription will switch to a paid plan under the same plan you originally subscribed to, meaning you will be charged and gain access to the API calls included in that plan.
The free trial ends when you reach 50 API requests or after 7 days, whichever comes first.
No, the free trial is available only once, so we recommend using it on the API that interests you the most. Most of our APIs offer a free trial, but some may not include this option.
Yes, we offer a 7-day free trial that allows you to make up to 50 API calls at no cost, so you can test our APIs without any commitment.
Zyla API Hub is like a big store for APIs, where you can find thousands of them all in one place. We also offer dedicated support and real-time monitoring of all APIs. Once you sign up, you can pick and choose which APIs you want to use. Just remember, each API needs its own subscription. But if you subscribe to multiple ones, you'll use the same key for all of them, making things easier for you.
Service Level:
100%
Response Time:
20,003ms
Service Level:
100%
Response Time:
20,003ms
Service Level:
100%
Response Time:
10,604ms
Service Level:
100%
Response Time:
5,878ms
Service Level:
100%
Response Time:
620ms
Service Level:
100%
Response Time:
11,821ms
Service Level:
100%
Response Time:
297ms
Service Level:
100%
Response Time:
1,151ms
Service Level:
100%
Response Time:
5,864ms
Service Level:
100%
Response Time:
20,003ms
Service Level:
100%
Response Time:
1,778ms
Service Level:
100%
Response Time:
5,660ms
Service Level:
100%
Response Time:
4,368ms
Service Level:
100%
Response Time:
427ms
Service Level:
100%
Response Time:
871ms
Service Level:
100%
Response Time:
1,512ms
Service Level:
100%
Response Time:
724ms
Service Level:
97%
Response Time:
1,950ms
Service Level:
100%
Response Time:
3,290ms
Service Level:
100%
Response Time:
1,247ms