With Thanks — Charity Thank-You Video Platform
A donor-gratitude portal that turns every gift into a personalised thank-you video — delivered, tracked and measured at scale

Charities know that a personal thank-you drives donor retention, but personalised video does not scale by hand. With Thanks needed a platform that could generate a unique thank-you video per donor, deliver it reliably, and prove the impact with real engagement data — without a video editor in the loop.
- • Generate a personalised thank-you video for every donor, automatically
- • Deliver thousands of emails reliably with bounce and complaint handling
- • Track opens, clicks, video plays, completions and watch-time per recipient
We built a Laravel platform with a Filament admin and an Inertia/React member portal. A job pipeline generates each video with an AI voice intro and a charity template, delivers it via a tracked email, and rolls every signal up into a live campaign report.
- • Designed a four-stage delivery pipeline: prepare → generate media → deliver email → finalise
- • Generated personalised intros with ElevenLabs TTS and stitched video with FFmpeg
- • Hosted and streamed video through Cloudflare Stream with signed, expiring watch links
A closer look
Inside the build
Real screens from With Thanks's charity saas portal.


Project Overview
Retention is the quiet engine of fundraising, and nothing moves it like a donor feeling genuinely thanked. The problem is that personal does not scale — a hand-made video for every gift is impossible above a handful of donors. The With Thanks portal solves that: it generates a personalised thank-you video for each donor, delivers it by email, and measures exactly how donors respond.
We built the portal — the product behind portal.with-thanks.co.uk — as a multi-tenant Laravel platform with a Filament operator panel and an Inertia/React member experience.
The Strategic Challenge
- Personalisation at volume. Every donor needed their own video, generated without a human editor.
- Reliable delivery. Thousands of emails had to land, with bounces, complaints and unsubscribes handled properly.
- Provable impact. Charities needed to see opens, clicks, plays, completions and watch-time — per recipient, per campaign.
- No accidental sends. Importing a donor file must never fire emails before a human confirms the preview.
How We Built It
A pipeline, not a script
Each thank-you flows through a four-stage job chain — prepare → generate media → deliver email → finalise — running on Laravel Octane with split queue workers so long FFmpeg jobs never block ordinary sends.
Video without an editor
We generate a personalised intro with ElevenLabs text-to-speech, stitch it to the charity’s template with FFmpeg, and push the result to Cloudflare Stream for adaptive HLS playback behind a signed, expiring link. The donor just clicks and watches.
Measurement built in
Email goes out through Resend with open, click and unsubscribe tracking; the watch page reports plays, progress and completion. The campaign report rolls it all up — email and video side by side, with a geography view of where donors engage — and exports to PDF for trustees and funders.
Thank-yous on autopilot
An hourly Blackbaud Raiser’s Edge sync discovers qualifying new gifts and creates thank-you deliveries automatically, so gratitude happens whether or not anyone remembers to press send.
Results & Impact
The portal turns a one-line “thank you” email into a measurable engagement channel. In a representative campaign, personalised video drove roughly a 73% open rate and a ~79% video completion rate, with every open, click, play and completion captured per recipient. Imports are safe by design — nothing sends until the preview is confirmed — and the Blackbaud sync keeps thank-yous flowing without manual effort.
Technology
Laravel 13 + Octane, a Filament admin and an Inertia/React 19 portal, with Cloudflare Stream video, FFmpeg + ElevenLabs for generation, Resend for tracked email, and a Blackbaud SKY API integration.
Run a charity or membership organisation? We build custom platforms and workflow automation that turn manual processes into measurable ones. Talk to us.
Key Features
Automated Personalised Video
Each delivery generates a unique intro (AI voice + charity template) and stitches it to the thank-you video, with no editor in the loop.
- A unique video per donor
- AI voice intro via ElevenLabs
- Repeat-donor gratitude variants
Campaign Analytics
A live report unifies email and video engagement — sends, opens, clicks, plays, completions, watch-time and a geography view.
- Email and video side by side
- Per-recipient engagement signals
- PDF export for stakeholders
CSV & API Ingest
Bring donations in by spreadsheet upload or API, grouped into batches, with a preview that must be confirmed before anything sends.
- Nothing sent unreviewed
- Bulk ingest up to 500 per request
- Idempotency prevents duplicates
Tracked Email Delivery
A queued pipeline delivers each email through Resend with open, click and unsubscribe tracking and bounce/complaint webhooks.
- Reliable at thousands of sends
- Suppression and unsubscribe handling
- Signed, expiring watch links
Blackbaud CRM Sync
An hourly Raiser’s Edge NXT sync discovers qualifying new gifts and creates thank-you deliveries automatically.
- Thank-yous on autopilot
- Filter by gift type and amount
- No manual data entry
"A text email saying "thank you" gets ignored. A short, personalised video gets watched — and now we can actually prove it, because we see opens, plays and completion rates for every campaign. The Blackbaud sync means the thank-you goes out without anyone remembering to send it."
Related Projects
CFP Lottery & Raffles
We built Insyte for CFP Lottery & Raffles: a Django platform that ingests scanned donation forms, extracts them with Document AI, routes them through human QA, processes payments, reconciles banking and generates thank-you letters — with a read-only portal for the charities it serves.
CFP Lottery & Raffles
We built the CFP Raffle platform: a Django back-office for running charity raffles and lotteries end to end — campaign and ticket management, scanned-form OCR, QA, weekly banking reconciliation and a declarative export engine that produces each charity client’s exact file format.
Ofyse
We designed and built Ofyse, a multi-tenant SaaS platform that replaces the spreadsheet stack coworking operators rely on — unifying bookings, member CRM, recurring billing with regional tax, and multi-gateway payments behind one fast, modern workspace.
Ready to Transform Your Business?
Let's discuss how we can help you achieve similar results