Flying Pages


Flying Pages preload pages before the user click on it, making them load instantly

Quick Links

How it Works?

Flying Pages injects a tiny JavaScript code (1KB gzipped), waits until the browser becomes idle. Then it detects pages in the viewport and on mouse hover and preloads them.

Flying Pages is intelligent to make sure preloading doesn’t crash your server or make it slow.

  • Preload pages in the viewport – Detect links within the viewport (current viewing area) using ‘Intersection Observer’ and tells the browser to preload them using ‘prefetch’, switch to xhr if not available (similar to Quicklink).

  • Preload pages on mouse hover – On hovering links, if it’s not preloaded yet using above ‘viewport’, then Flying Pages will prefetch them instantly (similar to

  • Limits the number of preloads per second – If your page has too many links, prefetching all at the same time will cause the server to crash or slow down the website to visitors. Flying Pages limits the number of preloads per second (3 req/sec by default) using an in-built queue. For example, if you’ve 10 links in the viewport, preloading all these are span into 4 seconds.

  • Stops preloading if the server is busy – In case the server starts to respond slowly or return errors, preloading will be stopped to reduce the server load.

  • Understands user’s connection and preferences – Checks if the user is on a slow connection like 2G or has enabled data-saver. Flying Pages won’t preload anything in this case.


  • Flying Pages Settings


From within WordPress

  1. Visit ‘Plugins > Add New’
  2. Search for ‘Flying Pages’
  3. Activate Flying Pages for WordPress from your Plugins page.
  4. Visit ‘Settings -> Flying Pages’ to configure


  1. Upload the flying-pages folder to the /wp-content/plugins/ directory
  2. Activate the Flying Pages plugin through the ‘Plugins’ menu in WordPress
  3. Visit ‘Settings -> Flying Pages’ to configure


Does Flying Pages affect Google Analytics or similar tracking scripts?

The prefetch only downloads the resources, but does not execute the code (even inline JavaScript). So it will not affect Google Analytics or similar scripts

Can I preload only on mouse hover?

Yes, you can disable preloading links in the viewport and only on mouse hover. Set the delay in settings to “Don’t preload links in viewport”.

I’m not seeing any improvements in GTmetrix/Pingdom

Flying Pages preload links after the website is loaded and only improves the speed on clicking links. It doesn’t help you to speed up the initial load.

Does Flying Pages increase server load?

In short, yes. But Flying Pages is intelligent to stop preloading if the server is busy. You can also configure Flying Pages to limit the number of preloads per second or preload only on mouse hover

My ‘Fully Loaded Time’ in GTmetrix/Pingdom increased after installing Flying Pages

Flying Pages starts preloading when all other resources have completed downloading and browser has become idle. It will not affect the TTFB or First Contentful Paint or Time to Interactive. If you’re worried about the fully loaded time in GTmetrix/Pingdom, set the delay to a higher number in settings.

Is it compatible with WooCommerce?

Yes. Based on the number of links in the page and your hosting providers capacity, adjust the maximum requests per second to reduce server load. You can also configure it to preload only on mouse hover

Recommended hosting provider?

Flying Pages works with every hosting provider. However, to get the best results, consitent performance and no downtime, our recommended hosting providers are Kinsta and WP Engine.


September 19, 2019
Great work, thanks for this! Tested on a heavy site with Fastest Cache enabled and the difference was immediately perceivable.
September 18, 2019
I'm using Flying Pages along with Autoptimize and WP Fastest Cache, and my site is now noticeably faster to browse and I didn't see anything break.
September 18, 2019
Gijo did an awesome job by making combo of + quciklinks. The best feature is that we have the option to trigger this plugin's function after a specific time. Keep it up Gijo & keep providing us awesome knowledge.
September 17, 2019
5 stars is a well deserved rating. This is simply amazing, I have a heavy website with booking, dokan, woocommerce and a bunch more plugins (32 in total) and the navigation is very smooth. Except on product pages but nothing major. Right now I'm on a Digital Ocean server (via Cloudways) and it works well with breeze plugin too. Quick edit: I urge everyone who uses this to donate a bit to the dev. I buy several plugins for the sites I built and this one really deserves some recognition
Read all 15 reviews

Contributors & Developers

“Flying Pages” is open source software. The following people have contributed to this plugin.


“Flying Pages” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Flying Pages” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Ignore query strings by default


  • Allow 1 second in delay


  • Better compatibility for WooCommerce
  • Prefetching on mobile using ‘touchstart’


  • Bug fix – Start queue only after calling main function, causing errors in browser console


  • Bug fix – Issues with Swift Performance cache plugin when ‘Merge Scripts’ is enabled


  • Bug fix – Prevent max rps from resetting to default value on plugin update


  • Support WordPress 4.5+
  • Copy fixes


  • Bug fix – Set default config on plugin update/activation


* Configure ignore keywords
* Configure delay for prefetching from viewport
* Configure to prefetch on mouse hover only
* Configure maximum requests per second
* Configure mouse hover delay


  • Bug fix – Prevent wp-admin links from preloading


  • Bug fix for Safari/iOS Safari


  • Prevent logout links from preloading


  • Prevent external links from preloading on hover


  • Support for Microsoft Edge browser
  • Prevents current page from preloading


  • Initial release