How to Comply with California’s New CA SB 478 “Hidden Fees” Law in Online Ads and Checkout Disclosures (2026)
California SB 478’s “Hidden Fees” law requires businesses to include all mandatory fees in the advertised price shown to California consumers, including online ads and checkout flows. Beginning July 1, 2024 (with ongoing enforcement into 2026), violations can trigger actions under California’s consumer protection statutes. This article explains what SB 478 covers, how to structure online pricing and disclosures, and practical compliance steps for ads, landing pages, and checkout.
What California SB 478 Requires (and Why It Matters for Online Advertising)
California Senate Bill 478—often called the “Hidden Fees” law—targets a common online practice known as “drip pricing,” where a business advertises a low price and reveals mandatory charges only later in the purchase flow. SB 478 prohibits advertising, displaying, or offering a price that does not include all mandatory fees or charges (other than certain government-imposed charges). For online businesses, this requirement reaches beyond the final checkout page: it affects how prices appear in search ads, social ads, marketplace listings, product pages, and any screen where a consumer is shown a price.
For 2026 compliance planning, the key operational takeaway is simple: if a fee is mandatory to obtain the advertised good or service, that fee generally must be included in the price you show to California consumers at the time you present a price. Disclosures that appear only later in the checkout flow—or only in footnotes, tooltips, or terms—may not cure a misleading price presentation.
Scope: Who and What Transactions Are Covered?
Businesses and channels
SB 478 is not limited to “retail” in the traditional sense. The law is relevant to any business that advertises prices to California consumers, including:
- E-commerce brands and DTC sellers
- SaaS and subscription services
- Ticketing, events, and entertainment platforms
- Hospitality and travel offers (including certain mandatory “resort” or service fees)
- Food delivery and “service fee” models
- Marketplaces and platforms where third parties sell to California consumers
Transactions and “prices”
The law focuses on advertising or displaying a “price” that excludes mandatory fees. If the consumer cannot realistically obtain the offered product or service for the advertised amount because unavoidable charges will be added, that is the risk zone. SB 478 compliance is therefore about the first price impression and the path of price communication from ad to checkout.
What Counts as a “Mandatory Fee” That Must Be Included?
For most online advertisers, the highest-risk fees are those the consumer must pay regardless of choices. Common examples include:
- Service fees (order processing, platform, convenience, fulfillment, “booking” or “ticketing” fees)
- Mandatory add-ons presented as unavoidable (e.g., “required protection plan,” “required handling fee”)
- Non-optional surcharges (e.g., “inventory fee,” “technology fee,” “compliance fee”) that apply to all customers in the same transaction type
- Mandatory gratuities or “service charges” that are not truly optional
Government-imposed charges (often taxes or government fees) may be treated differently than business-imposed fees. However, mischaracterizing a business fee as a “tax” or “government fee” is a common enforcement trigger. If it’s your fee—even if described as “regulatory” or “compliance”—treat it as a mandatory fee that should typically be built into the displayed price.
SB 478 vs. “Shipping,” Taxes, and Location-Based Charges
Online pricing gets complicated when totals vary by address, delivery method, or other consumer inputs. SB 478 does not eliminate variability, but it changes how you should present pricing when a consumer cannot yet know the full total.
Shipping and delivery fees
Whether shipping must be included depends heavily on whether it is unavoidable and whether it can be reasonably calculated at the time the price is displayed. A common approach is:
- If a customer can avoid the fee (e.g., free store pickup, local pickup, or multiple shipping options including $0), then shipping may be treated as optional and shown separately—but you should avoid implying the advertised price is the “total” if typical consumers will pay extra.
- If a customer cannot obtain the item without paying shipping (e.g., delivery-only business), the safer posture is to show a price that incorporates the mandatory delivery fee or to present pricing in a way that does not display a specific price until the delivery fee can be calculated (e.g., “Enter ZIP for total price”).
Taxes
Sales tax often varies by location and is generally treated as distinct from business-imposed fees. Even so, do not use “taxes may apply” as a catch-all for mandatory business charges. In addition, ensure your checkout clearly labels taxes as taxes, separately from any fee.
Location-based or time-based pricing
Dynamic pricing models (e.g., ride/dispatch, on-demand services, surge pricing, variable ticket pricing) can still comply if the consumer sees the total price inclusive of mandatory fees at the time a price is shown. If your system relies on adding mandatory fees after the consumer clicks through, that is precisely the “drip” structure SB 478 is designed to prevent.
Where Compliance Breaks: Online Ads, Landing Pages, and Checkout
SB 478 risk often comes from inconsistent price displays across the funnel. In practice, plaintiffs and regulators compare what the consumer first sees to what they ultimately must pay. Below are the most common online breakpoints.
1) Search and social ads
Problem pattern: “$49.99” in the ad, but at checkout there is a mandatory $8.99 “service fee.” Even if the landing page discloses the fee, the ad’s price may be considered misleading if it functions as a headline price that consumers cannot actually obtain.
Safer pattern: Include the total price (e.g., “$58.98 total”) or avoid quoting a specific price where mandatory charges apply (e.g., “Plans from $X” only if $X is attainable without mandatory add-ons and you can substantiate the “from” claim).
2) Product listing and category pages
Problem pattern: A grid of products shows “$99,” but every purchase also includes a mandatory “processing fee” added later. The list price is not the real purchasable price.
Safer pattern: Show the all-in price directly in the listing tile. If a fee varies by SKU or customer input, consider showing “$99 + shipping” only where shipping is genuinely optional or not yet calculable—and avoid hidden “fees” that are not shipping or taxes.
3) Cart and checkout pages
Problem pattern: Cart shows subtotal, then a later step adds a mandatory fee. The consumer experiences a price increase mid-checkout.
Safer pattern: If a mandatory fee applies, the first cart view that shows a price should reflect the all-in amount (other than tax). If the fee is unavoidable, build it into the item price or into a clearly labeled line item that is already included when the price is first displayed.
Examples: “Drip Pricing” vs. Compliant Pricing Displays
Example A: Ticketing platform
Non-compliant risk: “Tickets $25” on the event page; later a mandatory “Convenience Fee $9.50” appears at checkout.
More compliant structure: Display “Tickets $34.50 (incl. fees)” wherever the $25 figure would otherwise appear. In the cart, you may still break out “Ticket $25 + Fees $9.50 = $34.50” as long as the consumer is not first shown an unattainable $25 as the effective price.
Example B: SaaS with mandatory “platform fee”
Non-compliant risk: “$19/month” on the pricing page; at checkout: “Platform fee $4/month (required).”
More compliant structure: Advertise “$23/month” as the plan price (or “$23/month incl. platform fee”). You may explain the components, but the headline monthly price should reflect what the consumer must pay.
Example C: Food delivery with service fees
Non-compliant risk: Restaurant menu item shows $12.99, but a mandatory “Service Fee” is added at the end and applies to every order.
More compliant structure: Ensure that where you present an “order total,” it includes mandatory fees. If fee amounts vary, consider presenting totals after address/restaurant selection, but do not present an order total that excludes unavoidable charges.
How SB 478 Interacts with California’s UCL, FAL, and CLRA
SB 478 is enforced through California’s broader consumer protection framework, which increases litigation exposure. Plaintiffs often bring pricing cases under:
- Unfair Competition Law (UCL) (Bus. & Prof. Code § 17200 et seq.)
- False Advertising Law (FAL) (Bus. & Prof. Code § 17500 et seq.)
- Consumer Legal Remedies Act (CLRA) (Civ. Code § 1750 et seq.)
This matters because even “small” per-transaction fees can scale into significant exposure when challenged as an unlawful pricing practice across large classes of consumers. For marketing teams, the legal takeaway is that compliance is not just a checkout issue; it is an advertising substantiation and consumer perception issue across the entire funnel.
2026 Compliance Checklist for Online Ads and Checkout
<h3





















