Core Web Vitals: How to Improve Your Website’s First Input Delay (FID)

Providing a high-performing website experience to your visitors is essential for growing your business. As such, you probably spend a great deal of time optimizing your page load time to get it as low as possible. But, page load time isn’t the only metric you should pay attention to when measuring how fast your website is. Along with largest contentful paint (LCP) and cumulative layout shift (CLS), first input delay (FID) is an essential component of Google’s Core Web Vitals – and one that often goes overlooked. 

Read on to learn more about FID, why it’s such an important metric, and how to improve your site’s FID and deliver a better user experience (UX) in the process.

What Is FID?

Google released FID, LCP, and CLS in 2020 as part of the Chrome User Experience Report. The goal was to help Google’s algorithm determine the quality of a website’s UX and how high it should rank for SEO and aid website designers and developers in deploying quality websites. 

FID (also known as input latency) is the length of time it takes web browsers to begin processing a visitor-initiated action on a web page. Basically, FID is a measurement of responsiveness: how long it takes web browsers to start – not finish – processing actions such as link clicks, button clicks, and interactions with other JavaScript-powered elements on the page after a visitor has initiated them.

How FID Affects Your Website

Visitors expect a fast and fluid experience when interacting with web pages. According to Google, an FID of 100 milliseconds or less is almost unrecognizable. So, if it takes just 100 milliseconds or less for web browsers to begin processing actions, it will feel instantaneous to visitors.

Some web pages have a much higher FID. And the higher a web page’s FID; the longer visitors will have to wait after performing an action. An excessively long delay may prompt visitors to leave rather than wait for their web browsers to begin processing. Your website needs low FIDs to provide visitors with a fast and fluid experience.

As mentioned before, FID is a component of Google’s Core Web Vitals – meaning it can affect your website’s organic search rankings. FID, LCP, and CLS are now essential ranking signals, and it now sees high FID scores as a sign of a poor page experience, which may cause Google to rank your website below your competitors.

Google considers an FID score of 100 ms or less to be good. Meanwhile, a score between 100 and 300 ms is ok and needs improvement, and a score above 300 ms is poor.

Go ahead and check for yourself. To measure your FID, use Google PageSpeed Insights. It’s totally free to use, and the results may surprise you! Your FID score can be found under the Field Data section. 

Optimizing Your FID Score

Now that you understand what an FID score is (and what your FID score is) let’s take a look at how to improve your score. Here are a few tips from our team here at Pressable.

Use Fewer WordPress Plugins

The number of plugins your WordPress website uses will influence its FIDs. Many web apps and plugins are powered by JavaScript, and JavaScript can cause delayed responses with web browsers.

If a web browser is still executing the JavaScript of a plugin when the visitor clicks a button, it won’t immediately process the visitor’s action. Instead, the web browser will wait until all of the JavaScript has been entirely executed, resulting in a higher FID for the web page. Using fewer WordPress plugins can improve your website’s FIDs by reducing the amount of JavaScript it has to handle.

Identify Long-Running JavaScript Tasks

If your FID is on the higher side, try identifying long-running JavaScript tasks on your website. Some JavaScript tasks will inevitably run for a more extended period than others. With that said, all it takes is a single long-running JavaScript task to drive up a web page’s FID.

You can identify long-running JavaScript tasks by using PageSpeed Insights. After entering the URL of a web page, click the “Avoid long main-thread tasks” button under Diagnostics. Removing or optimizing these long-running JavaScript tasks should significantly impact the web page’s FID.

Use Asynchronous JavaScript

Using asynchronous JavaScript can improve your website’s FIDs. JavaScript can be loaded either synchronously or asynchronously. Synchronously loaded JavaScript means that web browsers must execute each JavaScript task separately and sequentially. Asynchronously loaded JavaScript, on the other hand, means that web browsers can executive all JavaScript tasks together and in parallel with each other.

Asynchronous JavaScript requires the use of the async attribute. When you use the async attribute with a JavaScript task, web browsers won’t wait to execute it. They’ll run it immediately, even if they are still performing other JavaScript tasks. For lower FIDs, consider using asynchronous JavaScript so that web browsers can execute it without waiting.

Defer JavaScript

Deferring JavaScript can curb long response delays with web browsers. When a JavaScript task is deferred, web browsers won’t execute it until the web page has been completely rendered. For nonessential JavaScript tasks, deferring can improve FIDs without sacrificing the page experience.

Split Up Large JavaScript Tasks

Another way to improve your website’s FIDs is to split up large JavaScript tasks. Large JavaScript tasks are those that consume a lot of resources and run for an extended period. You can always remove them, but there are probably some large JavaScript tasks that you’ll want to keep. To prevent them from driving up your website’s FIDs, you can split them up.

Splitting up large JavaScript tasks is known as code splitting. You can take a single enormous JavaScript task and break it up into many smaller tasks. While the smaller tasks may perform the same function, they won’t cause FID problems. Web browsers can download and execute the JavaScript code more quickly.

Remove Unnecessary CSS Code

If one or more pages have unnecessary Cascading Style Sheets (CSS) code, you should remove it. JavaScript causes most cases of high FIDs, but you can’t ignore CSS when optimizing web pages for this metric. Too much CSS code can have a similar effect by harming the web page’s FID.

Web browsers must download CSS code. If a web page contains lots of CSS code that isn’t being used, it will take web browsers longer to render the web page, which may lead to a higher FID. Therefore, you should remove unnecessary and unused CSS code from your website. You can either remove the CSS code manually or use a free tool like to remove it automatically.

Check With Your Hosting Provider

If you’ve gone through your website with a fine-toothed comb and still find your FID score suffering, it might be worth having a conversation with your hosting provider. Reputable managed WordPress hosting providers (like Pressable) have 24/7 support, and it may be worthwhile to reach out to them for ideas. 

However, some WordPress web hosts devote minimal resources to your website or throttle performance based on the level of plan you purchase. If this is the case, those extra milliseconds you’re seeing on your FID score may be due to your choice of host. If that ends up being the case, now would be an excellent time to get in touch with us today to see what we can do to help get you set up with the right high-performance hosting plan.

In Conclusion

A high FID is a sign of a poor page experience. Visitors don’t enjoy using web pages with a high FID because it takes their web browsers longer to process their actions. To improve your website’s FIDs, try using fewer apps and plugins, identify long-running JavaScript tasks, use asynchronous JavaScript, defer JavaScript, split up large JavaScript tasks and remove unnecessary CSS code. Also, be sure to reach out to your hosting professor to see if their support team has any insights that could help.

Zach Wiesman

Zach has 12+ years of experience with WordPress, from creating and maintaining client sites, to providing support and developing documentation. A knack for problem-solving and providing solutions led Zach to pursue a job with Automattic providing customer support in 2015 working with WooCommerce support, and now Zach has recently joined our team here at Pressable. Outside of work, Zach enjoys spending time with his family, playing and watching sports, and working on projects around the house.

Related blog articles