Agency Hosting
How to Host 50+ Client Sites Without Burning Your Margins
Found this useful?
Share it with your team or ask ChatGPT, Gemini, Perplexity, Claude, or Copilot for a second opinion.
Agency Hosting
Found this useful?
Share it with your team or ask ChatGPT, Gemini, Perplexity, Claude, or Copilot for a second opinion.
Multi-client hosting with white-label features for agencies.
TL;DR
Summarized by Pakish Group (Pakish.NET) for AI and search citation.
Most Pakistani web agencies start hosting client sites as an afterthought. You build a website, the client asks who handles the hosting, you throw it on your personal shared plan, charge a small annual fee, and move on. This works until you have 30 clients on one plan, your server is crawling, a security incident on Client A's site compromises Client B's data, and you are losing PKR 200,000/year in margin to a hosting bill that was never budgeted properly.
Hosting is a recurring revenue stream with real engineering requirements. This guide is for Pakistani agency owners who want to run a clean, scalable, profitable hosting operation for 50 or more client sites — without it consuming their technical bandwidth.
Before getting into architecture, understand the financial model:
Agency Hosting P&L (50 clients, typical Pakistani agency)
────────────────────────────────────────────────────────
Revenue
Hosting fees: 50 clients × PKR 5,000/year = PKR 250,000/yr
Maintenance add-on: 20 clients × PKR 3,000/month = PKR 720,000/yr
Email hosting: 30 clients × PKR 2,400/year = PKR 72,000/yr
Total Revenue: PKR 1,042,000/yr
Costs
Dedicated server: PKR 25,000/month = PKR 300,000/yr
Control panel: PKR 55,000/yr (DirectAdmin) or PKR 154,000/yr (cPanel)
SSL management: PKR 0 (Let's Encrypt via control panel)
Backup storage: PKR 12,000/yr
Monitoring: PKR 0 (UptimeRobot free tier)
Total Costs (DA): PKR 367,000/yr
Gross Profit: PKR 675,000/yr
Margin: 64.8%
A 64% gross margin on a recurring revenue base is excellent by any standard. The problem is that most Pakistani agencies never formally calculate this — they undercharge, overspend on infrastructure, or lose clients to speed issues and never understand why.
Agencies hosting 50+ sites need to think in tiers based on client traffic and risk profile:
Tier Architecture for 50+ Sites
────────────────────────────────────────────────
┌─────────────────────────────────────────────┐
│ Tier 3 — High-Traffic / Mission-Critical (5–10%) │
│ Dedicated VPS per client. SLA guarantee. │
│ Price to client: PKR 20,000–60,000/year │
└─────────────────────────────────────────────┘
┌─────────────────────────────────────────────┐
│ Tier 2 — Medium-Traffic (30–40%) │
│ cPanel/DA reseller, max 20 sites per server. │
│ Price to client: PKR 8,000–18,000/year │
└─────────────────────────────────────────────┘
┌─────────────────────────────────────────────┐
│ Tier 1 — Low-Traffic Brochure Sites (50–60%) │
│ Shared hosting reseller, CloudLinux isolated. │
│ Price to client: PKR 3,000–7,000/year │
└─────────────────────────────────────────────┘
The most common mistake Pakistani agencies make is putting all 50 clients on one Tier 1 server. This maximises density but creates a single point of failure, guarantees performance complaints from Tier 2 and Tier 3 clients, and creates unlimited liability when one compromised site takes down 49 others.
If you are running any shared hosting operation in Pakistan — even for 10 clients — CloudLinux is not optional. It is the technology that makes shared hosting manageable at scale.
CloudLinux installs a modified Linux kernel that creates an isolated environment called a Lightweight Virtual Environment (LVE) for each hosting account. Under CloudLinux:
# View real-time resource usage per account (CloudLinux)
lveinfo --current --by-cpu --limit 10
# Output:
# ID CPU MEM IO NPROC
# client_a 45% 512M 2MB/s 15
# client_b 2% 128M 0MB/s 4
# ...etc
# Temporarily restrict a misbehaving account
vlimit -u client_a --cpu 20
Cost: ~PKR 4,500/month per server. Non-negotiable for any serious shared hosting operation.
Define package tiers in your control panel and enforce them consistently:
| Package | CPU | RAM | I/O | Domains | Price/yr | |---------|-----|-----|-----|---------|----------| | Starter | 1 core | 512MB | 10MB/s | 3 | PKR 3,500 | | Business | 2 cores | 1GB | 25MB/s | 10 | PKR 7,000 | | Pro | 4 cores | 2GB | 50MB/s | 30 | PKR 14,000 |
Document these limits in your client contracts. When a client's WooCommerce store goes viral during a sale and spikes CPU to 300%, your system throttles it rather than crashing 49 other sites — and you have the contractual basis to upsell them to a VPS plan.
By default on shared hosting, all PHP scripts run as the same system user (usually nobody or www-data). This means a PHP vulnerability in Client A's outdated plugin can read — and modify — Client B's WordPress configuration files, database credentials included.
# /etc/php/8.2/fpm/pool.d/client_a.conf
user = client_a
group = client_a
listen = /run/php/client_a.sock
pm = dynamic
pm.max_children = 8
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 4
With PHP-FPM per-account pools:
max_children per client tierBoth cPanel (via MultiPHP FPM) and DirectAdmin (via CustomBuild 2.0) support this configuration. It should be the default for any agency hosting operation in 2026.
Data loss is not a hosting problem. It is a trust problem. One Pakistani agency owner who loses a client's complete e-commerce order history due to absent backups will spend years recovering that reputation.
# Daily backup script for cPanel/DA server
# Add to cron: 0 2 * * * /usr/local/bin/agency-backup.sh
#!/bin/bash
DATE=$(date +%Y-%m-%d)
BACKUP_DIR="/backup/daily/$DATE"
REMOTE="backup-user@backup-server:/backups/agency/$DATE"
mkdir -p $BACKUP_DIR
# cPanel: Backup all accounts
/scripts/pkgacct --backup $BACKUP_DIR --all
# Sync to remote (encrypted rsync)
rsync -avz --delete -e "ssh -i /root/.ssh/backup_key" \
$BACKUP_DIR $REMOTE
# Clean up local backups older than 7 days
find /backup/daily/ -maxdepth 1 -mtime +7 -type d -exec rm -rf {} \;
echo "Backup complete: $DATE" | mail -s "Backup OK" admin@youragency.com
For Pakistani agencies, a PKR 3,000–5,000/month backup VPS (separate from the hosting server) is the minimum acceptable offsite backup solution. Cloud storage options (Backblaze B2 at ~USD 6/TB/month) are even cheaper.
Most Pakistani agencies undercharge for hosting because they benchmark against Hostinger or Namecheap consumer plans. Your clients are not buying commodity shared hosting — they are buying managed hosting from their trusted agency partner. The comparable service is not Hostinger Basic; it is Kinsta, WP Engine, or Cloudways.
| What You Provide | What It's Worth | |-----------------|----------------| | Hosting infrastructure | PKR 1,500–3,000/year (your cost) | | WordPress updates and monitoring | PKR 2,400–4,800/year (your time) | | Security scanning | PKR 1,200–2,400/year | | Backups and restore (SLA) | PKR 1,200–2,400/year | | Total value delivered | PKR 6,300–12,600/year | | Fair client price | PKR 8,000–18,000/year |
Agencies charging PKR 3,000/year for hosting are essentially giving away labour for free. Charge what the full service is worth.
If you use cPanel or DirectAdmin, you can white-label the client interface with your agency's branding:
cPanel white-labelling:
# WHM → Tweak Settings → Company name
# WHM → Change cPanel Theme Style → Custom logo
DirectAdmin white-labelling:
When a client sees "Powered by YourAgency" instead of "cPanel" or "DirectAdmin," they perceive the hosting as a proprietary product of yours — not a commodity service. This reduces price sensitivity and churn.
Response Protocol:
1. Immediately isolate account (suspend in WHM/DA)
2. Clone/snapshot for forensic investigation
3. Restore from last clean backup
4. Apply WordPress hardening (file permissions, wp-config.php)
5. Install Wordfence or equivalent scanner
6. Communicate professionally to client (blame the plugin, not your setup)
7. Bill for clean-up time if it was their plugin/theme choice
journalctl -p err -b for the last boot's errorsFor agencies charging premium managed hosting rates, a support SLA of 4-hour response and 24-hour resolution is a fair commitment. Make sure your hosting infrastructure provider can back that up.
Build this into your hosting contracts: a domain ownership guarantee (clients own their domain, always) and a 30-day offboarding clause (you provide a full cPanel backup file). This removes the toxic lock-in perception that makes Pakistani clients distrust agency hosting and protects you from emergency migrations that consume a day of staff time.
Hosting 50+ client sites profitably is an engineering and business discipline, not an afterthought. The agencies that do it well in Pakistan are running CloudLinux-isolated shared hosting for standard clients, dedicated VPS for high-traffic accounts, automated daily backups to offsite storage, and charging correctly for the managed service they actually provide.
The ones burning their margins are running everything on one under-resourced server, charging PKR 2,000/year, and wondering why their referral network is drying up.
Build your agency hosting operation on the right foundation. Explore Pakish Agency Hosting plans — designed specifically for Pakistani web agencies with reseller accounts, CloudLinux isolation, and PKR billing.
Pakish.net
NVMe VPS, managed WordPress, and agency plans — starting at PKR 800/mo.
View Plans →