NM Company
A portfolio and enquiry site for events firm NM Company
A visual portfolio and enquiry website for an event management and supplies firm — presenting a full...
Read itGutenberg · ACF · Headless
WordPress done by people who will not install Elementor. Custom Gutenberg blocks, a plugin budget under ten, sub-1.5-second loads — and an honest conversation about when you should be on Laravel instead.
Most of what people hate about WordPress is not WordPress. It is a page builder, a $59 theme, thirty-eight plugins installed over six years, and nobody with the authority to say no. Built properly — custom Gutenberg blocks, a plugin budget, Redis object caching, no page builder anywhere near it — WordPress is a fast, secure and genuinely pleasant content platform, and it is still the right answer for a great many content-led sites. We build it that way. We will also tell you, without being asked twice, on the day your site stops being a site and becomes an application — because that is the day WordPress stops being the right answer, and most agencies will just sell you another plugin.
Talk to us about your siteOur acceptance bar on a custom WordPress build. Achievable, and not achievable with a page builder.
On a typical build. Every one justified in review. Each plugin is a dependency and an attack surface.
We do not install Elementor, Divi or WPBakery. The markup cannot be made fast and the content cannot be migrated out.
Performance score on the templates we ship, verified in CI rather than screenshotted once at handover.
We will start with the part most agencies will not say out loud: a great deal of what is wrong with WordPress sites is not WordPress. It is a page builder, thirty-eight plugins, a theme bought for $59, and nobody with the authority to say no. WordPress itself, built properly, is a fast, secure, entirely respectable content platform. We build it properly.
We do not install Elementor, Divi or WPBakery. They produce markup that is impossible to make fast, impossible to restyle without a rebuild, and impossible to migrate away from — which is precisely why they are so profitable for the agencies that install them.
Instead we build native Gutenberg blocks, or ACF blocks where the editing experience calls for it, each one mapped to a real content pattern your marketing team actually uses. The editor sees a small set of well-named blocks with sensible constraints, not an infinite canvas and a stack of divs. The output is clean, semantic HTML we can hit Core Web Vitals with, and the design system is in code where it belongs rather than in a database row.
Every plugin is a dependency, an attack surface and a future upgrade blocker. We keep the count under ten on a typical build, and each one has to justify itself in review. In practice that means: ACF for structured fields, a caching layer, a security plugin, an SEO plugin, and very little else. Anything bespoke is a small purpose-written plugin in your repository, under version control, that we can read.
Object caching with Redis. Full-page caching at the edge. Images converted to WebP and served responsively. Query monitoring to find the plugin doing forty queries in a loop on every page load — there is always one. Critical CSS inlined, everything else deferred. A well-built WordPress site loading in under 1.5 seconds is entirely achievable, and the fact that most do not is a choice somebody made, not a property of the platform.
Keeping WordPress as the editorial back end and putting Next.js in front of it via WPGraphQL is a real pattern and we build it. It makes sense when your marketing team is fluent in WordPress and refuses to move, and the front end needs to be a real application. It does not make sense as a default: you are now operating two systems, previews are harder, and you have given up half of what made WordPress pleasant for the people using it. We recommend it perhaps one time in five, and we tell you when it is the other four.
WordPress stops being the right answer when the site becomes an application: user accounts with real permissions, transactional workflow, business logic, a mobile app that needs an API. People reach for a plugin for each of these, and the plugins exist, and the result is a business-critical system held together by parts nobody in your building can read. That is the point at which we would move you to Laravel — and we would say so rather than sell you another six plugins.
| Choose WordPress | Choose something else | |
|---|---|---|
| Content-led marketing site | Yes. Your team already knows it, the editorial experience is genuinely good, and it will rank perfectly well. | Next.js, if the site and your product should share one component library, or if performance is commercially central. |
| Blog or publication at volume | Yes, and it is hard to beat. Editorial workflow, revisions, roles and scheduling are all mature and free. | Little reason to look elsewhere unless you need a front end that is really an application. |
| User accounts with real permissions | No. There is a plugin for it, and that plugin is how this becomes a system nobody in your building can debug. | Laravel. Real authorisation policies, real roles, a real admin panel, and code your team can read. |
| Transactional business logic | No. Approvals, workflow, reconciliation and inventory are not content, and WordPress has no opinion about them. | Laravel, without hesitation. This is the line where staying on WordPress starts costing you real money. |
| Ecommerce, modest catalogue | WooCommerce is fine up to a few thousand SKUs with Indian gateways and shipping integrated properly. | Past that, or with complex pricing, B2B tiers or omnichannel inventory, a custom Laravel build or Shopify will cost less to run. |
| A mobile app needs an API | The REST API exists, but you are now maintaining a business-critical API inside a CMS. It will not age well. | A real backend — Laravel or Node — with WordPress kept for content only, if it is kept at all. |
A small set of well-named, constrained blocks mapped to real content patterns. Clean semantic markup, design system in code.
Redis object cache, edge caching, WebP, critical CSS, and the query monitor run that finds the plugin doing forty queries in a loop.
Razorpay and PayU, GST-correct invoicing, Shiprocket or Delhivery integration, and a checkout that survives a sale day.
Getting your content out of Elementor or Divi and into real blocks, without losing a page or a ranking.
WPGraphQL back end, Next.js front end. We build it when it is warranted, and we tell you when it is not.
Compromised site triage, plugin audit, WAF at the edge, headers, permissions, and a maintenance regime that holds.
Two different journeys, and the first four steps are the same. Which one you are on becomes obvious by step two.
Every plugin, every custom post type, every page-builder template, and a full crawl of the URL structure. This is where we usually find the abandoned plugin that has not been updated since 2021 and has database write access.
If it is content with a contact form, it stays on WordPress and gets rebuilt properly. If it has grown user accounts, permissions and workflow, it is an application wearing a CMS, and we will say so plainly rather than sell you plugins.
Page-builder content is a pile of nested divs, not structured data. We extract it into real content types with real fields, so the next redesign is a template change rather than another full rebuild.
Custom blocks, no page builder, performance budget enforced. Every URL preserved or 301-mapped before launch, with the old crawl as the acceptance baseline.
Redirects live, sitemap resubmitted, Search Console watched daily for a fortnight. Your editors get a session on the new blocks, and the documentation is in the repo rather than in someone's head.
We will give you a straight answer, including the one where we tell you to move to Laravel and lose ourselves a WordPress project. That is the whole reason the answer is worth having.
FAQ
Proof
NM Company
A visual portfolio and enquiry website for an event management and supplies firm — presenting a full...
Read itSwasthya Sarathi
A multi-service healthcare platform that helps people find hospitals, doctors, labs, medical stores,...
Read itMV Tech Education
A course-catalogue and admissions website for a Bihar vocational institute — leading with industrial...
Read itReact that renders on the server, ranks in Google and does not ship 300 KB of JavaScript t...
ExploreThe framework we have shipped more business systems on than any other. Laravel 12 with Oct...
ExploreOne codebase, both stores, and a release you can fix the same afternoon. We build React Na...
ExploreLet's talk wordpress development
A senior engineer reads every enquiry. You'll get a real answer — scope, risk and a number — within one business day.