Naijacloud vs Cloudflare: one platform, in Naira, in Nigeria
Both take your Git repo and give you a running app. Only one of them runs it in Port Harcourt, bills you in ₦, and ships the database, object storage, transactional email and domain registration in the same product. Here is the feature-by-feature read, including the rows Cloudflare wins.
Cloudflare is the one competitor that already runs code in Lagos, and pretending otherwise would waste your time. The difference is what runs there: Workers are stateless and short-lived, and Cloudflare has no African region for its own database — D1 says so in its own docs. Naijacloud runs an ordinary container and an ordinary Postgres in Port Harcourt, so the data is in-country too, and bills for it in Naira.
Choose Naijacloud when
Your data has to be in Nigeria, not just near it — Workers run in Lagos; the database behind them does not. If the requirement is residency rather than latency, an edge runtime with a European primary does not satisfy it.
Your application is a normal server — A framework that expects a filesystem, a connection pool, a background thread and more than a few seconds of CPU. Porting that to Workers is a rewrite, not a deploy.
You want the database, storage, email and domain on one bill — Six database engines, S3-compatible buckets, transactional email and domain registration, first-party, in Naira, on one invoice.
Choose Cloudflare when
You want code executing in Lagos itself — Cloudflare has a Lagos data centre and Workers run in it. For a stateless request that needs no database, nothing we have is closer to a Nigerian user than that.
Your workload is genuinely edge-shaped — Short, stateless, globally distributed, spiky. Workers price that better than any reserved instance can, and scale to zero between requests.
You need a global CDN, WAF and DDoS protection — That is Cloudflare’s core business and it is the best in the world at it. We sit behind Cloudflare ourselves.
Egress is your dominant cost — R2 charges nothing for egress at $0.015 per GB-month of storage. If you are serving terabytes, that is very hard to beat.
Things you get here that Cloudflare does not offer at all
Not cheaper versions of the same feature — capabilities that are simply not on the other platform, so today they are a second vendor, a second bill and a second support queue.
A database in Nigeria
Postgres, MySQL, MariaDB, MongoDB, Redis and Valkey, running in af-west. D1 documents its supported primary regions and states plainly that Africa is not one of them, so on Cloudflare your compute can be in Lagos while your data cannot.
An ordinary long-running container
A process that stays up, holds a connection pool, keeps state in memory and runs for as long as you like. Workers are stateless and capped at five minutes of CPU per invocation.
Managed Postgres at all
First-party, with scheduled backups, restore and a browser SQL console. Cloudflare does not manage Postgres — Hyperdrive accelerates a connection to somebody else’s, and D1 is its own SQLite-shaped thing.
A bill in Naira
Priced in ₦, paid from a prepaid balance with a local card or bank transfer. No FX spread and no cross-border fee.
Transactional email under your own DKIM
Naijamail signs with your key and ships SDKs for five languages. Cloudflare routes email and does not send it.
Platform comparison
Scored out of five on what actually changes your day.
Data residency in Nigeria
Naijacloud
5/5The app, its database and its object storage all run in af-west, in Port Harcourt.
Cloudflare
3/5Workers run in Lagos, which is real and valuable. D1 does not: its docs list the supported primary regions and Africa is explicitly not among them.
Runtime model
Naijacloud
5/5An ordinary container. Any language, any framework, a filesystem, a connection pool, background threads, as long as you need.
Cloudflare
3/5V8 isolates. Fast, cheap and genuinely global, but stateless, capped at five minutes of CPU per invocation, and a rewrite for most existing apps.
Managed relational databases
Naijacloud
5/5Postgres, MySQL and MariaDB managed first-party, with backups, restore and a browser console.
Cloudflare
2/5D1 (SQLite-shaped, 10 GB per database) plus Hyperdrive, which speeds up a connection to a Postgres somebody else manages and bills.
Transactional email
Naijacloud
5/5First-party, your own DKIM key, REST API, SDKs, webhooks and suppression lists.
Cloudflare
1/5Email Routing forwards inbound mail. There is no sending product.
Billing currency and predictability
Naijacloud
5/5Priced and paid in ₦ from a prepaid balance, metered against the size you reserved.
Cloudflare
3/5USD, and metered per request and per CPU-millisecond. Cheap at low volume, and a bill that follows your traffic exactly.
Object storage
Naijacloud
4/5S3-compatible buckets we operate per region, with versioning, lifecycle rules and CORS. Free egress inside the region.
Cloudflare
5/5R2: $0.015 per GB-month, zero egress, 10 GB free. Better than ours on price and on scale.
Global edge, CDN, WAF and DDoS
Naijacloud
2/5Each app serves from its chosen region. We put Cloudflare in front of our own platform domain, which tells you what we think of it.
Cloudflare
5/5The category-defining product, with a network nobody else has.
Governance and compliance
Naijacloud
2/5Team roles and an activity log. No SSO, no certifications.
Cloudflare
5/5SSO, audit logs and the full enterprise compliance set.
Key differences
Lagos, and what is actually in it
af-west is a region in the ordinary sense: a machine in Port Harcourt running your container and your Postgres, on a private network, with backups. A query goes to a database in the same country as the user.
Cloudflare genuinely executes your Worker in Lagos, and for a stateless request that is as close as it gets. But the moment that Worker needs data, it reaches a D1 primary or a Hyperdrive-accelerated Postgres somewhere else — D1’s own documentation says Africa is not a supported location. So the round trip you were avoiding comes back, and the residency question is unanswered.
What "deploy" means on each
Push a repo. The stack is detected, a Dockerfile is written for you, and the container that comes out is the same shape as the one on your laptop. An existing Rails, Django, Laravel or Spring application deploys without being rewritten.
Workers is a different runtime with a different set of APIs and limits. That is the source of its speed and its price, and it is also why moving an existing server-shaped application there is a porting project rather than a deployment.
Where each of us is the wrong answer
If your workload is short, stateless and global, a reserved instance is the wrong shape and Workers will be cheaper and faster than anything we can offer. And if egress dominates your bill, R2 at zero egress beats our storage outright.
If your application holds connections, keeps state, runs longer than a few seconds, or has to keep its data in Nigeria, Workers is the wrong shape — and no amount of Lagos presence changes that.
Cost of an always-on service
Compute only, before bandwidth. Our figures come from the live rate card, so they are what the meter charges. Cloudflare figures are converted from list USD pricing at a card rate of ₦1,560/$ — the rate you actually pay, not the interbank one.
Starter — 0.5 vCPU · 512 MB
Naijacloud
₦3,500 / monthCloudflare
Workers Paid, $5/mo — 10M requests + 30M CPU-ms — ≈ ₦7,800Pro — 1 vCPU · 1 GB
Naijacloud
₦7,000 / monthCloudflare
Then $0.30 per extra million requests, $0.02 per million CPU-msThese two columns are not measuring the same thing and the table should not be read as if they were. Cloudflare sells requests and CPU-milliseconds; we sell a machine that is always on. At low volume Workers is cheaper than anything with a reserved instance in it, and that is not a rounding difference — $5 buys ten million requests. What our column buys is a process that stays up with a database beside it in the same country, which is not on the Cloudflare price list at any figure. Cloudflare figures are its published Workers pricing as of September 2026, converted at the card rate.
When a move is worth scoping
Migrations cost time. If two or more of these keep coming up, the move solves a constraint you already have.
A Worker in Lagos is querying a database in Frankfurt, and the round trip is back.
A regulator or a contract asks where the records are, and "the edge" is not an answer.
Porting an existing server-shaped application to Workers has stalled.
You are running D1 and have hit its 10 GB per-database ceiling.
You need to send email, and Cloudflare only receives it.
Frequently asked
Yes, and many customers do — we run our own platform behind it. Custom domains here work either proxied or direct, and the docs cover both.
Yes. Every database gets a TLS-only external endpoint, so a Worker can reach a Postgres in af-west over Hyperdrive. If most of your users are Nigerian, that puts the data nearer them than any supported D1 region does.
No. R2 is $0.015 per GB-month with free egress, and that is better than our rate. What ours buys is a bucket in the same region as the app that writes to it, with 5 GB free and no egress charge inside the region.
Not as a product of our own. Platform domains sit behind Cloudflare, and you can put your own Cloudflare account in front of a custom domain. If a managed WAF is a requirement, that is Cloudflare’s job and not ours.
Every workspace gets ₦2,000 of usage credit a month, which covers a small always-on web service outright, plus 500 emails, 5 GB of object storage and 20 GB of egress.
Try it against your own workload
Deploy one service from a Git repo in Port Harcourt and compare the numbers yourself. Free tier, no card, no FX.