Back to templates

Template details

Laravel SAAS Starter

Production-ready Laravel 12 SaaS starter with Stripe billing, multi-tenant workspaces, team management, and admin panel.

About this template

Laravel SAAS Starter is a production-ready Laravel 12 boilerplate for launching multi-tenant SaaS products, combining Stripe billing, team management, an admin panel, and a React 19 frontend built on Inertia.js v2.

What is Laravel SAAS Starter?

Laravel SAAS Starter is an open-source starter kit built by XCO Agency that gives you the foundational code for a subscription-based software-as-a-service application. It takes a Laravel 12 backend, React 19 frontend with Inertia.js v2, and Tailwind CSS v4, and packages them with ready-to-use features like authentication, workspaces, billing, and an admin panel. You provide your environment configuration and Stripe credentials, and it produces a running SaaS application with landing page, user dashboard, billing pages, and administrative tools.

Key Features

  • Authentication and Security — Full login flow with 2FA, password resets, profile management, and verified email domains, powered by Laravel Fortify.
  • Multi-tenant Workspaces — Users can create and switch between multiple workspaces, each with its own team roster, settings, and billing.
  • Team Management — Invite members with granular workspace-level roles: Owner, Admin, and Member.
  • Stripe Billing — Integrated via Laravel Cashier, supporting subscriptions, multiple pricing tiers, a customer billing portal, and webhooks at /stripe/webhook for events like subscription updates and payment failures.
  • Admin Panel — Global super-admin dashboard with user impersonation, cross-workspace monitoring, system health checks, and scheduled tasks management.
  • Feature Flags — Database-driven flagging using Laravel Pennant, with targeted and workspace-specific rollout.
  • Audit Logs — System-wide visibility through Spatie Activitylog tracking.
  • UI Components — React 19 with Shadcn/UI and Tailwind CSS v4, including light/dark themes.

Who is it for?

  • SaaS founders who want to launch a product quickly with billing, multi-tenancy, and admin tooling already wired.
  • Laravel developers building customer-facing apps who need a tested baseline with 1,400+ Pest tests.
  • Agencies that deliver SaaS projects to clients and need a reusable starter with documentation and CI/CD workflows.

What can you do with Laravel SAAS Starter?

  • Launch a subscription SaaS — Configure Stripe keys, set up pricing tiers, and accept payments through the built-in billing portal.
  • Set up multi-tenant organizations — Create workspaces, invite team members, and assign roles such as Owner, Admin, or Member.
  • Manage platform operations — Use the admin panel to impersonate users, monitor system health, and broadcast announcements.
  • Customize per workspace — Add custom fields, tags, templates, and comments to tailor each workspace's data model.

How does it work?

Installation follows the standard Laravel flow: clone the repository, run composer install and npm install, copy .env.example to .env, generate an app key, configure your database and Stripe keys, run migrations with php artisan migrate, build assets with npm run build, and start the dev server with composer run dev. The quick start then takes you from the landing page to creating a workspace, inviting teammates, and setting up billing.

Pros and cons

  • Pros: MIT licensed, includes 1,400+ Pest tests, ships with GitHub Actions for CI/CD, and has extensive documentation in the /docs folder.
  • Cons: Requires PHP 8.4 and Node.js 22+; the dependency audit workflow currently fails because of npm advisories in the lockfile, and running tests locally with act may produce 419 CSRF responses.

FAQ

Is Laravel SAAS Starter free?

Yes, the project is open-sourced under the MIT license, so you can use, modify, and deploy it without licensing fees.

What are the requirements to run it?

You need PHP 8.4 or higher, Composer, Node.js 22+ with npm or pnpm, a database (SQLite, MySQL, or PostgreSQL), and a Stripe account for billing features.

How do I configure Stripe billing?

Set STRIPE_KEY, STRIPE_SECRET, and STRIPE_WEBHOOK_SECRET in your .env file, then configure the Stripe webhook endpoint to /stripe/webhook with events such as subscription created/updated/deleted and invoice payment outcomes.

Does it support multiple languages?

Yes, internationalization is included. You add new languages by creating translation files in resources/js/locales/, adding the locale to configuration, and updating the language selector component.

What tests are included?

The starter ships with over 1,400 Pest tests covering authentication, workspaces, billing, and more. Run them with php artisan test.

screenshot of Laravel SAAS Starter on template0.com