# Unused JS Resources **Priority**: Critical **Impact**: Negative ## What issues it may cause When the JavaScript is render-blocking, the browser has to download, parse, compile, and evaluate the script before it can continue with the tasks necessary for rendering the page, which means users have to wait longer for the entire page to load because the browser is downloading and parsing unnecessary code. Even when the JavaScript is asynchronous (non-render-blocking), it still uses bandwidth that could be used for other resources during the download process, which can impact performance. Transmitting unnecessary code over the network is also inefficient for mobile users with limited data plans. Loading and parsing unused JavaScript can increase the time it takes for a page to become interactive, delaying the point at which users can start engaging with the page's content. ## How do you fix it [Learn more about how to reduce unused JavaScript.](https://developer.chrome.com/docs/lighthouse/performance/unused-javascript/) ## What is the positive impact ## How to fetch the data for this report template You will need to run a crawl for report template to generate report. When report has been generated and you have crawl id you can fetch data for the report using the following query: ```graphql query GetReportStatForCrawl( $crawlId: ObjectID! $reportTemplateCode: String! $after: String ) { getReportStat( input: {crawlId: $crawlId, reportTemplateCode: $reportTemplateCode} ) { crawlSiteSpeedAuditOpportunities(after: $after, reportType: Basic) { nodes { opportunityDigest element title auditId exampleUrl wastedKibAvg urlCount wastedKibSum gaPageviewsSum savingsScoreSum } totalCount pageInfo { endCursor hasNextPage } } } } ``` **Variables:** ```json {"crawlId":"TjAwNUNyYXdsNDAwMA","reportTemplateCode":"unused_javascript_failed_items"} ```