In Salesforce today, the modern way to create a custom splash or landing page is to build a Lightning Home Page in the Lightning App Builder and assign it to the right app or profile. For a fully bespoke HTML splash you can still use a Visualforce page, for richer interactive UI use a Lightning Web Component (LWC), and for external customers or partners build the landing experience in Experience Cloud. The old Salesforce Classic approach — a Home Page Custom Link shown the first time a user clicked a tab — is legacy and should be replaced when you move to Lightning Experience.
Key takeaways
- Internal users: a Lightning App Builder Home Page is the standard, no-code landing page — add rich text, links, reports, and components, then assign it by app or profile.
- Fully custom HTML or branding: a Visualforce page surfaced through a Visualforce tab or embedded in a Lightning page still works in 2026.
- Interactive, data-driven UI: wrap a Lightning Web Component and drop it onto a Lightning page in App Builder.
- External audiences: use Experience Cloud — never expose internal org pages to customers.
- The Classic tab splash page / Home Page Custom Link is legacy; migrate it to a Lightning Home Page as part of any Lightning rollout.
What is a splash or landing page in Salesforce?
A splash page is the first screen a user sees before they reach the main content — typically a welcome, announcement, onboarding checklist, or quick-link hub. In a CRM context it is usually an internal landing page that orients users to an app: "here is what changed this quarter, here are your key reports, start here."
In Salesforce Classic, the only built-in option was a Home Page Custom Link that appeared the first time a user clicked a custom-object tab, with Don't show again and Continue buttons. That mechanism is tied to Classic and is now legacy. In Lightning Experience you assemble the same outcome — a curated first screen — from modern, supported building blocks instead. The right tool depends on your audience and how much custom code you want to own. For a structured approach to changes like this, see our Salesforce customization best practices.
Which Salesforce splash page option should you choose?
Pick the option that matches your audience and how custom the experience needs to be.
| Option | Internal / external | Code required | Best when you need |
|---|---|---|---|
| Lightning App Builder Home Page | Internal | No (drag-and-drop) | A curated internal landing page assigned per app or profile |
| Visualforce page | Internal (external via Sites) | Yes (Visualforce markup) | Fully custom HTML, branding, or Classic splash parity |
| Lightning Web Component | Internal or external | Yes (JavaScript + HTML) | A rich, interactive, data-driven landing experience |
| Experience Cloud page | External | Low-code (optional LWC) | Customer, partner, or public-facing landing pages |
For most internal teams the Lightning Home Page covers the need with zero code. Reach for Visualforce or an LWC only when you need pixel-level control or live data, and use Experience Cloud whenever the audience is outside your org.
How do you build a Lightning Home Page in App Builder?
This is the modern replacement for the Classic tab splash page and works in Enterprise, Unlimited, and Developer editions.
- Go to Setup → Lightning App Builder → New → Home Page.
- Choose a layout template (for example a header plus two regions) and name the page.
- Drag in standard components — Rich Text for the welcome message, Report Chart, Recent Items, or a Tabs/Accordion for quick links.
- Use the Rich Text component to add headings, links, and instructions; add an image with the Image component.
- Click Activation and assign the page as the org default, by app, or by app and profile so only the right users land on it.
- Save and Activate. Users now see this page when they open the assigned Lightning app.
Because activation is scoped by app and profile, you can give sales, support, and admins each their own landing page without writing a line of code.
When do you still need a Visualforce splash page?
Use a Visualforce page when you need fully custom HTML, exact branding, or you are recreating a legacy Classic splash. A minimal welcome splash looks like this:
<apex:page showHeader="true" sidebar="false">
<apex:slds />
<div class="slds-box slds-theme_default slds-text-align_center slds-p-around_large">
<h1 class="slds-text-heading_large">Welcome to the Sales Hub</h1>
<p class="slds-m-vertical_medium">
Read this quarter's playbook before you start logging activity.
</p>
<apex:outputLink value="/lightning/page/home"
styleClass="slds-button slds-button_brand">
Continue
</apex:outputLink>
</div>
</apex:page>
To surface it, create a Visualforce tab (Setup → Tabs → Visualforce Tabs → New) and point it at this page, or embed the page inside a Lightning Home Page using the standard Visualforce component in App Builder. The apex:slds tag pulls in the Lightning Design System so the page matches the rest of the UI.
How do you build a landing page as a Lightning Web Component?
For an interactive, data-aware landing experience, build a Lightning Web Component and expose it to App Builder. The markup and metadata are Salesforce platform files; the component logic is plain JavaScript.
<!-- splashLanding.html -->
<template>
<lightning-card title="Welcome">
<div class="slds-p-around_medium">
<p>{message}</p>
<lightning-button label="Continue" variant="brand"
onclick={handleContinue}></lightning-button>
</div>
</lightning-card>
</template>
// splashLanding.js
import { LightningElement } from 'lwc';
import { NavigationMixin } from 'lightning/navigation';
export default class SplashLanding extends NavigationMixin(LightningElement) {
message = 'Welcome to the team. Start with the onboarding checklist below.';
handleContinue() {
this[NavigationMixin.Navigate]({
type: 'standard__namedPage',
attributes: { pageName: 'home' }
});
}
}
<!-- splashLanding.js-meta.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>62.0</apiVersion>
<isExposed>true</isExposed>
<targets>
<target>lightning__AppPage</target>
<target>lightning__HomePage</target>
</targets>
</LightningComponentBundle>
Set isExposed to true and list lightning__HomePage as a target so the component appears in the App Builder component palette, then drag it onto your Lightning Home Page.
What about external customers and partners?
Never point external users at an internal Lightning or Visualforce page. For customers, partners, or the public, build the landing page in Experience Cloud, which gives you authenticated portals, theming, and guest access with the right security model. The Experience Builder uses the same drag-and-drop pattern as App Builder and can host the same Lightning Web Components.
If you are planning a customer-facing landing or portal experience, our walkthrough on how to set up a customer portal in Salesforce covers the licensing, sharing, and rollout steps in detail.
Migrating the Classic splash page to Lightning
If your org still has a Classic Home Page Custom Link splash, treat it as technical debt to retire during your Lightning migration. The content usually maps cleanly:
- A welcome message or instructions → a Rich Text component on a Lightning Home Page.
- An image or video splash → upload the asset as a Static Resource (Setup → Static Resources), then reference it from an Image component or your Visualforce/LWC markup. Static Resources remain fully supported.
- A link that redirected users → a button or link inside the Lightning page, or a navigation action in an LWC.
Keep custom-link labels under 1,024 characters and remember that very long URLs can hit browser limits — the same constraints applied in Classic. If you want a hand modernizing legacy Classic UI to Lightning, our Salesforce consulting team has delivered this kind of migration across 50+ projects since 2014.
Frequently Asked Questions
What replaced the Classic splash page in Lightning Experience?
A Lightning Home Page built in the Lightning App Builder replaced the Classic tab splash page. You assign it as the org default or by app and profile, and assemble it from drag-and-drop components — no code required for the standard case.
Do Visualforce splash pages still work in Salesforce in 2026?
Yes. Visualforce pages are fully supported and remain the right choice when you need custom HTML, exact branding, or Classic splash parity. Surface them through a Visualforce tab or embed them in a Lightning page with the standard Visualforce component.
How do I assign a Lightning Home Page to specific users?
In the App Builder, open the page's Activation dialog and choose Assign to apps and profiles. This lets you show different landing pages to sales, support, or admin profiles within the same org without any code.
Can I show an image or video on a Salesforce landing page?
Yes. Upload the file as a Static Resource, then reference it from the Image component on a Lightning Home Page, or from your Visualforce or LWC markup. Static Resources are the supported way to host splash media in both Classic and Lightning.
What's the difference between a Home Page and an App Page in App Builder?
A Home Page is the landing screen users see when they open a Lightning app, while an App Page is a standalone page you add to navigation as a tab. For a splash or landing experience the Home Page is usually the right fit; use an App Page when you want a dedicated tab destination.
Should external customers see a splash page built in Experience Cloud?
Yes. External customers and partners should land on an Experience Cloud page, never an internal Lightning or Visualforce page. Experience Cloud provides authenticated portals, guest access, and theming with the correct external security model.