Internal tools and dashboards for agencies
We take on internal tools development for agencies whose clients have outgrown a spreadsheet. We build quoting tools, job boards, stock trackers and approval flows in Next.js on PostgreSQL, delivered under your brand.
- ToolingNext.js · PostgreSQL · Drizzle
- Best forFull-service agencies
- Scope & quoteWithin 2 business days
Internal tools, run the way agencies need it run.
AI and workflow automation that takes manual hours off an account.
Send the brief and a named producer turns it into a written scope: 6 deliverables, each priced, with the assumptions and the tools listed — Next.js, PostgreSQL, Drizzle, TypeScript, Resend, Vercel. Nothing is built until you have agreed that document, and the price on it is the price you pay.
It is the brief we see most often from full-service agencies, digital marketing agencies. Everything ships under your agency's name — the staging link, the commits, the checklist and the handover — and your client never learns we were involved.
- Pillar
- Automate — AI and workflow automation that takes manual hours off an account.
- Tooling
- Next.js · PostgreSQL · Drizzle · TypeScript · Resend · Vercel
- Most often for
- Full-service agencies
- Scope & quote
- Within 2 business days — scope
Internal tools: what you get.
Every item here appears in the scope document with a price against it. Nothing starts until you approve it.
- 01Half-day scoping workshop and a written spec with screens
- 02Next.js application on PostgreSQL with roles and audit trail
- 03Imports from the existing spreadsheet, with validation
- 04Exports, notifications and integrations with the tools already in use
- 05Hosting, backups and monitoring
- 06Training notes and a maintenance plan
Internal tools development means building the small private application a client’s team uses every day, such as a quote builder or a job tracker. We build it under your agency’s brand, and the client owns the code, the data and the hosting account at handover.
When internal tools development beats the spreadsheet
A custom tool pays off when the spreadsheet starts causing mistakes the business can count. Common signs are wrong prices on quotes, jobs lost between tabs and a sheet only one person understands.
It also pays off when different people need different views. A spreadsheet struggles to hide margins from a sales rep or show who changed a price last Tuesday.
Dashboards come in here too. When the tool holds the data, the numbers the team checks each morning sit on the same database, so nobody reconciles two versions.
Build, buy or keep the spreadsheet
We will tell you when a build is the wrong answer. Our advice depends on the situation:
| Situation | Our advice |
|---|---|
| Off-the-shelf software fits the process with small compromises | Buy it, and connect it to the client’s other tools with workflow automation |
| One or two people use the sheet and the data is not sensitive | Keep the spreadsheet, and add validation and protected ranges |
| Several people edit it, roles matter, or it holds customer data | Build an internal tool with roles and an audit trail |
| Customers or suppliers need to log in too | Build a portal, covered by our Next.js apps on PostgreSQL service |
What we build into every tool
Every tool gets roles, an audit trail, careful imports, exports and tested backups. These details decide whether the team still trusts it a year later:
- Roles designed with the client: who can see costs, who can approve and who can only add records
- An audit trail: every change recorded with the person and the time, so a disputed edit can be traced
- Imports that expect real spreadsheets: merged cells, duplicate rows and dates typed as text are caught in a validation report before anything is written
- Exports to CSV: the client’s data is never trapped in the tool
- Backups with a tested restore: we prove the backup works before the team relies on it
By default, tools run on Vercel with a managed PostgreSQL database, in an account the client owns. Email notifications go out through Resend from the client’s own domain.
Pricing, ownership and support
Each tool starts with a half-day scoping workshop and a written spec with screens. You then get a fixed price, and nothing starts until you approve it. If you run several builds at once, compare the monthly plans on our rates page.
At handover the repository transfers to you or your client, with training notes and a maintenance plan. We revoke our access and confirm it in writing, as our security page describes.
Some tools need a step that reads free text, such as supplier emails. That part is scoped under our white-label AI automation service.
Internal tools: when to send it.
- 'It is all in Sarah's spreadsheet' is a sentence you have heard on a client call
- A process has outgrown forms and email
- Off-the-shelf software almost fits but never quite
- 01
Send the brief
Reply within 1 business day
- 02
Scope & quote
Within 2 business days
- 03
Production
Timeline fixed in the scope
- 04
QA & review
Published checklist, every build
- 05
Agency delivery
Handover doc with every launch
- Next.js
- PostgreSQL
- Drizzle
- TypeScript
- Resend
- Vercel
Internal tools: who briefs it most.
Questions agencies ask about internal tools development
01How long does an internal tool take to build?
Weeks rather than months for a tightly scoped tool, and the written scope fixes the exact timeline before work starts. The scoping workshop keeps the first version small: the screens the team needs every day, not every idea from the first meeting. Further features follow as fixed-price changes once the team has used it.
02Who owns the code and the data?
Your client does, or your agency if that is how you sell it. The repository transfers at handover, the database and hosting sit in an account the client controls, and every record can be exported to CSV. Staging sites are removed within 14 days of launch unless you ask otherwise.
03Can it import the client’s existing spreadsheet?
Yes, and we plan for messy data. The import runs against validation rules first and reports the rows it could not read, such as duplicates, missing fields or dates typed as text. The client fixes those rows or agrees a mapping with us, and only then does the data go live.
04Where is the tool hosted?
On Vercel with a managed PostgreSQL database by default, in an account your client owns. If the client has its own infrastructure or rules on where data lives, we deploy there instead and note it in the scope. Hosting is billed at cost or held in their account, with no mark-up.
05What happens when the client’s process changes?
It will, and the tool should change with it. Small changes fit inside a monthly plan or a maintenance arrangement, and larger ones are quoted as a fixed-price change with a written scope. Defects inside the agreed scope after launch are fixed at our cost, whatever their size.
Send the brief — get a fixed price within two business days.
Tell us what the Internal tools project needs and when. Client names can wait until the NDA is signed; a named producer replies within one business day.

