Skip to main content

Command Palette

Search for a command to run...

Building Customer Portals with Salesforce LWR Sites

Published
8 min read

Building Customer Portals with Salesforce LWR Sites

Business analytics dashboard displayed on a screen

If you've been putting off migrating your Experience Cloud sites to LWR, I get it. Change is uncomfortable, especially when your current Aura-based portal is working fine. But here's the thing - "working fine" isn't going to cut it much longer. Salesforce has made it pretty clear that LWR (Lightning Web Runtime) is the future of Experience Cloud, and the Spring '26 release just reinforced that with a bunch of new capabilities that make LWR sites faster, more flexible, and way easier to customize than what we had even a year ago.

I've spent the last several months building customer portals exclusively on LWR, and I want to share what I've learned - the stuff that actually matters when you're in the trenches building these things.

Why LWR Should Be Your Default in 2026

Let's get this out of the way first. If you're starting a new Experience Cloud project right now, LWR should be your default pick. The only real exception is if you have some very specific technical constraint that requires Aura - and those edge cases are getting smaller every release.

The performance difference alone makes the switch worthwhile. LWR sites load significantly faster than their Aura counterparts because the runtime is lighter and the rendering approach is more efficient. Your customers notice this stuff. Nobody wants to wait three seconds for a support portal to load when they're already frustrated about an issue.

Beyond raw speed, LWR gives you better SEO readiness (huge if your portal has public-facing knowledge articles), cleaner component architecture, and tighter alignment with where Salesforce development is heading overall. If you've been building Lightning Web Components for your internal org, you'll feel right at home.

For anyone still getting up to speed on Salesforce terminology and features, salesforcedictionary.com is a great reference point. It breaks down all the jargon - LWR, LWC, Experience Cloud - into plain language.

Developer coding on a laptop with IDE open

Picking the Right Template

Template selection is one of those decisions that feels small but has a big downstream impact. Here's how I think about it:

Build Your Own (LWR) is your go-to when you need full control. It's essentially a blank canvas built on the LWC programming model. You get maximum flexibility, but you're also responsible for building more of the structure yourself. I use this when the client has very specific design requirements or when the portal needs to feel like a completely branded experience that doesn't look like "Salesforce."

Customer Service template works well when case management is the primary use case. It comes pre-wired with components for case creation, case tracking, and agent interaction. If your customers need to submit tickets and track their status, this saves you a ton of setup time.

Help Center is the better choice when self-service knowledge is the main goal. Think searchable FAQ pages, knowledge article browsing, and topic-based navigation. The key difference from Customer Service is the emphasis on content discovery over case interaction.

Microsite (LWR) is perfect for lightweight, public-facing content sites. I've used it for product landing pages and event registration portals where you don't need the full weight of a customer service setup.

My advice? Start with whichever template gets you closest to your end goal, then customize from there. Trying to bend a Help Center template into a case management portal is way more work than just starting with Customer Service.

Building Custom LWC Components for Your Portal

This is where things get fun. Custom Lightning Web Components are the backbone of any serious Experience Cloud portal, and there are some patterns I keep coming back to.

Make your components Experience Builder-friendly. You do this by setting isExposed to true in your component's meta XML and adding the right targets. For a drag-and-drop component that shows up in the Experience Builder Components panel, use lightningCommunity__Page as your target. For page layouts, use lightningCommunity__Page_Layout. This seems basic, but I've seen too many developers skip this step and then wonder why their admin can't find the component in the builder.

Cache your Apex calls. Use @AuraEnabled(cacheable=true) on any Apex methods that return data which doesn't change frequently. This reduces server round trips and makes your portal feel snappier. For a knowledge article component, for example, there's no reason to hit the server every single time someone navigates back to a page they already visited.

Lazy load everything that's below the fold. If a component isn't visible when the page first loads, don't load it immediately. This is especially important on portal homepages where you might have a welcome banner, quick links, recent cases, knowledge articles, and community highlights all on one page. Load the stuff users see first, and let the rest come in as they scroll.

Design for mobile from day one. I can't stress this enough. A shocking number of portal users are on phones and tablets. Use responsive CSS, test on actual devices (not just browser dev tools), and make sure touch targets are large enough. Following WCAG 2.1 AA accessibility standards is also a must - it's not just good practice, it's increasingly a legal requirement.

Person holding smartphone browsing a self-service portal

Integrating Agentforce with Your Portal

The Spring '26 release brought some exciting Agentforce capabilities that directly impact Experience Cloud portals. If you haven't looked into this yet, you should.

Agentforce agents can now be embedded directly into Experience Cloud sites, which means your customer portal can have an AI-powered assistant that handles common questions, routes cases, and even takes action on behalf of the customer. Think of it as a smarter chatbot that actually understands your Salesforce data.

The integration with Data Cloud is particularly interesting. When Agentforce is connected to Data Cloud through your Experience Cloud site, it can personalize the portal experience based on the customer's history, preferences, and behavior patterns. A returning customer sees product recommendations relevant to their purchase history. A partner sees content specific to their region and performance tier.

Setting this up requires some work on the admin side - you'll need to configure the Agentforce agent topics and actions, set up the proper Data Cloud data streams, and test thoroughly. But the payoff in terms of customer satisfaction and deflected cases is real.

If terms like Agentforce, Data Cloud, and Data 360 are new to you, check out salesforcedictionary.com for quick, clear definitions that cut through the marketing speak.

Security You Can't Skip

Every customer portal needs solid security, and Experience Cloud gives you the tools - but you have to actually use them. Here's my non-negotiable checklist:

Enable MFA for all external users. Yes, it adds friction. Yes, it's worth it. Salesforce has been pushing this for years, and there's no excuse to skip it in 2026.

Use Enhanced Domains. This has been the default for a while now, but if you're working with an older org that somehow hasn't migrated, get it done. Enhanced Domains provide better security and are required for certain features to work properly.

Set up Trusted IP Ranges at the Profile level for your portal users. This keeps the login flow smooth for your regular users while still maintaining security boundaries.

Implement SSO where possible. If your customers already have credentials with an identity provider, let them use those. Single Sign-On reduces password fatigue and puts less credential management burden on your org.

Review sharing rules carefully. External users in a portal should only see their own data (and their account's data, depending on your model). I always do a thorough audit of sharing settings before going live. One misconfigured sharing rule can expose data across accounts, and that's a bad day for everyone.

A combination lock on a keyboard representing portal security

Launch Strategy: Start Small, Iterate Fast

Here's the biggest lesson I've learned building these portals: don't try to ship everything at once. Launch with a Minimum Viable Product that handles the core use case well, then iterate based on real user feedback.

For a customer support portal, that MVP might be: login, view my cases, create a new case, search knowledge articles. That's it. Get those four things working beautifully, put it in front of real users, and listen to what they tell you.

You'll learn more from two weeks of real usage data than from six months of requirements gathering. Maybe your users don't actually search knowledge articles - they browse by category. Maybe they want to see their order history alongside their cases. Maybe mobile usage is 70% of your traffic and you need to rethink your navigation entirely.

Use Experience Builder's built-in analytics to track page views, component interactions, and user flows. This data should drive your second and third iterations.

Wrapping Up

Building customer portals on LWR in 2026 is a genuinely good experience (pun intended). The framework has matured, the tooling is solid, and the integration with Agentforce and Data Cloud opens up possibilities that weren't there even a year ago. If you're still on Aura-based sites, now's the time to start planning that migration. If you're starting fresh, you're in a great spot.

I'd love to hear what you're building with Experience Cloud. Drop a comment below with your use case, your biggest challenge, or a tip I didn't cover. And if you want a quick-reference glossary for all the Salesforce terms thrown around in this post, salesforcedictionary.com has you covered.

More from this blog

S

sfdcxpert

54 posts