Images
Size, format and lazy loading. Usually the biggest gain with the smallest risk.
Improve your website's load time and performance: images, scripts, hosting and Core Web Vitals. Measure, find the causes and fix them in a targeted way.
Load time is not a single number. There is the moment something visible appears, the moment the most important content is there, and the moment the page starts responding to taps and clicks. Google summarises this in the Core Web Vitals: loading speed of the largest element (LCP), responsiveness (INP) and visual stability (CLS).
Most delays arise in a few places. Typical culprits are uncompressed images, too many requests to third-party servers (advertising, analytics, font and map services), heavy site-builder or plug-in packages that load everything on every page, and slow hosting. Once you know the pattern, the cause is quickly found.
Good optimisation starts with a measurement and an order of priority: first whatever costs the most time. Reducing an eight-megabyte image to 300 kilobytes achieves more than hours of fine-tuning in the code. Then you measure again. That way the page improves on evidence, not on a hunch.
Anyone staring at a blank screen on their phone will not wait long. Every second in which nothing happens costs visitors, and someone who leaves does not call. Speed is therefore not a technical detail but part of the first impression.
Myth: “A fast server solves everything.” Fact: the bottleneck is usually in the content, not the server. A full-size photo straight from the camera at several megabytes, a dozen embedded third-party scripts or a carousel with five large images will cancel out any improvement in hosting.
Example (fictional): a photography studio loads twelve full-resolution images on its home page, and on a phone the page takes noticeably long. With correctly scaled images in modern formats, lazy loading of images below the visible area and a font served from its own server, the same page feels ready immediately, without removing a single image.
Size, format and lazy loading. Usually the biggest gain with the smallest risk.
Your own code and third-party scripts. Anything not needed for the first view is loaded later.
Fewer styles, hosted locally, with a fallback font while loading. Saves time and avoids passing data to third parties.
Server response time, compression and cache settings for returning visitors.
Reserve space for images and banners in advance so the text does not shift while something loads.
Lean code without unnecessary nesting and without components that nobody sees.
Speed is not a feeling but something you can measure. Google assesses three metrics that together describe how a page feels to real visitors. They differ in what they measure, and therefore also in their causes and remedies.
| Metric | What it measures | Good, by Google's guideline | Most common causes | Most effective levers |
|---|---|---|---|---|
| LCP (Largest Contentful Paint) | How long it takes for the largest visible element (usually an image or heading) to appear | up to 2.5 seconds; over 4 seconds is considered poor | Large images, slow server response, blocking scripts and styles | Shrink the image and load it early, speed up the server, defer scripts |
| INP (Interaction to Next Paint) | How quickly the page responds to taps, clicks or typing | up to 200 milliseconds; over 500 is considered poor | Heavy scripts that keep the browser busy, many third-party services | Slim down scripts, split up tasks, do without third-party services |
| CLS (Cumulative Layout Shift) | How much content shifts around while loading | up to 0.1; over 0.25 is considered poor | Images without dimensions, banners loaded late, fonts that jump while loading | Reserve space, include fonts properly |
You should distinguish two kinds of measurement: lab data is produced in a simulated test (for example in PageSpeed Insights or Lighthouse) and is good for troubleshooting. Field data comes from real visitors and shows how the page is actually experienced. The two can differ; looking only at the lab result can give you the wrong picture. Measure on mobile and more than once, because values fluctuate.
Work through the questions in order. Start at the first one to which the answer is “yes”.
The order reflects what is most often the main cause in practice. If you are unsure, start with the images.
An image is made up of pixels. The more pixels, the more data. A photo straight from a camera or phone often has several thousand pixels in width, whereas only a few hundred to a few thousand are usually needed on screen.
Worked example (assumptions chosen freely)
An image is displayed 390 screen units wide on a phone. The device has a triple pixel density. Then roughly 1,170 pixels of width are enough to look sharp. The file from the camera is 6,000 pixels wide, so about five times as many across and therefore around 25 times as many pixels in total.
It is not exactly true that the file is 25 times larger as a result, because compression comes into play. But the direction is clear: an image larger than necessary uses up data for no gain.
How to look after images over the long term without having to think about it every time is described in the guide Optimising images for your website. Questions of design are covered in Imagery and photos.
Every additional service on a page loads code from another server, runs it and waits for responses. That costs time and passes your visitors' data to third parties. For each service, ask: what does it bring, who needs it, and what happens if it is missing?
| Service | Purpose | Cost to the page | Possible alternative |
|---|---|---|---|
| Online fonts from a third-party server | Design | An extra connection, data passed to third parties | Store fonts locally or use system fonts |
| Embedded map | Directions | Many scripts, cookies | Address as text plus a link to the map app, load the map only after a click |
| Embedded video | Introduction | Loads the player and preview image straight away | Preview image with a link, load the video only after a tap |
| Chat window | Advice | Heavy scripts on every page | Load only on pages where advice makes sense, or replace with a contact button |
| Analytics with profiling | Evaluation | Script, cookies, consent required | Cookie-free, lightweight analytics |
| Social media embeds | Reach | Large script packages | Simple links to the profiles |
| Several plug-ins with extra functions | Convenience | Each loads its own files on every page | Combine functions or solve them in the code |
The aim is not to ban all services but to choose each one deliberately. Services needed on only one page should load only there. With every service removed, load time, data protection effort and susceptibility to errors all go down.
Not everything can be solved in the page content. The way a server delivers files also determines how quickly a page starts. The most important points:
Server response time. How long the server takes to respond at all. With dynamic systems (such as WordPress), the server rebuilds the page on every request unless a page cache is active. Statically generated pages are ready and waiting and are delivered almost instantly.
Compression. Text files (HTML, styles, scripts) can be made much smaller before transfer. Methods such as gzip or Brotli are standard and should be switched on.
Cache headers. With suitable settings, the server tells the browser how long it may keep files such as the logo, styles and images. On repeat visits there is then no need to load them again. Pages that change often get shorter times so that changes come through.
Current protocols. HTTP/2 and HTTP/3 bundle many requests more efficiently than earlier versions. Most hosts offer them; it is worth checking.
Location and delivery network. A server close to the visitors responds faster. A content delivery network (CDN) distributes files across many locations. For regional businesses with visitors in Germany, a good host in Germany is often enough; for an international audience a CDN is worthwhile, but it should be assessed from a data protection point of view.
Hosting plan. Very cheap plans share resources with many other sites. If the response time is permanently high, a change can help, but only once images and scripts are in order.
Nothing is more annoying than seeing a button slide away at the moment you tap it because an image above it is loading. The CLS metric measures exactly that. The causes are manageable and easy to fix.
A practical test: reload the page with a throttled connection (adjustable in the browser's developer tools under “Network”) and watch whether anything jumps.
This is what an optimisation project for a company website might look like. It is a pattern, not a series of measurements with invented results.
The order prevents the most common mistake: spending months polishing details while a single oversized image determines the result.
| Myth | Fact |
|---|---|
| A score of 100 in PageSpeed Insights is the goal | The score is an indication, not a goal. What matters more are the measured values of real visitors and whether the page feels fast. A perfect score at any price leads to giving up useful features |
| More hosting power solves everything | With heavy pages it helps little. Slim down the content first, then look at the hosting |
| Compressing images makes them ugly | Moderate compression is barely visible even with photos. If you do not believe it, compare both versions side by side |
| A cache plug-in is enough | It helps with dynamic systems but does not fix heavy images or scripts |
| Fast pages are a matter of technology, not design | Design plays its part: hero videos, a variety of fonts and animations cost time. Good design plans for performance |
| Speed only matters for Google | Visitors notice it first. Google only rates what visitors experience anyway |
If you would like help with the evaluation, a measurement including a list of measures is offered separately and described in the quote (projects start from €2,500). Closely related is the technical side of search engine optimisation, see Technical SEO.
| Page type | Main bottleneck | First measure | Check afterwards |
|---|---|---|---|
| Trade business with a gallery of references | Dozens of images at original size | Create image variants, lazy-load the gallery | LCP on the home page, data volume of the gallery page |
| Consultancy with chat and an embedded calendar | Third-party scripts on every page | Load chat and calendar only on the contact page | INP, number of requests to third-party servers |
| Shop on WordPress with many plug-ins | Server response and amount of script | Page cache, clear out plug-ins, tidy the database | Server response time, basket responsiveness |
The pattern is always the same: first locate the cause, then pull the simplest effective lever, then measure. Anyone who starts with the server when the images are the problem loses time and money.
Pages get heavier over time: an image here, a script there. A performance budget sets limits so that this does not creep up unnoticed. It consists of a few clear rules known to everyone who publishes content.
The budget does not protect against every mistake, but it makes the subject visible. The team understands that every addition sets off a time calculation.
| System | Typical strengths for speed | Typical weaknesses | Effective steps |
|---|---|---|---|
| Site builder | Simple setup, occasionally built-in image optimisation | Little access to the code, many built-in scripts, little control over fonts | Reduce animations, prepare images, activate built-in optimisations |
| WordPress | Wide choice of optimisations, page cache, proven image methods | Accumulations of plug-ins, heavy themes, slow database queries | Review plug-ins, change or slim down the theme, cache, clean the database |
| Statically generated site | Ready-made files, instant delivery, little attack surface | Effort when making changes, if there is no editing tool | Keep images and scripts lean, set cache headers |
| Custom application | Control over everything | Responsibility for everything | Measurable targets and tests in the development process |
You will find more on choosing a system on the page CMS and technology.
Changing host is a bigger decision than optimising an image. It is worthwhile in these cases:
Before changing, check the contract term, migration support and how your domain and email addresses will move across. Have the move planned so that there is no downtime. Aftercare is described under Website maintenance.
Fonts are easily overlooked in optimisation, even though they have a considerable influence on how a page builds up. Every font file is a separate download, and the browser has to load it before it can show text in the intended form. Depending on the settings, the text stays invisible for that time or first appears in a fallback font and then jumps.
Fewer styles. Each font style (regular, italic, bold, semibold) is a file. Two to three are usually enough. Variable fonts bundle many styles into one file and can make sense when several weights are needed.
Modern formats. The WOFF2 format is much smaller than older formats and is supported by all common browsers.
Only the characters needed. A font can be limited to the characters actually used (subsetting), which saves data.
Control the loading behaviour. With a suitable setting, a system font appears first and is swapped as soon as the web font is there. Choose a fallback font with similar dimensions so that the text hardly jumps.
System fonts. If you load no font of your own at all, you save the file completely and need not worry about licences and data protection with third-party servers. For many business websites that is a sensible choice. More on this in the guide to typography.
Keep styles lean. Design rules (CSS) should be loaded only as far as they are needed. Large packages with thousands of unused rules make the file unnecessarily big; tidying up, or a lean set of rules written specially for the site, helps.
A rule of thumb: everything needed for the first visible view should arrive early and small, the rest later.
We test your page with standard measurement tools and on real devices, and list what slows it down most.
Suitable dimensions, modern formats, lazy loading below the visible area. Usually the biggest lever.
Every embedded script costs time. We remove what has no benefit and load the rest later.
Few font styles, loaded from your own server, and lean design code.
Caching, compression and a current server version, so that returning visitors hardly wait.
A measurement with a report is offered separately and described in the quote; projects start from €2,500. The effort of implementation depends on whether the site is simple (images and settings) or whether heavy systems, plug-ins or third-party code have to be reworked.
The calculation behind it: how we calculate.
Google gives guideline values for the Core Web Vitals: the largest visible content should appear within 2.5 seconds, the response to input should stay under 200 milliseconds and the layout should not jump. More on this in the guide Improving Core Web Vitals.
Yes. Free tools such as PageSpeed Insights show values and recommendations. It is important to measure on mobile and more than once, because values fluctuate.
Load time is one ranking signal among many; slow pages, in our experience, lose visitors. A fast page does not make up for weaknesses in content, however.
It can help, but it does not repair the causes. If you do not tackle images, scripts and structure, you only speed up the rest. That is why we measure first.
Formats such as WebP are much smaller than classic photo files at the same quality. That reduces the data volume, especially on phones. Practical tips are in the guide Optimising images for your website.
Yes, speed is part of it. You will find further checkpoints such as indexing and redirects under Technical SEO.
After every major change and at least once a quarter for the most important pages. Values fluctuate, so look at trends.
No. Speed is a prerequisite, not a substitute for content, structure and clarity. Fast but useless helps nobody.
Check which settings the site builder offers (image optimisation, doing without animations). If you have reached its limits, a change is an option. You will find an assessment under CMS and technology.
It is helpful, but not essential. The data Google collects for Search Console shows field data if there are enough visitors. For small sites, lab measurements on several devices are enough.
If your visitors are widely spread or you have peaks in visitor numbers. For regional sites with modest traffic, good hosting in Germany usually provides enough speed. If you use a CDN, data protection must be checked as well.
A conversation about load time costs you nothing. Tell us what your situation looks like.