If you have a WordPress performance problem that you cannot solve, this service is what you are looking for.
- We will analyse your SQL queries to identify table scans and database optimisations that will transform the speed of your site
- We will analyse your plugin profiles to identify poorly coded plugins that are consuming your CPU, RAM and/or disk resources and suggest better alternatives or possible code alterations
- We will implement fixes for your performance issues within this service. Where not possible, due to time constraints, we will provide advice and guidance and/or quotes for your next steps.
- Where necessary, we will profile your slow PHP code using xDebug to identify poorly written PHP code that’s consuming your CPU
- You will receive a bespoke report covering everything discovered and optimised.
There is no WordPress performance bottleneck we cannot solve.
What you get with the WPI Performance Analysis and Optimisation service
We will identify all bottlenecks affected your uncached page speed.
- We will go through your website and find the bottleneck(s) that are slowing your website.
- We will focus especially on URL(s) you identify as problem areas, but will also uncover and fix other underlying performance and scalability issues
- This could be as simple as replacing a plugin but sometimes need a bespoke solution or custom code
- If the performance problem is outside of your WordPress environment (e.g. a third-party API) we will give you advice and recommendations based on our discoveries
- If the performance problem requires custom code or code alterations to fix it, we will give you a quote to fix it, as well as directions as to which parts of the code need fixing so you can use your own developers if you wish.
- We will review your entire stack configuration and optimise its configuration
- Plugin configuration will be optimised to improve your site performance
- Slow queries will be discovered and fixed – these will be fixed permanently so the fixes transfer to any of your future server-stacks
- Cases of ‘too many queries’ per page will be discovered and fixed where possible – sometimes this requires too much custom PHP coding to cover inside of this service. Where that is the case, a temporary workaround will be established and a quote for the full custom code will be delivered and directions for the fix if you wish to use your own developers.
- We will perform a full xDebug PHP analysis on your theme and plugin code to identify problem areas.
- By the end of the analysis, your WordPress website will be running as fast as it possibly can, and you’ll have a plan of action to solve any remaining niggles in your PHP code. These can typically be solved by forwarding our recommendations to the relevant plugin authors, or hiring a third-party PHP developer to implement our recommendations.
- In some cases more optimisation will be required, at which point you will be given options to proceed.
What is a performance bottleneck?
Technically, performance bottlenecks come from various sources – high RAM usage, not using the object cache, slow SQL queries, too many SQL queries, queries inside loops, generally poor coding that hasn’t been tested at scale.
As an analogy, performance bottlenecks are like kinks in a hose pipe. If you have 3 kinks in your hose pipe, fixing one of those kinks means the water will still just be dribbling through – you need to fix all the kinks in your hose pipe in order to get your water flowing at full speed.
With performance bottlenecks it’s just like your hose pipe – you need to fix all of them to get your server delivering its full potential and your site running as fast as possible.
What is uncached page speed?
Your uncached page speed is the time it takes for WordPress to generate a page. Tools like GT Metrix and Google Page Speed will often call the uncached page speed your TTFB or First Contentful Paint. There are slight differences in these measurements, and it’s true that if you cache a page then you can get your TTFB and FCP down really low, but you’ll still have high TTFB and FCP for uncached pages. It’s very common that you cannot cache every page, and if you have an eCommerce site then as soon as your user makes a purchase they will be using uncached pages.
Probably you already have page caching set up on your site (if not you should!), but you’ll notice slow uncached speed at various places:
- Slow wp-admin means you have slow uncached page speed
- Slow checkout speed means you have slow uncached page speed
- Slow pages when logged in means you have slow uncached page speed
- Slow shop filters that you cannot cache means you have slow uncached page speed
Fixing your uncached page speed is what we focus on with this performance service which ultimately means your server can support many more users without upgrading the server (more bang for your buck!), and all uncached pages will load far more quickly.
Having slow checkouts or slow wp-admin costs you money – this performance analysis service is not an expense, it’s an investment and fixing your uncached page speed will bring you great returns that pay back the price of this service many times over.
Often, we see uncached page speeds above 10 seconds, sometimes even higher (some above 60 seconds!), and typically we’ll aim to get your uncached page generation speed down to a second or so. If your pages take 10 seconds to generate, that’s typically 10 seconds of your CPU being at 100%. Fixing your uncached page speed allows your server to breath meaning it will be able to serve up everything else far faster. i.e. fixing your uncached page speed also improves your cached page speed times.
Rest assured, we will find your performance bottlenecks, guaranteed!
This performance analysis work is carried out by our founder, Dave Hilditch, an industry guru for performance optimisation.
There has never been a performance problem Dave can not figure out and fix. His background is building the technology for Skyscanner where the databases had billions of rows of data, and there were millions of DB queries per day. He is the person who coded up Scalability Pro, Faster Woo Widgets and Super Speedy Search to make your WordPress websites scale to millions of products and beyond. He is also the author of our Rocket Stack build guide.
This Performance Analysis service includes a guarantee that we will find the performance bottlenecks you need to fix to unleash your server’s full potential. We will also provide proof that the bottlenecks identified are the ones that need to be fixed to unclog your system. In many cases these bottlenecks also end up solved inside this performance analysis job, but please understand that the cost and time of solving different performance issues varies wildly (how long is a piece of string), so we cannot guarantee that the problems will all be solved.
Knowing where your WordPress performance problems lie is the biggest part of the performance optimisation problem. After this service, you will have a clear understanding of the speed issues facing your site and how to solve them, and it’s highly likely that we’ll be able to fix your performance issues inside this service too.
How long does the performance analysis take?
Typically, if Dave is available, we can complete a performance analysis within two weeks elapsed time, but depending on the bottlenecks it may take up to two months to complete. When analysing performance, there are many aspects that consume days such as cloning servers, load testing, query logging etc. When fixing performance issues there are even more aspects that consume days or weeks such as finding replacement plugins, fixing code, or waiting for plugin developers to fix code.
The true answer is that Dave will keep working until you are happy that all performance bottlenecks have been identified and solutions discovered.
Dave wants performance improved across the entire WordPress ecosystem, so parts of performance analysis jobs will be written up into a case study which will be published on our website. We will (if you wish) redact your URLs and other items to maintain your privacy, but themes, plugins, custom code will be mentioned and Dave will show readers in the article how the performance issues were identified and solved. The case study is separate from the bespoke report which will be tailored just for you. You will receive a copy any case studies that result from your performance analysis job prior to publication for your approval and you can choose whatever additional things in the case study you would like redacted.
No downtime involved
There will be no downtime, unless we advise you in advance (as part of our analysis) that downtime will be required so we can plan a suitable time.
What we need from you
Please prepare the following for us so we can complete your order quickly:
- A WordPress admin account for your website and your development website
- A URL (or URLs) where we can see your worst performing pages
- FTP or SFTP access so we can read your debug logs
- Screenshots if they help to understand your performance issues
- Please also prepare a backup of the files and database in case we need to make a clone of the site on one of our own stack builds for further analysis
- If you use SSH keys for your server, add our SSH key to your /root/.ssh/authorized_keys file (add a new line and paste the key)
- Any additional info that may help – especially if this performance issue is a recent development, tell us as much as you can about what happened recently that might be related. It’ll help us get to the bottom of the issue more quickly.
Questions you should answer
Please send answers to the following questions either before or after you’ve placed your order:
- Is your site WooCommerce, a blog, real estate or other custom post type?
- How many items do you have? Products? Variations? Users? Properties? Orders?
- What theme are you using?
- Any custom code? Third-party APIs?
- Which key plugins are you using?
- Which filters are you using?
- Which are your slowest URLs?
- What’s your uncached page speed?
- Have you checked your pages with Query Monitor to discover the slowest uncached pages?
- Do you have high RAM usage or high query counts or slow queries?
Our SSH key
Add the following key to your server if you use SSH keys to give Dave access. Add it to /root/.ssh/authorized_keys at the end of the file on a new line.
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAlGexBmYAra4iPBgZWSsPWnmXubAxA5rBxV+HXAK03/22hIn3S5NNVAV5FZ8LW2yiTV/6Kan3c7pELv0ym9OXNq85ZXED4ayz0lhZ77/G+AmZW/+1zdIYJFgwJH6RdHzqypJx08Yiw4+r/ScvHkEhO+pOQoz/b41RLKFU75zRZUjDBGtEZPBQWk+wBcVQZY4umyO/XDRYZqO2yfmwxwfFbVahumksAdUU6Z7l3mwQFOGP+i9XQaiU7EUirU6WHZR7vRea2HDEUrlOJi3W3XtNeHuQyYpOigRq3nxoPXH175hhEhIUpkjXIqLeGbBImQJynR2W2D2uyYFWDicbJmSpGQ== davehilditch
Whitelist our IP
Our IP4 for performance is 18.104.22.168, our IP 6 is 2a05:d01c:792:8d00:f8:3dcc:1b0b:57be
If you have a whitelist for SFTP and/or SSH access then please whitelist the IP addresses above.
We are saving the planet!
This might sound a bit over the top, but think about it – in the past, you get a performance issue, you add caching, then once that’s not enough you upgrade your server. With the uncached performance issues on your server, your CPU usage is at 100% instead of sitting down at 10%. That means more power usage.
Typically, our clients see a minimum of a 10x improvement in uncached page generation speed which means far less power being used and far more bang for your buck with your particular server.
Contact us for availability
If you have any questions about our performance analysis service, we’ve created a new Discord Server where you can come chat with Dave and Glyn prior to purchase.
We can discuss availability and any other performance analysis service questions you may have.Join our Discord