diff --git a/pledge-now-pay-later/src/app/dashboard/automations/page.tsx b/pledge-now-pay-later/src/app/dashboard/automations/page.tsx index f745fd4..9329ad5 100644 --- a/pledge-now-pay-later/src/app/dashboard/automations/page.tsx +++ b/pledge-now-pay-later/src/app/dashboard/automations/page.tsx @@ -3,7 +3,7 @@ import { useState, useEffect, useCallback, useRef } from "react" import Image from "next/image" import { - Loader2, Check, Send, Sparkles, Trophy, CheckCheck, + Loader2, Check, Send, Trophy, CheckCheck, ChevronDown, Clock, MessageCircle, RefreshCw, Calendar } from "lucide-react" import Link from "next/link" @@ -152,7 +152,7 @@ export default function AutomationsPage() { {/* ── Header ── */}
Automations
+Donor journey
AI optimisation
-- AI writes a different version of each message and tests both with real donors. - The better version wins automatically. Your messages get better over time — without you doing anything. + We test different versions of each message with your real donors. + The one that collects more pledges wins. Automatically. You don't do anything — they just get better over time.
-Uses GPT-4.1 nano · Costs less than 1p per message
AI is testing {testsRunning} experiment{testsRunning > 1 ? "s" : ""}
-Each message has two versions. The better one wins automatically.
+Testing {testsRunning} new version{testsRunning > 1 ? "s" : ""}
+The version that converts more donors wins automatically.
Messages optimised
+Your messages are tuned
- {stats && stats.total > 0 ? `${stats.total} sent this week · ${stats.deliveryRate}% delivered` : "Winning versions are live."} + {stats && stats.total > 0 ? `${stats.total} sent · ${stats.deliveryRate}% delivered` : "Best-performing versions are live."}
{hasEnoughData - ? winner ? `${winner === "B" ? "AI" : "Your"} version converts ${Math.abs(rateB - rateA)}% better` : "Too close to call — need more data" - : `${totalSent} of ${MIN_SAMPLE * 2} sends needed for a verdict`} + ? winner ? `${winner === "B" ? "New" : "Current"} version converts ${Math.abs(rateB - rateA)}% better` : "Too close to call — need more data" + : `${totalSent} of ${MIN_SAMPLE * 2} sends needed`}
Collect
++ {activeEvent ? `${sources.length} link${sources.length !== 1 ? "s" : ""} · ${activeEvent.pledgeCount} pledges · ${formatPence(activeEvent.totalPledged)} raised` : "Create an appeal and start collecting"} +
+{activeEvent?.name}
+{activeEvent?.name}
) : (