GetRentalWebsite
Display settings
Theme
Accent

Saved on this device only.

Book a demo

Why a Slow Fleet Page Loses the Booking, and What to Do About It

A slow fleet page loses renters before they see a vehicle. What Core Web Vitals measure, what makes rental sites slow, and the order to fix it in.

A slow fleet page loses the booking because the renter looking at it is almost never sitting still: they are on a phone, holding it in one hand, standing at a kerb or in an arrivals hall, with two competitors open in other tabs and a clock running. If your vehicle photos take five seconds to appear on airport cellular, the comparison is already over, and it was decided before anyone read a word about your fleet. Speed on a rental website is not a technical vanity project. It is the difference between being one of the three options a renter is comparing and being the one they closed.

The renter’s context: one hand, a kerb, and three lots open at once

The person loading your fleet page is not in the conditions you tested it in. Picture the two most common versions. The first is someone standing on a pavement outside a lot they just walked past, phone in one hand, checking whether you have a cargo van before they bother going in. The second, and the higher value one, is someone who has just landed, is walking through an arrivals hall with a bag in the other hand, and is deciding between the counter they can see, a shuttle to an off-airport lot, and the two search results they opened on the plane.

Both of them share the same constraints. One hand means one thumb, on a screen held at an awkward angle, with a moving background. Arrivals halls and airport kerbsides are among the worst mobile data environments there are, because a plane full of people all reconnect at once on the same cell. Neither renter is browsing. They are resolving a question, and they have already decided how long they are prepared to wait, usually without being conscious of it.

This is what makes a fleet page different from most pages on a rental website. It is the page that has to load fastest, because it is the page that gets loaded under the worst conditions, at the moment with the most commercial value. It is also, by default, the heaviest page on the site, because it is full of photographs. That contradiction is the whole problem in one sentence, and most of the rest of this article is about resolving it.

What Core Web Vitals actually measure

Core Web Vitals are Google’s attempt to turn “does this page feel fast” into three numbers that can be measured on real visits. web.dev documents them as a set of metrics covering loading, interactivity and visual stability. They are not a general quality score and they do not measure how good your content is. They measure specific moments in a page’s life that correlate with people giving up.

Largest Contentful Paint: when the vehicle actually appears

LCP measures how long it takes for the largest piece of content in the visible area to finish rendering. web.dev documents 2.5 seconds or less as good, and anything over 4 seconds as poor.

On a rental site, the largest element in view is almost always a photograph: the hero shot on a fleet page, or the first vehicle card on a class listing. That means LCP on your most commercially important pages is, in practice, a measure of how well you handle vehicle photography. Everything else on the page can be perfect and the score will still be bad if the hero image is a 4 megabyte JPEG straight off a camera. This is good news, because it means the single highest-leverage fix on most rental sites is also the most mechanical one.

Interaction to Next Paint: when the date picker answers

INP measures how quickly the page responds visually after a visitor interacts with it, taking into account the interactions across the whole visit rather than just the first one. web.dev documents 200 milliseconds or less as good and anything over 500 milliseconds as poor.

For a rental site, INP is the date picker metric. A renter taps a pickup date, and either the calendar opens immediately or there is a pause where nothing happens and they tap again. The same applies to opening a vehicle class dropdown, expanding an accordion of rental terms, or switching between the pickup and return location fields. Poor INP is almost always caused by JavaScript: a booking widget doing work on the main thread, a chat widget initialising, or several third party scripts all competing at once. A page can have a beautiful LCP and still feel broken because every tap lags.

Cumulative Layout Shift: when the page moves under the thumb

CLS measures how much visible content moves around unexpectedly while the page is loading. web.dev documents 0.1 or less as good and anything above 0.25 as poor.

This is the one renters describe without knowing its name. They go to tap “Reserve” on an SUV, a rate table finishes loading above it, everything jumps down, and their thumb lands on the wrong thing. On rental sites the usual culprits are rate tables that load after the vehicle cards, a cookie or promotional banner that pushes the header down, images without declared dimensions, and web fonts that swap in at a different size to the fallback. Layout shift is uniquely damaging on a booking flow because the mis-tap does not just annoy someone, it sends them to the wrong vehicle or the wrong page.

The 75th percentile rule and why it matters

web.dev documents that Core Web Vitals are assessed at the 75th percentile of page loads, split between mobile and desktop. That detail is worth understanding because it changes what “we tested it and it was fine” means.

A 75th percentile assessment asks whether three quarters of your real visits met the threshold. It deliberately refuses to let a fast median hide a slow tail. If your site loads in 1.8 seconds for everyone on office broadband and 6 seconds for everyone on airport cellular, the average looks acceptable and the 75th percentile does not. The rule exists precisely to capture the renter standing in the arrivals hall, which is the renter you least want to lose.

What actually makes rental websites slow

Rental sites are slow for a short list of repeatable reasons. In order of how often they are the main cause:

Unoptimised fleet photography. Someone photographs the lot on a phone or a DSLR, uploads the files at full resolution, and the page displays them at 600 pixels wide while the browser downloads them at 4,000. Multiply that by a dozen vehicle cards and the fleet page is downloading tens of megabytes to show something that needs a fraction of that.

A third party booking widget on every page. Many rental operators embed a reservation or availability widget from a booking platform. It is genuinely useful on the pages where someone books. Dropped into a global footer or header, it loads its scripts, its stylesheet and often its own fonts on the about page, the blog, the policy pages and the contact page, none of which will ever produce a reservation from it.

Chat widgets. A live chat bubble is one of the heaviest things routinely added to small business sites, and it usually loads on every page for every visitor regardless of whether anyone is staffing it. If it is not staffed during the hours your renters are searching, it is pure cost.

Multiple font families. Every additional font family, and every weight within it, is another file to download before text renders in its final form. A site using a display face, a body face, a separate face inherited from a booking widget and a fourth from a chat widget is downloading four typefaces to show the same rate table.

Page builder bloat. Visual page builders produce deeply nested markup, load their own stylesheets and JavaScript, and frequently ship the CSS for every layout option they support rather than the ones your page uses. The page looks the same as a hand-built one and weighs several times more.

Carousel scripts. Fleet photo carousels and testimonial sliders both pull in a library and, worse, often load every slide image up front. A six-image carousel where the renter sees one image has downloaded six.

Map embeds. An interactive map iframe on a location page is one of the largest single additions you can make to it. Location pages need to show where the lot is. They rarely need a fully interactive, draggable map loaded before the renter has asked for one.

An image strategy for vehicle photography

Vehicle photography is the reason rental sites are heavy, and it is also where the fix is most straightforward. Three decisions cover most of it.

Serve the dimensions you actually display

Work out the largest size each image is ever displayed at, then serve versions at and around that size rather than one enormous original. A vehicle card thumbnail in a three-column grid on desktop might display at around 400 pixels wide and around 350 on a phone. There is no reason for either to download a 4,000 pixel file. Generating a small set of widths and letting the browser choose the right one, using responsive image attributes, means a phone downloads a phone-sized file.

Always declare width and height on every image, or reserve the space another way. This costs nothing and it is the single most effective defence against layout shift, because it lets the browser hold the right amount of space before the file arrives.

Use modern formats

Modern image formats such as WebP and AVIF produce substantially smaller files than the JPEGs that come out of a camera at comparable visual quality, which matters enormously on a page carrying twenty vehicle photos. Keep a JPEG fallback if your audience includes very old browsers, but the modern format should be what almost everyone receives.

The practical workflow point for a rental operator: you should not have to think about this. Photograph the vehicle, upload the original, and the site should produce the sized and converted versions automatically. If your process requires someone to remember to resize a photo before uploading it, it will be skipped the week someone is busy, and that is how sites drift back to being slow.

Lazy load below the fold, never the hero

Lazy loading tells the browser not to download an image until the visitor is close to scrolling it into view. On a fleet page with twenty vehicles, this is exactly right for vehicles four through twenty. The renter may never scroll that far, and those files should not compete for bandwidth with the ones they can see.

The critical exception: never lazy load the hero image or the first row of vehicle cards. The hero image is almost always the LCP element, and marking it for lazy loading delays the exact thing the metric measures, making the page measurably slower while looking like an optimisation. This is one of the most common self-inflicted performance problems on rental sites, because “lazy load all images” is a setting in most page builders and it sounds like it should be an improvement. Load the hero eagerly, and where your platform supports it, give it a high fetch priority so it starts downloading before anything else.

Where a booking widget belongs

A third party booking widget belongs on the pages where a renter is ready to book, and nowhere else. In practice that is the booking or reservation page, the vehicle class pages, and the location pages. It does not belong on the home page footer, the about page, blog articles, or your terms and policies pages.

Everywhere else, use a plain link styled as a button that sends the renter to the page where the widget lives. The link costs nothing to load. The renter’s path is one click longer and the page they were reading is significantly faster, which is a trade worth making on every page where booking was not the reason they arrived.

There is a second version of this decision worth considering: whether the widget needs to load before the renter asks for it even on the pages where it belongs. A lightweight native form that captures pickup location, return location, dates and vehicle class, then routes into your CRM, avoids the widget entirely on most rental sites. Operators who confirm availability manually rather than running real-time inventory usually find the native form both faster and more honest about what happens next.

Layout shift from late rate tables and banners

Layout shift on rental sites is usually caused by something arriving late and taking up space that was not reserved for it. The three repeat offenders are rate tables loaded by JavaScript after the vehicle cards render, promotional or cookie banners injected at the top of the page, and images without dimensions.

The fix in all three cases is the same idea: reserve the space before the content arrives. If a rate table will occupy a certain height once loaded, hold that height from the start, showing a neutral placeholder rather than nothing. If a banner appears at the top of the page, render it in the initial HTML rather than inserting it afterwards, or overlay it rather than pushing the page down. If an image will be 400 by 300, say so in the markup.

Fonts deserve their own note here. A web font that swaps in at a noticeably different size from the fallback shifts every line of text it touches, which on a rate table means the whole table moves. Pairing each web font with a fallback stack of similar metrics, and limiting how many families you load, keeps that shift small enough to be invisible.

How to measure honestly: field data versus lab data

The most common measurement mistake is treating a single test result as the truth about your site’s speed. There are two different kinds of data and they answer different questions.

Field data is collected from real visits by real people on their own devices and networks. The Chrome User Experience Report is the public dataset of this, and its documentation explains that it reports real-user measurements aggregated over a rolling window rather than a single test. Field data is the answer to “how fast is this for my renters”.

Lab data is a single simulated load in a controlled environment with a fixed device profile and a fixed network profile. Lighthouse, the engine behind most speed scores, produces lab data. Lab data is the answer to “what is slow on this page and what would happen if I changed it”.

You need both, for different purposes. Field data tells you whether there is a problem. Lab data tells you what to do about it, because it is repeatable and it will show you the same result before and after a change.

Reading a PageSpeed Insights report

PageSpeed Insights shows both. The upper section reports field data for the page and origin, drawn from the Chrome User Experience Report where enough real-world data exists. The lower section is a Lighthouse lab run with diagnostics and opportunities.

Two things follow from that. First, a brand new page or a very low traffic site may have no field data at all, because there is not enough real-world traffic to report. That is not a failure, it just means you are working from lab data until traffic accumulates. Second, field data reflects a rolling window of past visits, so a fix you deployed this morning will not show up there today. Verify the fix in lab data, then wait for field data to confirm it over the following weeks.

What “90 plus” means, and what it does not

A performance score in the nineties is a lab score out of 100, produced by a single Lighthouse run against a simulated device and network. It is a useful, repeatable target, and we hold our own builds to it. It is worth being precise about what it is not.

It is not a Core Web Vitals assessment. Core Web Vitals are assessed on field data at the 75th percentile of real visits, as web.dev documents. A page can score in the nineties in a lab run and still fail its field assessment, because real renters are on slower devices and worse networks than the simulation, and because the lab run does not include your booking widget behaving badly for a real user on a cold cache.

It is also not permanent. A score is a measurement of one page on one day. Add an unoptimised photo batch, a new chat widget and a tracking script over the following six months and the number moves without anyone deciding to make the site slower. The score is a checkpoint, not a certificate, which is why performance belongs in ongoing maintenance rather than in a launch checklist.

A practical order of work for an existing slow rental site

If you have an existing rental site that is slow, work in this order. It is arranged by return on effort, not by technical elegance.

Step What to do Why it comes here
1 Fix the images on your busiest fleet page Usually the largest single cause, mechanical to fix, no design decisions required
2 Remove third party scripts you are not using Chat widgets nobody staffs, old analytics, abandoned tracking. Pure subtraction
3 Restrict the booking widget to booking pages Removes the heaviest script from most of the site while keeping it where it converts
4 Reserve space for anything that loads late Rate tables, banners, images. Fixes layout shift without touching what loads
5 Cut font families and weights to what you use Fewer files before text settles, and less font-driven layout shift
6 Replace carousels with a simple grid or a first-image-plus-gallery pattern Removes a library and stops loading slides nobody sees
7 Swap interactive map embeds for a static map that loads the full map on click Location pages get most of the benefit at a fraction of the weight
8 Address structural weight, such as page builder output Most disruptive, and steps 1 through 7 often make it unnecessary

Measure before step one and after step four. If field data has not started to move by then, the problem is structural and step eight is where the remaining work is.

How speed interacts with search visibility, without overclaiming

Google’s own documentation on page experience states that its ranking systems aim to reward pages that provide a good user experience, and it names Core Web Vitals as part of what that covers. That is the honest, citable version of the relationship, and it is worth resisting the temptation to inflate it.

Speed will not make an irrelevant page rank for a search it does not answer. A fast page with nothing specific to say about cargo van rental will lose to a slower page that genuinely answers that question. The more accurate way to think about it is that speed removes a disadvantage rather than creating an advantage: among pages that are similarly relevant and similarly useful, the one that loads badly is the one carrying a handicap.

The stronger argument for speed is not the ranking one at all. It is that search visibility only matters if the renter who clicks through stays long enough to see your fleet. Ranking third and loading in two seconds beats ranking second and loading in six, because the second position collects the click and the six seconds loses the booking. Every performance decision in this article is fundamentally about that renter in the arrivals hall, and the ranking effect is a secondary benefit rather than the point.

Where this leaves an independent operator

None of this needs a redesign to start. Sized images on the fleet page, a booking widget confined to the pages that need it, and reserved space for anything that loads late will move most rental sites a long way, and all three are maintenance decisions rather than design ones.

What they do need is somebody keeping them true after launch, because a site gets slow gradually and nobody notices the week it happens. A managed rental website is built lean and kept lean, with the photography pipeline, the script discipline and the ongoing checks included rather than quoted as a separate project. Operators running airport and off-airport counters, where the arrivals hall connection is the normal case rather than the edge case, tend to feel this first. If your current site is the problem, a rental website redesign usually starts with exactly the order of work above. Our pricing page sets out the three plans, and a live demo is the quickest way to see a fleet page built this way on a phone rather than described on one.

Sources

  1. web.dev: Core Web Vitals
  2. web.dev: Largest Contentful Paint (LCP)
  3. web.dev: Interaction to Next Paint (INP)
  4. web.dev: Cumulative Layout Shift (CLS)
  5. Google Search Central: Understanding page experience
  6. Chrome UX Report documentation

Frequently asked questions

What is a good load time for a car rental fleet page?

Aim for a Largest Contentful Paint of 2.5 seconds or less, which is the threshold web.dev documents as good for that metric. That is measured on real visits, not on your office wifi, and it is assessed at the 75th percentile of page loads so that the slowest quarter of your visitors still counts. On a fleet page, the largest element is almost always the first vehicle photo, so that photo is what the whole score usually hinges on.

Does page speed affect where a rental website ranks?

Google documents page experience, including Core Web Vitals, as one of the things its ranking systems consider, alongside relevance and the quality of the content itself. Speed will not push an irrelevant page above a relevant one, and a fast page with thin content still loses to a slower page that actually answers the search. The honest framing is that speed removes a disadvantage rather than creating an advantage.

Should I put the booking widget on every page of my rental site?

No. Load the third party booking widget only on the pages where someone is ready to book, and use a plain link or a lightweight native form everywhere else. A widget that loads on your about page, your blog and your policy pages is paying a performance cost on every visit to earn a booking on almost none of them.

Why does my rental site score well in a speed test but still feel slow?

Most speed tests report lab data, which is a single simulated load in a controlled environment, while the experience your renters have is field data collected from real visits on real devices and real networks. A lab run does not include a renter on congested airport cellular, an older phone, or a cold cache. Check both panels of the report and treat the field data as the one that describes your actual customers.

What should I fix first on a slow rental website?

Start with the images on your busiest fleet page, because oversized vehicle photography is the most common single cause of a slow rental site and the cheapest to fix. Then remove or defer third party scripts you are not actively using, then reserve space for anything that loads late so the page stops jumping. Structural work, such as replacing a page builder, comes last because it is the most disruptive and the other three steps often make it unnecessary.

Want a site like the one described here? Book a demo with GetRentalWebsite.