Website and WordPress speed optimization
VulCode, a software house from Kraków, speeds up websites that load slowly. Most are WordPress sites built with a page builder like Elementor: we remove heavy scripts and unused plugins, convert images to WebP and AVIF, and turn on caching and compression. We measure the mobile PageSpeed Insights score before and after, aiming for 90+.
from PLN 399
The figure for your scope comes in a free quote.
- 0-49poor
- 50-89needs work
- 90-100good
- Before the changes
- a baseline with a link to the report
- After the changes
- the same pages, the same conditions
Why a slow website loses visitors
Google measures speed on real visitors, separately on phones and computers, and rates a page by three Core Web Vitals. Each has a threshold for a good result, and past it a visitor waits for the content, taps with no response or hits a button that has just jumped.
LCP
main content shownFor the first seconds the visitor looks at a blank or half-built screen and cannot tell whether the site works at all.
INP
response to a tapNothing happens after a tap, so the visitor taps again or leaves.
CLS
layout stabilityContent jumps while loading and a finger lands on a different button than intended.
Diagnosis first: what we measure
Before we change anything, we measure the site in PageSpeed Insights in mobile mode: each page type separately and several times in a row, because the score shifts by a few points between runs. If the site has enough traffic, we also look at real-user data in Search Console.
- 30%TBTTotal Blocking TimeWhat it measures
How long scripts block the page while it loads. In the lab test it stands in for INP.
Where we look for the causeBuilder and plugin scripts, jQuery, chat widgets and ad pixels.
- 25%LCPLargest Contentful PaintWhat it measures
When the main content shows, usually the image or the heading at the top.
Where we look for the causeA server reply without caching, a heavy image at the top, styles and scripts the browser waits for.
- 25%CLSCumulative Layout ShiftWhat it measures
How much the content jumps while loading.
Where we look for the causeImages and embeds without dimensions, a font swap, the cookie banner.
- 10%FCPFirst Contentful PaintWhat it measures
When anything at all appears on screen.
Where we look for the causeStyles and fonts loaded before the content, no compression.
- 10%SISpeed IndexWhat it measures
How fast the visible part of the page fills in.
Where we look for the causeLoading order: what could wait goes ahead of the content.
What we change in the site's code
We change what the measurement points to as the cause, and the look and content of the site stay the same. The diagram shows what goes, what gets lighter and what loads only after the content.
Heavy builder scripts and unused plugins
We switch off the builder modules the site does not use, and remove plugins with no job or load them only where they are needed.
Images in WebP and AVIF
Every image at the right size, and the ones further down load only when someone scrolls to them.
Caching and compression
The server sends a ready, compressed page from the cache instead of building it again on every visit.
Fewer third-party scripts
Chat widgets, ad pixels and analytics load after the page shows, and duplicated or unused ones go.
No layout shifts
Images and embeds get their dimensions, the fallback font keeps the same proportions, and the cookie banner does not push the content down.
SEO basics along the way
Missing meta descriptions and structured data that we find during the diagnosis can be added right away.
Speeding up a WordPress and Elementor site
A page builder gives freedom of layout, but you pay for it in code: the styles and scripts of every module load on every page, even where the module is not used. We do not move the site to another system, we tidy up the one you have.
The same admin panel
You keep editing content in WordPress and the builder, just as before.
A test copy first
We switch off and set up plugins on a copy of the site, and the changes go live after you accept them.
A WooCommerce store
We measure the product page, the product list and the cart separately, because each of them loads different things.
- Page builder (Elementor)styles and scripts of every widget on every pagestaysloads only the widgets in use
- Builder add-on packthe whole pack loaded for a few widgetswe remove itwe rebuild the widgets in the builder itself
- Home page sliderits script and styles on every pagewe change itonly on the home page
- Contact formscripts on every page, though the form is only on the contact pagewe change itonly on the contact page
- Builder icons and animationsthe full icon set and an animation library everywherewe change itonly the icons in use, no animation library
- Two caching pluginsthey do the same job and get in each other's waywe change itone stays, set up from scratch
- Disabled and unused pluginsleft over from old changeswe remove itless code to keep updated
Measured before and after
Both measurements run under the same conditions, so the difference comes from the changes, not from another page or another mode. You get links to both reports and can rerun each of them yourself.
- ToolPageSpeed Insights (Lighthouse)
- Modemobile
- Pagesthe home page and every page type
- Runsseveral in a row, the median counts
- Mobile scoreBefore the changes: the baselineAfter the changes: target 90+
- Real-user dataBefore the changes: from Search Console, when the site has trafficAfter the changes: update with a delay
- Reporta link you can rerun yourself
When a speed-up is not enough
Sometimes the build of the site itself is slow: a theme or a builder that cannot be slimmed down without rewriting the template. We say so after the diagnosis, before you order the work.
Fixes are enough
The causes sit in plugins, images, caching and third-party scripts. We speed up the site you have, aiming for 90+ on mobile.
The theme or builder blocks the score
When the target cannot be reached without rewriting the template, we say so plainly, and the alternative is a new website. New websites we hand over score 95+ in PageSpeed.
The site is moving to another system or server
If you want to leave the current system or hosting anyway, we move the site with a redirect map so you do not lose your Google rankings.
What you get at the end
You get both reports, the list of changes and a site that looks the same as before. After acceptance we stay with it for the support period.
- 90+PageSpeed target on mobileAfter the changes, under the same conditions as the first measurement.
- 90 daysof support after acceptanceWe fix bugs caused by our changes at no extra cost.
- Measurement
- PageSpeed Insights, mobile
- Support
- 90 days from acceptance
- Report before the changes
- The score and metrics of every page measured, with a link to PageSpeed Insights.
- List of changes
- What we removed and what we changed, plugin by plugin, with the reason for each.
- Report after the changes
- The same pages and the same mode, with a link to the report.
- The live site
- It looks as it did, and you edit content the same way.
- Guidance for later
- How to add images, plugins and scripts so the score does not drop.
Questions about speeding up a website
About the causes, WordPress, the PageSpeed score and what happens after the changes.
Read next
Services that often go with a speed-up, and our guide to Core Web Vitals. Below them, blog articles on the same subject.
Is your website slow to load?
Send us the site address and tell us what worries you. We will reply within an hour with questions and a free quote.