Add live chat to Laravel. DeskCrew support widget
DeskCrew adds AI live chat, an AI support chatbot and helpdesk ticketing to a Laravel app through the official deskcrew/laravel Composer package: one @deskcrew Blade directive, and a facade that turns contact forms into tickets. A single script tag in your Blade layout works too.
An official Composer package
composer require deskcrew/laravel, then one Blade directive. Livewire, Inertia and Filament friendly, with nothing added to Vite.
AI drafts, humans approve
The AI drafts replies grounded in the knowledge base you publish, and every draft waits in an approval queue until a human sends it.
Every conversation is a ticket
Widget chats, emails, and board posts land in one dashboard with full history; visitors who leave get their answer by email.
Free plan, no card
The free plan includes the chat widget, a public knowledge base, and ticketing. Start free and upgrade only when you outgrow it.
How to install DeskCrew on Laravel
Install the official package: composer require deskcrew/laravel. The service provider is auto-discovered, so there is nothing to register.
Put DESKCREW_WIDGET_KEY (and optionally DESKCREW_BOARD and DESKCREW_SITE_URL) in .env, then add the @deskcrew Blade directive before </body> in resources/views/layouts/app.blade.php.
Run php artisan deskcrew:register-origin once per environment so the widget is allowed on your domain, then deploy. Deskcrew::createTicket(email:, message:, name:) files a ticket from a controller, a form request or a queued job.
<script src="https://deskcrew.io/desk.js" data-key="pub_YOUR_KEY" data-board="your-board" defer></script>
pub_YOUR_KEY and your-board are placeholders. Your real widget key and board slug are in your DeskCrew dashboard under Install (free signup, no card).
Note: Prefer no dependency? Paste the tag below into your Blade layout before </body> instead.
DeskCrew vs the usual suspects
| DeskCrew | Tidio | Crisp | Zendesk | |
|---|---|---|---|---|
| Free tier | Yes. Free plan, no card | Yes (limited) | Yes (basic) | Free trial only |
| AI included | Yes. AI drafts on every plan, human-approved | Paid add-on | Higher plans | Paid add-on |
| Setup | About 2 minutes. One script tag or plugin | Minutes. Script tag | Minutes. Script tag | Longer. Full workspace setup |
| Price floor | $0 free plan · paid from $29/mo | Free plan; paid tiers above | Free plan; paid tiers above | Per-agent pricing, no free plan |
Competitor cells generalize their public pricing pages. Always check current plans.
DeskCrew has a free plan with no card. Chat widget, public knowledge base, and ticketing included. Every new workspace starts with full Team features free for 14 days, and paid plans start at $29/mo. Full details on the pricing page.
FAQ. add live chat to Laravel
Last updated: September 2026
How do I add live chat to a Laravel site?
Paste the widget script into your main Blade layout, normally resources/views/layouts/app.blade.php, just before the closing body tag. Every view that extends that layout picks it up, so one edit covers the whole app.
Where exactly should the tag go in a Blade project?
In the layout, not in individual views. If you have several layouts, for example a marketing layout and an app layout, add it to each one you want the widget on. Putting it in a view means it only loads on that page.
Will Blade escape or break the script tag?
No. Blade only interprets its own directives and {{ }} echoes. A plain script tag passes through untouched, so nothing needs escaping.
Does it work with Livewire or Inertia?
Yes. The widget mounts once into its own container and is unaffected by Livewire updates or Inertia page visits, so it survives navigation without reloading or losing an open conversation.
Is there a free live chat widget for Laravel?
Yes. The DeskCrew free plan includes the chat widget, ticketing, a public help center, and a monthly AI answer allowance, with no credit card.