Custom PHP and JavaScript development
for the work that does not fit a template.

Custom PHP and JavaScript development is what you buy when the off-the-shelf route has run out. Portals, internal tools, commerce that breaks the usual rules, and integrations nobody sells as a plugin. Gatilab scopes the data model before the interface, which is the reverse of how most quotes are built and the reason ours hold.

850+ clients served
$38M+ in client revenue influenced
10,000+ sites running our plugins

Delivery is remote, with calls in IST. You keep the code, the accounts, and every login in your own name.

Where this work usually goes wrong.

Three failures account for most of what we get asked to rescue. All 3 are scoping problems wearing technical costumes.

01

The plugin nearly does it

Most custom builds start as a plugin that covers 80 percent of the job. The last 20 percent is where the money goes, and it is worth deciding early whether to bend the plugin or replace it, because bending it forever is the expensive option.

02

The data model was an afterthought

When the schema is designed around the first screen, every screen after it fights the schema. Reporting gets slow, edge cases multiply, and the rebuild arrives sooner than anyone budgeted for.

03

It works until two people use it

Internal tools written for a single user fall over under concurrency: double writes, stale reads, and jobs that silently overlap. Load is a design decision, not something you discover in production.

What you can actually buy.

Six pieces of work, each scoped on its own. Most engagements start with one and add the others once the first has paid for itself.

Internal tools and admin portals

Dashboards, approval flows, and operations tooling that replace the spreadsheet without replacing the way your team actually works.

Role-based accessAudit trailsReportingExports

Custom commerce logic

Pricing rules, quotations, subscriptions, and fulfilment that standard carts refuse to model. Built on WooCommerce where that fits and outside it where it does not.

QuotationsSubscriptionsPricing rulesFulfilment

Bespoke WordPress engineering

Custom post types, block development, REST endpoints, and plugins written for your case rather than shipped to 10,000 sites and configured down to yours.

Custom blocksPluginsREST endpointsCLI commands

Data modelling and migration

The schema designed before the screens, and the move from whatever holds the data now planned as a first-class piece of work rather than a launch-week scramble.

Schema designETLLegacy migrationValidation

Background jobs and queues

Imports, syncs, and scheduled work that run reliably, log what they did, and can be replayed when an upstream system has a bad day.

QueuesCronRetriesObservability

Hardening and handover

Tests around the parts that would hurt, documentation your next developer can read, and the repository in your organisation, not ours.

TestsDocumentationCode reviewHandover

How this is priced.

Prices are in rupees and exclude tax. The scoping sprint is a fixed fee and comes off the build price if you go ahead.

Scoping sprint
from ₹27,000

For teams who need a real number and a written plan before committing to a build.

  • A read of the existing code, data, and hosting
  • Risks and unknowns named rather than buried
  • A scope with the assumptions written down
  • Yours to take elsewhere if you want
Book a scoping sprint

The fee comes off the build price if you go ahead with us.

Most chosen
Build
from ₹72,000

For a defined build with a written scope, delivered on staging and reviewed weekly.

  • Data model agreed before the first screen
  • Staging environment your team reviews on
  • Tests around the logic that would hurt if it broke
  • Documentation and repository handover
Scope the build

If the work does not warrant a build, we quote the smaller fix instead.

Retainer
Quoted

For teams who need continued development capacity after launch.

  • A named developer and an agreed monthly capacity
  • Prioritised backlog you control
  • Security patching and dependency updates
Talk about a retainer

Month to month. A contract you cannot leave is a hostage situation.

Development and consulting are delivered remotely, so location changes meeting times and payment method rather than price. Hosting is never resold.

What we build with.

Chosen because they stay maintainable for whoever comes after us, not because they are new. If your team already runs something else and it works, we work in it.

WordPress

WordPressWooCommerceBricksPHPMySQL

JavaScript and headless

Next.jsAstroReactNode.jsTypeScriptTailwind CSS

Data and payments

PostgreSQLRedisStripeRazorpayGoogle Analytics

Hosting and delivery

VercelRailwayCloudflareGitHubDocker

Four stages, each ending in something you can hold.

Overruns come from work nobody scoped. Every stage produces an artifact you check before the next one starts.

  1. 01

    Scope it honestly

    We read what already exists before quoting. Most of the risk in this kind of work is invisible from the outside, so pricing it without looking is a guess dressed as a number.

    You leave with: a written scope with the assumptions and risks named

  2. 02

    Build on staging

    Work happens on an environment your team can reach, reviewed weekly. You see it grow rather than getting a reveal at the end and a week to react.

    You leave with: a staging URL you can click through as it grows

  3. 03

    Ship with the failure paths

    Error handling, logging, and rollback are built with the feature, not after it. The question is never whether something fails, it is whether you find out before your customers do.

    You leave with: monitoring, alerting, and a rollback path that has been tested

  4. 04

    Hand it over properly

    Documentation your next hire can read, every account in your name, and a dependency list short enough to maintain.

    You leave with: documentation, credentials, and no lock-in

Worth booking, or worth looking elsewhere.

Vague quotes do the most damage in exactly this kind of work. Half of this list is reasons we say no.

Worth booking

  • The work carries revenue, or the leads that produce it
  • You can name 1 person who approves technical decisions
  • You want the unknowns quoted rather than discovered
  • You would rather hear a scope is uncertain than get a confident wrong number
  • You want to keep owning your code, hosting, and accounts

Look elsewhere

  • Your budget is under ₹27,000. Below that we cannot look properly, and work quoted without looking is a guess.
  • You want a fixed price before anyone has read what exists. Whoever gives you one is pricing in the risk, and you are paying for it.
  • You need it live in 2 weeks. Compressed timelines move the risk rather than removing it.
  • You want us to host it. We do not resell hosting, on purpose.
  • You want the cheapest possible option. That is a real choice, and it is not what we are for.

Questions, answered.

Scope, cost, ownership, and the cases where we are the wrong choice.

Should this be custom or a plugin?

Start with the plugin if one gets you most of the way and the gap is cosmetic. Go custom when the gap is in the data model or the business logic, because that is the part you cannot patch around forever. The scoping sprint answers this in writing, and we have no incentive to inflate it since the fee comes off either path.

Do you work in frameworks like Laravel?

Yes, where it earns its place. A lot of what gets called custom PHP is better served by WordPress with proper engineering behind it, and we will say so. When the work is genuinely an application rather than a site, a framework is the right call.

Who owns the code?

You do, from the first commit. The repository sits in your organisation, we work in it, and nothing about leaving us requires moving or rewriting anything.

Can you take over an unfinished build?

Often, and it starts with the scoping sprint rather than a quote. Sometimes the honest answer is that restarting costs less than continuing, and you will get that answer in writing rather than after 3 months of billing.

Tell us what you are trying to build.

Send the current situation, what you have already tried, and the outcome you need. The more specific you are, the more specific the reply.

  • Read by Gaurav personally, not routed to a sales queue
  • A reply within 1 business day with a specific recommendation
  • A straight answer on whether we are the right fit, including when we are not
  • Your details stay private and are never resold

Prefer to talk first? Message us on WhatsApp. Budgets under ₹27,000 are better served elsewhere and we will say so rather than take the project.