Platform decision

Power Pages vs WordPress for customer portals: keep the marketing site, move the sign-in

Power Pages vs WordPress for customer portals is usually asked as a replacement question — and that is what makes it expensive. The two platforms are good at different halves of the same website. The cheapest answer is very often to leave your WordPress pages exactly where they are and put only the signed-in half somewhere else.

The usual way this question arrives: a company has a WordPress site that works, ranks for the things it should rank for, and is edited by someone in marketing without anyone filing a ticket. Then customers start asking to see their own orders, tickets, invoices or applications, and a quote lands for a membership-plugin build on top of the existing site. Somebody else in the room points out that the company already pays Microsoft for a lot of things, and asks whether one of them does this.

Both instincts are defensible, and the quote is not a trick. But the framing is wrong, because a portal is not a section of a content site. It is a different kind of software wearing the same URL.

This page is the outside-the-stack question: should the portal be built in the Microsoft stack at all? If you have already decided it should be, the next question is an internal one — an app for staff or a site for outsiders — and that is covered separately in Power Apps vs Power Pages for portals. We will not re-argue it here.

A portal and a content site want opposite things

A content site optimises for publishing: get a page written, styled and live quickly, make it fast, make it findable. A portal optimises for identity and records: prove who this person is, then show them their rows and nobody else's. Almost every portal project that goes badly went badly because it was scoped as the first thing and turned out to be the second.

Microsoft is unusually blunt about which job its product is for. Its introduction to Power Pages (opens in new tab) describes it as a low-code platform “for creating, hosting, and administering modern external-facing business websites” built on “the same shared business data stored in Microsoft Dataverse” used by the rest of the Power Platform. Note what is load-bearing in that sentence: the shared business data. Power Pages is a front door onto records. It is not a blogging platform, and nothing about it will make your content team faster.

WordPress is the mirror image. It is a mature content management system with an enormous plugin ecosystem, and it has had user accounts and roles for as long as it has existed. It can absolutely put a login on a page. What it does not have is a business data layer — so the moment the portal needs to show live records from a system of record, WordPress has to reach them across an integration that somebody has to build, secure and keep working.

Where each one is genuinely strong

Neither column below is a weakness list. They are two tools aimed at different halves of one website, and the honest comparison is which half you are actually building.

What you are asking of it WordPress Power Pages
Publish and edit marketing content What it was built for — non-technical editing, themes, mature SEO tooling Possible, but pages are a maker artefact; content editing is not the design centre
Earn organic search traffic The whole ecosystem is pointed at this Only anonymous pages are crawlable at all; robots and metadata are configurable but basic
Sign in an external customer Native accounts plus plugins; each identity provider is a plugin decision Built in — Entra External ID, Entra ID, Azure AD B2C, AD FS, Google, Facebook, LinkedIn, and any SAML 2.0 or OpenID Connect provider
Show a customer their own records Needs an integration to wherever the records live, plus code to filter them Reads Dataverse directly; each signed-in visitor is a Dataverse contact record
Enforce who may see which row Custom logic you write and must test yourself Web roles and table permissions — declarative configuration, scoped to the contact, their account or a relationship
Keep the same data as your internal tools Two copies and a sync, unless the records already live in WordPress One copy — the portal and an internal app sit on the same tables
Who owns it after go-live You do, completely — including patching core, plugins and themes Microsoft runs the platform; you own configuration, permissions and content
Design freedom Effectively unlimited Templates and the design studio, extended with Liquid, HTML, CSS and JavaScript

The identity row is the one people underestimate. Power Pages ships a list of providers rather than a plugin hunt — Microsoft’s authentication overview (opens in new tab) lists Entra ID over OpenID Connect, SAML 2.0 and WS-Federation, Entra External ID, Azure AD B2C, AD FS, and OAuth 2.0 sign-in with Microsoft, Google, LinkedIn, Facebook or Twitter accounts. It also says plainly that the local username-and-password option is not recommended, which is worth reading as guidance rather than a footnote: if you build the portal here, you are meant to let a real identity provider hold the credentials.

The split most SMBs should actually be quoted

Here is the answer that rarely appears in a proposal, because it is not the largest project either side could sell you: keep WordPress for everything a stranger reads, and use Power Pages for everything a known customer does. The marketing site keeps its domain, its rankings, its editing workflow and its theme. The portal becomes a separate signed-in property linked from the navigation, sitting on your business records.

This is not a compromise dressed up as a strategy. There is a hard technical constraint that makes it the natural shape. Microsoft’s guidance on adding a custom domain name to a Power Pages site (opens in new tab) states that you can add only one custom domain name to a website, that the hostname is created with a CNAME record at your DNS provider, and that you cannot use CNAME mapping for a root domain — so the root itself is not available as a Power Pages hostname. In practice a Power Pages site lives at something like portal.yourcompany.com, which means handing your marketing pages over to it would require moving them off the root anyway. Leaving WordPress on the root is the path of least destruction, not a consolation prize.

Part of the site Where it belongs in the split Why
Home, services, about, pricing, blog WordPress, on the root domain These are the pages that rank and the pages marketing edits weekly
Contact and lead-capture forms WordPress No sign-in, no records to secure — a form plugin is the right size of tool
“Sign in to your account” Power Pages, on a subdomain Only one custom hostname per site, and it cannot be the root
Order, ticket, invoice or case history Power Pages Table permissions scope rows to the signed-in contact without custom code
Multi-step applications people save and resume Power Pages Every registrant becomes a Dataverse contact, so partial progress has somewhere to live
Document upload and exchange with a customer Power Pages Files attach to the record they belong to, under the same permission model
Staff working the same records Neither — that is an internal app Different audience, different licensing; see the Power Apps comparison

One practical detail worth designing around before launch rather than discovering at go-live: Power Pages identifies authenticated visitors by their Dataverse contact record, and Microsoft notes that each user must have a unique email address — if two or more contact records share one, including deactivated records, those contacts cannot sign in. Companies with years of accumulated duplicate contacts tend to meet that rule at the worst possible moment. Cleaning it up is part of the data work, which is why we scope that layer explicitly as Microsoft Dataverse consulting services rather than assuming it is free.

The two bills have different shapes

We do not publish figures for either platform, because both change and a stale number is worse than none. What matters more for a decision is the shape of the cost, and the shapes are genuinely different — which means the cheaper option depends entirely on how your portal grows.

Cost component WordPress portal Power Pages portal
Platform licence None — the software is open source Per website, per month, bought as capacity
What the running bill tracks Your hosting plan and your plugin renewals How many distinct people sign in or browse in a calendar month
Hosting Yours to buy and size, and to resize when traffic grows Included in the platform
Add-ons Membership, forms, file handling and CRM-connector plugins, usually annual Included capability rather than separate purchases
Integration to your records A real line item — build it, secure it, and keep it working as APIs change Usually zero if the records are already in Dataverse
Security and patching Ongoing and yours: core, every plugin, every theme Platform patched by Microsoft; you own roles and permissions
Biggest cost risk An abandoned plugin your portal depends on, or a breach through one An audience spike — capacity is traffic-shaped, so a campaign moves the bill
How it behaves at small scale Cheap, because the site and host already exist Less compelling — you pay for a platform to serve very few people
How it behaves as records and rules multiply Costs compound — every new rule is code you own and test Costs flatten — new rules are configuration on an existing model

Read the last two rows together, because they are the decision. WordPress wins on the first version and loses slowly; Power Pages loses on the first version and wins as the permission model gets real. The break-even is not a headcount — it is the moment your portal stops showing content and starts enforcing who may see which row.

Read the quote you were given

You can usually settle this from the proposal already on your desk, without another discovery call. Four signals point at WordPress:

The portal shows content, not records. A gated knowledge base, a client resource library, a members-only download area. There is no system of record behind it, so there is nothing for Dataverse to do.

Nothing needs to reach a business system. Submissions land in an inbox or a spreadsheet and a human takes it from there. That is a form, and a form plugin is the correctly-sized tool.

The audience is large, anonymous and occasional. If most visitors never sign in, you would be paying a portal platform to serve people who only read.

Marketing owns the site and there is no IT function. Adding a second platform with its own admin model has a real organisational cost, and it is fair to weigh that.

And four that point the other way:

The words “so they can see their own” appear in the requirement. Their own orders, their own tickets, their own invoices. That is row-level security on live records, and it is the single clearest signal in the whole exercise.

The records already live in Dataverse, Dynamics 365 or Business Central. Then WordPress needs an integration to reach what Power Pages reads natively, and you are funding a bridge to a building you already own.

Staff will work the same records from the inside. One copy of the data with two front doors beats two copies and a sync, every time. This is where a portal and an internal app get scoped as one project on one data layer.

Somebody has to answer for the security model. If a customer seeing another customer's invoice would be a serious incident, declarative table permissions you can review are a better place to stand than bespoke filtering logic in a theme.

What changing your mind actually costs

Cheaper than the equivalent mistake inside a single platform, which is the quiet advantage of the split. Because the two halves are separate properties joined by links, a portal that turns out to be the wrong shape is replaced without touching the marketing site — the pages that carry your organic traffic were never in scope. Going the other way, retiring a Power Pages portal in favour of a plugin build leaves the WordPress site untouched as well.

What does not survive either move is the front end: templates, forms, styling and the permission rules are platform-specific and there is no converter. What survives is the data model, if it was designed as one. Records, relationships and the rules about who may see which row are the durable half of a portal project, and they are worth an extra day at the start even when version one is small.

If the answer came out on the Microsoft side, Power Pages development services covers the build: external sites secured with web roles and table permissions, tested the way an attacker would test them. If the same records also need an internal screen for staff, Power Apps consulting covers that half, and we scope the pair on one Dataverse foundation rather than as two disconnected projects. Either way it is fixed-fee, typically two to four weeks, with 30 days of hypercare after go-live — you can read how the fixed-fee process works before speaking to anyone.

FAQ

What clients ask once the split is on the table

Almost never. Microsoft only lets you point one custom hostname at a Power Pages site, and it cannot be a root domain, so your marketing pages would have to move to a subdomain to hand the root over. Keeping WordPress where it is avoids that entirely.

Yes. WordPress has had user accounts and roles since long before portals were a category, and plugins extend them. The question is not whether it can authenticate someone, but whether the records they need to see live in WordPress or in a business system it has to reach through an integration.

The shape changes, not just the size. WordPress costs move with the build and the upkeep: plugin licences, hosting, patching and whatever integration reaches your records. Power Pages costs move with how many people sign in each month, because Microsoft licenses website capacity rather than seats.

Not if the split follows the sign-in line. The pages that earn organic traffic are marketing pages, and they stay on the domain and CMS that already rank. What moves is the signed-in area, which was never indexable anyway because a crawler cannot log in.

Count the integrations. If the portal only shows content and collects form submissions, a plugin build is usually right. If it has to display live records from Dataverse, Dynamics or an ERP, and enforce who may see which row, you are paying a plugin stack to imitate something you may already license.

For a simple gated area on an existing WordPress site, WordPress is faster because the site, host and theme already exist. For a portal with real record-level permissions, Power Pages is usually faster, because web roles and table permissions are configuration rather than custom code.

Try us risk-free for 4 hours

If you're unhappy within the first 4 hours of your block, we'll refund you in full — no questions asked. Hours are deducted only for work you've reviewed and approved.

Book a free consultation

Get more from the Microsoft tools you already pay for

Tell us what you’re trying to fix — a report, an approval process, an intranet, a Copilot rollout. We scope it as a fixed-fee project, you approve, and a senior engineer delivers in 2–4 weeks.

  • Fixed-fee scope agreed before any work starts
  • Senior, US-based Microsoft engineers — no handoffs
  • Typical 2–4 week delivery
  • 30 days of post-delivery hypercare included

The fastest way to reach us is the form — tell us the task and we’ll reply within one business day.

All fields are required.

We reply within one business day. No newsletters, no drip campaigns.

Book a Free Consultation