Fast is easy.Fast and still working is the job.
Velocity Forge measures what your visitors actually get — and names the control, the file and the plugin behind every slow interaction, not just the number. It defers only what is safe to defer, and with Pro the rule it talked you into is measured for a day and taken back on its own if the site got slower. Every change has an undo, including one that works when the admin will not load.
being forged — launching with the Avakode suiteMaking a site faster is easy. Not breaking it is the product.
Nothing is optimised on activation — the plugin measures first. And 20 handles and 15 URL patterns are hard-railed: they cannot be optimised at all, by any setting, filter or database edit.
4deferred, delayed or dequeued
6refused: these are rails
A rule aimed at jQuery, the block editor, the cart, Stripe, a captcha or our own beacon simply never applies. That is not a default you can change — it is the reason the other rules are safe to switch on at all.
And nothing here is permanent: every rule reverts on its own, safe mode switches the lot off, and a constant in wp-config.php stands the plugin down without reading the database.
It names the element, watches the rule, and takes the rule back when the numbers say so.
Attribution down to the control and the plugin behind it, an optimiser with rails you cannot switch off, and a rule that undoes itself when a day of real visitors disagrees with it.
The element, not just the number
LCP, INP, CLS and TTFB from real visits — and for a slow interaction, the control it hit, whether the time went on a busy main thread, on your own handler or on the repaint afterwards, and which plugin owns the script. A 75th percentile per element over 28 days, never one visitor’s anecdote.
The optimiser, as one purchase (Pro)
Defer, async, delay-until-interaction or dequeue per handle; critical CSS inlined under a 14 KB cap; WebP and AVIF sidecars with your originals kept; autoload cleanup with a backup each. jQuery, checkout, payment SDKs and captchas are never optimisable, even by mistake.
Rules that take themselves back (Pro)
A new rule is measured for a day against the week before it. If LCP or INP is worse by more than your threshold, it is reverted through the same revert your own button uses, the reason is written onto the rollback event, and the numbers arrive by e-mail. Never on too few measurements, never in Safe Mode, never on a rule you pinned.
A regression that says what changed
After an update the row does not only say the page got slower. It names the scripts and stylesheets the front end gained, lost or resized — read from a snapshot of the real page taken before the files were replaced.
Autoloaded options with an owner
The heaviest autoloaded options, each with the plugin that wrote it. “wp_options is four megabytes” is not something you can act on until the rows have names beside them.
The way out, drilled (Free)
Five checks press the real escape hatches — the panic file, a loopback on the genuine secret URL, the safe-mode option, the backups table — and restore each of them exactly as found. Safe Mode also sits in the admin bar on the front end, where you notice the breakage.
9 rules of the 25, chosen by looking at the page.
No headless browser and no guesswork: the extractor reads the HTML your server actually sent and matches selectors against the first screen. What it keeps is inlined; the rest arrives without blocking the render.
- @font-face always survivesa face that arrives late is a screen of invisible text, which is a worse bug than a slow one.
- @keyframes only if something kept uses theman animation nobody references is weight, not motion.
- Capped at 14 KBthe first congestion window — past it, inlining costs a round trip instead of saving one.
- No match, no changewhen no record fits the request the original stylesheet is served exactly as before.
Measure, change one thing, and let it check its own work.
Measure, then read the names
Activate and change nothing. Within days Monitoring names the ten controls that cost the most interaction time and the five elements that delay the first paint, with the file and the plugin behind each.
Apply one rule
Work the asset list one handle at a time. The rails stop you breaking checkout — and with Pro the rule you just made is watched for a day and undone on its own if a real day of visitors disagrees.
Read what the update did
Every plugin update is compared against your baseline, and the row says which assets the front end gained or lost. It reaches you by e-mail, or with Pro through Telegram, Slack or your own webhook.
Break the site on purpose. Then take any way out you like.
The measure of a performance plugin is not how fast it makes a good day. It is what you can do on a bad one — and whether the escape hatch still opens when the database is the thing that went.
the site is up database: fine
three ways back Nothing is broken yet. Press «Break it» below, then take any of these three.
And if you delete the plugin outright: uninstall restores every autoload value it changed and has not reverted — opt-in or not, and whether or not velocityforge_safe_mode was ever switched on. A performance plugin must not leave its white screen behind.
Knows your stack
Velocity Forge vs the caching plugin you already have
| What you are comparing | Velocity Forge | a page cache |
|---|---|---|
| What it works on | Assets, critical CSS and images — what the browser has to do | The HTML your server has to build |
| How it knows it worked | Real-user field data, p75 by device over 28 days — and per element, so a number has a name | Usually nothing; you re-run a synthetic test |
| When a rule turns out to be wrong | With Pro it is watched for a day and reverted on its own, with the reason and the numbers | It stays on until somebody notices |
| What a slow release tells you | Which scripts and stylesheets the update added, dropped or grew on the front end | Not covered |
| Undoing one change | Every rule reverts on its own, Safe Mode sits in the admin bar, a wp-config constant disables the plugin without touching the database | Deactivate, all of it, and hope |
| Being told a page regressed | E-mail free; Telegram, Slack or your own webhook with Pro | Not covered |
| The first minute after installing | Nothing changes — it measures first and asks you to apply rules one at a time | Switch it on and the page is usually faster straight away their win |
| Page caching | Not its job — keep the one you have | Exactly its job, and it is good at it their win |
Velocity Forge is not a page cache and does not want to be one. Run both: the cache saves your server, this saves the browser.
One licence for the optimiser, the watch and the alert that wakes you.
No upsells, no surprises.
What runs where in Velocity Forge
Which work happens inside your own install, what leaves it, what needs a paid plan, and what a lapsed licence leaves behind.
What the free tier does inside your own install
- INP and LCP named down to the plugin
- The regression names the assets an update changed
- Recovery drill — a button that presses the escape hatches on a day when nothing is wrong: the panic constant, a probe write to the panic file's directory, a real loopback request to the secret panic route with the real secret, the safe-mode option's round trip, and the autoload backups table. Everything it touches is put back exactly as it was found, including the on-disk copy of the secret
What leaves your site when a feature is on, and where it goes
- Usage telemetry is off until you switch it on: every send reads the site option `forge_telemetry_consent` first, and stops when it is not "1".
- With telemetry on, batches of events POST to https://api.avakode.com/telemetry/batch.
- The in-admin feedback form POSTs your rating and comment to https://api.avakode.com/feedback when you press Send.
- The Forge Suite dashboard health card GETs https://api.avakode.com/health.
What needs Pro, credits or an outside service
- Pro is a separate plugin. With no Pro add-on loaded the plan is free, whatever is stored in the database.
- Licence activation and every AI request go to https://api.avakode.com.
- AI actions spend credits from your Avakode balance; the price per action is decided on the server (1 credit for a translation, 3 for a whole post).
- A request over 10,000 tokens costs a multiple of the base action price.
What happens when the licence lapses
- Free features keep working. The wp.org base ships no licensing SDK: without the Pro add-on answering "pro" through the `forge_pro_plan` filter the plan reads free.
- When the paid ladder answers "free" in so many words, the stored grace marker `forge_license_last_pro_at` is cleared and Pro gates close on the next admin request.
- Pro keeps working for 6 hours of silence from the licence server — that window covers an outage, not a revoked licence.
- A lapse removes no data. Tables and options go away only when you uninstall the plugin.
How long data is kept, and how you take it out
- Field beacons are kept 30 days by default; the setting accepts 1–365.
- What `beacon_retention_days` counts changed in 1.1.0, and a one-time migration rewrote the stored value.
- Pro exports field data as a download.
Your cache plugin stays, and it is recognised by name.
Nothing to migrate
No settings to port. Install it, let it measure for a week, and read the elements it names before you change anything.
It stands down where your cache plugin already works
Seventeen caching and optimisation plugins are recognised, and the notice says which of our features stepped back for yours — so the two never fight over the same handle.
Every change is reversible, and you can prove it
Rules revert one at a time, the drill presses all three escape hatches on a good day, and uninstall restores any autoload backup still outstanding whether or not you opted in.
Asked before the first rule goes live
Measure first. Then make it fast.
The free core measures, names the element and reverts. Pro defers, converts and inlines — and watches the rules it made.
One forge. Eleven tools. One fire.
Every tool is forged in the same workshop — one AI engine, one design language, one account. Take more off the wall and the whole set gets cheaper.