Build a custom client portal when you have 50+ active clients (3-year TCO favors custom), need 3+ integrations between existing tools, want client-facing branding, or have data security requirements that exceed SaaS offerings. Buy off-the-shelf SaaS when you have under 25 clients, standard workflows work, and budget is under $15K. Custom portals on Next.js + Supabase typically cost $22K-$45K and reach positive ROI within 6-12 months for service businesses with 50+ clients.
Every growing service business hits the same inflection point: your combination of spreadsheets, shared drives, email threads, and possibly a SaaS tool or two can't keep up with client volume. You need a portal — a single place where clients access their information, track progress, upload documents, and communicate with your team.
The question is whether to buy off-the-shelf or build custom. The answer depends on numbers, not feelings.
The Real Comparison: Three-Year Total Cost of Ownership
Most build-vs-buy analyses compare upfront cost (custom is expensive) to monthly cost (SaaS is cheap). This is misleading. The honest comparison is three-year TCO including all costs.
Scenario: 75-Client Accounting Firm
Off-the-shelf SaaS (e.g., Client Hub, Copilot, SuiteDash):
| Cost Component | Year 1 | Year 2 | Year 3 | |---------------|--------|--------|--------| | SaaS subscription ($80/user/month x 8 team members) | $7,680 | $7,680 | $7,680 | | Client seat fees ($15/client/month x 75) | $13,500 | $13,500 | $13,500 | | Setup and configuration | $2,000 | $0 | $0 | | Integration workarounds (Zapier, custom scripts) | $3,600 | $3,600 | $3,600 | | Annual price increases (~10%) | $0 | $2,478 | $5,206 | | Annual total | $26,780 | $27,258 | $29,986 | | Cumulative | $26,780 | $54,038 | $84,024 |
Custom portal (Next.js + Supabase):
| Cost Component | Year 1 | Year 2 | Year 3 | |---------------|--------|--------|--------| | Development (build) | $35,000 | $0 | $0 | | Hosting (Supabase Pro + Vercel Pro) | $1,200 | $1,200 | $1,200 | | Maintenance retainer | $12,000 | $12,000 | $12,000 | | Feature additions | $5,000 | $8,000 | $5,000 | | Annual total | $53,200 | $21,200 | $18,200 | | Cumulative | $53,200 | $74,400 | $92,600 |
The custom portal costs more in the first 18 months but the gap narrows to near-parity by year 3. By year 4, custom is definitively cheaper — and the gap widens every year because SaaS costs scale with usage while custom infrastructure costs don't.
The numbers shift even more dramatically for firms with 100+ clients, where per-seat SaaS fees compound into enormous annual costs.
The Hidden Costs SaaS Vendors Don't Mention
Integration tax. When a SaaS portal doesn't integrate natively with your accounting software, CRM, or document management system, you build bridges with Zapier, Make, or custom scripts. These cost $200-$500/month and break regularly. Custom portals integrate directly via API.
Workflow compromise. You modify your team's workflow to fit the SaaS tool's design. The time cost of these workarounds is invisible but real — 15-30 minutes per day per team member adds up to $15K-$30K/year in lost productivity for a 5-person team.
Data portability risk. SaaS platforms own the infrastructure your data lives on. Exporting is often intentionally difficult. If the vendor raises prices 40% (it happens), your negotiating position is weak because migration is painful.
Feature dependency. You need a feature the SaaS platform hasn't built. You submit a request. You wait. Maybe it ships in 6 months, maybe never. Meanwhile, your process is blocked. With a custom portal, features ship when you need them.
The Feature Gap Analysis
Before deciding, map your requirements against what off-the-shelf and custom can deliver:
Features Where Off-the-Shelf Wins
Speed to launch. A SaaS portal deploys in days. Custom takes weeks. If you need something running tomorrow, buy.
Proven UX patterns. SaaS portals have been tested by thousands of users. The common workflows (document upload, message threads, task tracking) are well-designed because they've been iterated based on real usage data.
Built-in support and updates. Someone else handles bug fixes, security patches, and feature additions. You don't manage infrastructure.
Features Where Custom Wins
Data isolation and security. Supabase Row Level Security enforces tenant boundaries at the database level. Even if your application code has a bug, one client's data cannot leak to another. Most SaaS platforms use application-level filtering — which means a single bug can expose all client data.
Integration depth. Custom portals connect directly to your accounting software, CRM, email system, and document storage via API. Not through Zapier middleware that adds latency and failure points — direct, real-time integration.
Workflow fidelity. Your portal matches your process exactly. No workarounds, no "we do it differently because the tool requires it," no compromises on how your team operates.
Branding and client experience. Your portal is your brand. Not a white-labeled SaaS with another company's UI patterns. For premium service businesses (law firms, wealth management, luxury consulting), branded client experience matters.
Scalability economics. Adding your 100th client to a custom portal costs $0 in additional licensing. Adding them to SaaS costs $15-$30/month forever.
Decision Criteria: When to Build Custom
Build custom when three or more of these are true:
- You have 50+ active clients and per-seat SaaS costs exceed $1,500/month
- Your workflow requires integrating 3+ existing tools (accounting software, CRM, document management, scheduling, payment processing)
- Off-the-shelf tools force daily workarounds that cost your team 30+ minutes/day
- Data security is a competitive differentiator (financial services, healthcare, legal)
- Client experience is part of your brand — you compete on service quality, not just price
- You plan to grow to 100+ clients in the next 2 years
If fewer than three apply, SaaS is likely the better choice. There's no shame in starting with SaaS and migrating to custom later when the economics and requirements justify it.
Architecture Decisions That Matter
For teams that decide to build custom, these architectural choices determine long-term success:
Multi-Tenancy Pattern
Shared database with Row Level Security (recommended for 90% of cases). All client data in one database, isolated by RLS policies. Simple to maintain, easy to add features, and Supabase handles the security enforcement at the PostgreSQL level.
Schema-per-tenant (for regulated industries). Each client gets their own database schema. More isolation, more operational complexity. Choose this when regulations require demonstrable data separation — common in healthcare and financial services.
Authentication and Role Model
Most service business portals need four roles:
- Admin: Full access to all client data and system settings
- Team member: Access to assigned clients only
- Client admin: Manages their organization's portal access
- Client user: Views their own organization's data
This maps cleanly to Supabase Auth + custom claims stored in the JWT. The RLS policies reference these claims to filter data automatically on every query.
Real-Time vs. Polling
If clients need to see updates as they happen (document uploaded, message received, status changed), use Supabase Realtime. The client subscribes to relevant channels and receives push updates via WebSocket.
If real-time isn't critical (daily status updates, weekly reports), polling or email notifications are simpler to implement and maintain.
File Storage
Client documents need secure, access-controlled storage. Supabase Storage with bucket-level policies integrates naturally with the RLS model. Files inherit the same tenant isolation as database records.
For large-file workflows (architectural drawings, video files, financial document archives), consider direct S3 integration with pre-signed URLs for upload/download — this handles files up to 5TB without proxy overhead.
The Build Process with an AI-First Agency
Week 1-2: Discovery and Architecture
The agency maps your current workflow, identifies pain points, documents integration requirements, and produces an architecture document. This document should be detailed enough that you could hand it to a different agency and they could build from it.
Key deliverables: data model, RLS policy design, authentication flow, integration map, wireframes for key screens.
Week 3-5: Core Platform
Authentication, role management, dashboard shell, and the first major feature (usually document management or task tracking). By end of week 5, you can log in, see your dashboard, and perform core actions.
Week 6-8: Integrations and Features
Connection to your existing tools, additional features specific to your workflow, and client-facing functionality. This is where the portal becomes genuinely useful rather than technically impressive.
Week 9-10: Refinement and Launch
User testing with your team and selected clients, bug fixes, performance optimization, and staged rollout. Smart agencies deploy to 10% of clients first, gather feedback, iterate, then roll out broadly.
Ongoing: Monthly Maintenance
Feature additions, bug fixes, security updates, and infrastructure monitoring. Budget $1K-$3K/month for active maintenance. This isn't optional — software requires ongoing attention.
What to Ask Portal Development Agencies
"Show me a multi-tenant portal you've built." Not a mockup — a production application. Ask about the number of tenants, data volume, and uptime record.
"How do you enforce data isolation?" If the answer doesn't include "Row Level Security" or equivalent database-level enforcement, the agency is relying on application code for security — which means one bug could expose all client data.
"What happens when I need a new feature in 6 months?" The answer should describe a clear process: you request, they scope, you approve, they build. Not "we can discuss that when the time comes."
"Who owns the code?" You should own all source code, deployed in your accounts (Vercel, Supabase). The agency should never hold your platform hostage.
"Do you use AI tools in development?" AI-first agencies using Claude Code deliver portal development 40-60% faster because the boilerplate (CRUD operations, auth flows, role-based rendering) is exactly the code AI tools generate accurately. This translates to lower cost and faster timelines.
Summary
The build-vs-buy decision for client portals is a math problem, not a philosophy debate. Calculate three-year TCO with realistic assumptions about growth, per-seat costs, integration requirements, and hidden workflow compromises. For service businesses with 50+ clients, growing, and requiring integration with existing tools, custom portals deliver better economics, better security, and better client experience by year 2-3.
The technology stack for custom portals in 2026 is settled: Next.js 14, Supabase with Row Level Security, TypeScript. AI-first agencies deliver these systems in 6-10 weeks at $25K-$50K CAD — a fraction of the three-year SaaS cost for growing businesses.
DOTxLabs builds custom client portals for service businesses across Canada. Every portal uses Supabase Row Level Security for database-level data isolation and Claude Code for AI-accelerated development.
Canonical URL: https://www.dotxlabs.com/blog/custom-client-portals-vs-off-the-shelf-saas
Frequently asked questions
How much does a custom client portal cost?
A basic client portal (authentication, document sharing, simple dashboard) costs $15K-$25K CAD. A mid-tier portal with role-based access, workflows, and integrations costs $25K-$40K CAD. An enterprise multi-tenant portal with white-labeling and advanced features costs $40K-$70K CAD. Monthly hosting and maintenance runs $500-$3K.
How long does it take to build a custom client portal?
AI-first agencies deliver basic portals in 4-6 weeks, mid-tier in 6-10 weeks, and enterprise in 10-16 weeks. Traditional agencies typically take 1.5-2x longer. The key variable is integration complexity — portals connecting to 5+ external systems take longer than standalone applications.
When should I build custom instead of using SaaS?
Build custom when: you have 50+ active clients (TCO favors custom), your workflow requires 3+ integrations between existing tools, off-the-shelf tools force workarounds that waste staff time, you need client-facing branding, or data security requirements exceed what SaaS platforms offer. Buy SaaS when: you have under 25 clients, standard workflows work, and budget is under $15K.
What tech stack is best for client portals?
Next.js 14 + Supabase + TypeScript is the production standard for multi-tenant portals in 2026. Supabase Row Level Security enforces data isolation at the database level (not just application code), Next.js provides server-side rendering for fast loads, and TypeScript prevents type-related bugs in business logic.
Can I migrate from SaaS to custom later?
Yes, but it's more expensive than building custom from the start. Data migration from SaaS platforms is often the hardest part — most platforms make export difficult by design. Budget 20-30% more than a greenfield build for migration projects, and expect 2-4 extra weeks for data migration and verification.
What's the ROI of a custom client portal?
For a 50-client service business: a custom portal reduces per-client admin time by 2-4 hours/month. At $50/hour effective cost, that's $6K-$12K/month in operational savings. Add client retention improvement (5-10% reduction in churn from better client experience), and most portals achieve positive ROI within 6-12 months.
Related reading
Need help with this?
We build websites and run SEO for GTA businesses. If anything here hit close to home, let's talk.
Get in touch