The whole platform, itemised.
Fifty-nine capabilities across ten sections. The platform page argues the system; this is the index at the back of the book — the page to work from if you are building a comparison spreadsheet.
Marketing intelligence, not vanity metrics.
See exactly which campaigns generate signed cases — not just clicks. Real-time ROI by source, campaign, and practice area. Benchmark your performance against modelled estimates for firms your size, in your market.
- Full-funnel ROI dashboard — Live metrics for cost per lead, cost per acquisition, signed-case conversion rate, and marketing ROI. Filterable by campaign, channel, or date range.
- Signed-case attribution — Every signed case is linked back to the first-touch campaign, the call source, and the consultation that converted it. Finally know which ads actually generate clients.
- Google Ads daily auto-sync — Connect your Google Ads account once. Campaign spend, clicks, impressions, and conversions sync automatically every night. No manual CSV uploads.
- Practice-area benchmarks — Compare your CPL, conversion rate, and ROI against firms in your exact practice area and market size. Pro feature — see the full percentile breakdown.
Capture every lead. Triage every row.
Leads contacted in under 5 minutes are 21× more likely to qualify than those contacted after 30 minutes (Lead Response Management Study). GavelGrow captures prospects through a hosted, firm-branded intake form (embeddable on your own site) — then the intake pipeline gets you to first contact in under 60 seconds and shows you who to call next with last-activity aging, linked-case indicators, and campaign CPL on every row.
- Firm-branded hosted intake form — Mobile-first, multi-step form at app.gavelgrow.com/intake/your-firm. Your logo, tagline, attorney photo, brand accent color, and custom CTA copy. Phone numbers format as the user types; abandoned forms autosave to localStorage for 24 hours so a back button doesn't lose their typing.
- Smart conditional fields — Show specific fields only for specific practice areas. Ask for estimated case value on Personal Injury inquiries but hide it on estate planning. Reveal phone only on Mass Tort intakes. Multi-step wizards, required-vs-optional control, and per-field visibility rules are all in the builder — no developer needed.
- Embed on any firm website — Drop a one-line <iframe> or a two-line script snippet on Squarespace, WordPress, Webflow, Wix, or plain HTML. UTMs pass through from your site to the lead record automatically. Works across domains (CORS-safe) with auto-resizing iframe height.
- TCPA consent + invisible bot protection — Per-lead SMS opt-in with append-only audit log (IP, UA, exact disclosure text) for carrier audits. Invisible Cloudflare Turnstile blocks bots without a CAPTCHA puzzle. 10-minute duplicate window dedups double-clicks and form retries.
- Instant email + SMS auto-reply — Within seconds of a submission, we send a firm-branded email (via our Resend-verified sender) and an SMS from your Twilio tracking number — if the prospect opted in and the carrier confirms the number is SMS-capable. Templates support {{first_name}} / {{firm_name}} / {{firm_phone}} placeholders.
- Per-firm conversion tracking — Plug your GA4, Meta Pixel, or Google Tag Manager ID into the dashboard. Every submission fires generate_lead (GA4, with value and transaction_id) + Lead (Meta, with eventID for CAPI dedup) + a dataLayer custom event for GTM-driven pipelines. Your Google Ads attribution works end-to-end.
- Speed-to-lead tracking — Every lead timestamped from first click to first outbound contact. Dashboard shows your average, median, and % under 5 minutes so you can see trends, not just today's numbers.
- Last-activity aging — know who's hot — Every row shows the last message, call, or status change with colour coding: green under 24 hours, amber under a week, red past that. Sort by freshness to triage the queue in one scan.
- Pipeline with SMS-consent visibility — Six status stages with inline quick-change. Leads who've replied STOP show a red \"SMS opted out\" badge on every row so staff don't accidentally send a compliance-breaking message.
- Case-linkage on the row — Once a lead converts to a case, the case number appears as a chip on the row and the \"Convert\" action disappears — no duplicate cases, no double-counted attribution.
- Campaign + CPL on every row — See the campaign name and current cost-per-signed-lead inline (\"PI-Spring · $220 CPL\") — the attribution math the partners ask for, without a dashboard click.
- Duplicate-lead detection at intake — When adding a lead, we match on normalized email and phone against your existing roster. You see the three closest hits (name, status, date) before you submit. Doesn't block — a second lead for the same person is valid when the campaign differs.
- UTM and campaign attribution — Every lead tagged with UTM source, medium, campaign, and content at capture. Preserved through conversion so marketing ROI follows the matter all the way to close.
Built-in call tracking. Replaces CallRail.
Twilio-powered tracking numbers per campaign. Call recording, missed-call alerts, routing to your office or partner. No external CallRail subscription — it's built into the platform.
- Per-campaign tracking numbers — Assign unique tracking numbers to Google Ads, LSA, Yelp, or print campaigns. Every inbound call tagged with its source.
- Call recording & transcripts — Every call recorded (with state compliance). Transcripts searchable by keyword. Review intake calls to improve your team's conversion.
- Missed-call SMS follow-up — Missed a call? Automated SMS fires within 60 seconds: 'Sorry we missed you — we'll call back within 5 minutes.' Converts otherwise-lost leads.
- Call → Lead auto-matching — Inbound calls from a number matching an existing lead auto-link to their record. New callers become leads automatically.
Case management. Built for triage.
Cases aren't a spreadsheet — they're a queue. Every row shows the next court date, open-task count, originating lead, source + campaign + CAC, and an inline status change. Attorneys who hit capacity get a red chip. Attorneys who want detail open the drawer and see tasks + upcoming events already loaded.
- Case records with full context — Client, matter, attorney, acquisition cost, expected and actual value, status. The originating lead is linked both ways: the case shows \"via lead: Jane Smith\" and the lead shows the case number — deletion of either doesn't silently orphan the other.
- Attribution on every row — Source badge + campaign name + snapshot CAC appear inline on the case table — not buried in a drawer. The \"which campaigns drive signed matters\" question gets answered in one glance.
- Inline status quick-change — Move a case from intake → active → pending → won/lost from the table without opening a drawer. Closing a case auto-stamps the close date; reopening clears it.
- Tasks panel, per case — Every case drawer shows its open-task checklist with inline add. Priority (urgent/high/medium/low), due date, and assignee. Check a task off with one click — no trip to the Tasks page.
- Upcoming events, per case — Next court date, deadline, deposition, or follow-up surface on the case row (\"Next: Court date · Apr 28\") and as a pinned panel in the drawer. No external calendar integration needed — it's the same data as /dashboard/calendar.
- Attorney workload + capacity — Workload view sums open cases and open tasks per attorney. Over 10 open cases flags \"High\", over 15 flags \"Critical\" — a reassignment prompt, not a scold.
- Marketing attribution locked to the case — Acquisition cost is snapshot at conversion — so later campaign-spend changes don't retroactively alter the CAC on a case closed months ago. The number on the ledger is the number that was true when you signed the matter.
Calendar. Two-way sync with Google. Read-only iCal for Apple + Outlook.
Consultations, court dates, deadlines, and deposition meetings live in one calendar — with live conflict warnings, drag-to-reschedule in a week view, and true bidirectional sync to each attorney's Google Calendar. Edits made directly in Google flow back into GavelGrow within five minutes; events created in GavelGrow appear in Google instantly. Apple Calendar / Outlook get a read-only iCal feed today; native Outlook OAuth is next.
- Week view with drag-to-reschedule — Hour-by-hour grid across the full work week. Drag any event to a new slot to reschedule — the new time is written back instantly, no slide-over round-trip. Agenda view available as a toggle for lower-volume weeks.
- Live conflict warnings — When you pick an attendee for a new event, the form live-checks their other bookings and warns if the slot overlaps (\"Jane already has Court Date 2:00 – 3:00 pm on Apr 21\"). Soft warn — doesn't block — because sometimes a senior partner legitimately double-books.
- Two-way Google Calendar sync (OAuth) — Each attorney connects their own Google account from Settings → Integrations. Every event you create, reschedule, or cancel in GavelGrow auto-pushes to their primary Google Calendar in seconds — attendees get Google-native invitation emails and RSVP tracking automatically. Edits made directly in Google flow back into GavelGrow within five minutes (rescheduling, cancellation, time change), with echo-suppression so our own writes never overwrite themselves. A status panel in Settings shows last push, last pull, and surfaces any error with a one-click reconnect. Outlook / Microsoft 365 support next.
- ICal / webcal subscription (read-only) — Prefer a pull-based sync for Apple Calendar, Outlook, or Fantastical? One click gives you a personal subscription URL. Events sync every ~15 min — read-only so your team can't accidentally break data from a phone. Rotate the URL at any time to revoke access.
- Event types with context — Six first-class types: consultation, follow-up, court date, deadline, meeting, other. Each color-coded across the week grid. No-show tracking on consultations so you can see the pattern before it becomes a revenue leak.
- Case + lead breadcrumbs on every event — Every event row and week-grid chip links back to its matter and originating lead. One click to jump from a court date to the case file.
- Automated reminders (SMS + email) — Attendees get an SMS and email 1 hour before every event. Consent-tracked, respects the per-tier SMS rate limit, auto-logs to the conversation timeline. No staff time spent on reminder calls.
- Multi-calendar filtering — Filter the calendar by specific case, specific lead, specific event type, or free-text search across titles/locations/descriptions. Scoped views for paralegals, full view for partners.
Intake automation. That never sleeps.
SMS and email sequences trigger the moment a lead submits a form, calls, or goes stale. Consent-first: STOP/HELP automatic, consent-tracked at every step.
- Drag-and-drop sequence builder — Build multi-step SMS + email journeys. Trigger on form submit, missed call, no consultation booking, or stale lead. Delay in minutes, hours, or days.
- Pre-built templates by practice area — Ready-to-go sequences for PI, family law, criminal defense, estate planning, and more. Edit copy, adjust timing, activate in 60 seconds.
- Smart send-time optimization — SMS sends between 9 AM and 9 PM in the lead's timezone. Email sends avoid weekends by default. Customizable per sequence.
- Performance analytics per sequence — Open rate, response rate, booking rate, and case-conversion rate for every sequence. A/B test copy to find what converts.
Every conversation. In one inbox.
SMS, email, call logs, and in-app messages in one chat-style timeline per lead or case. Never switch between Gmail, your phone, and a CRM again.
- Per-lead conversation timeline — Click any lead to see the full chat history — every SMS, every email, every call, every note, in chronological order.
- Two-way SMS from dashboard — Reply to client texts from the GavelGrow dashboard. Assign conversations to team members. Never lose a thread in someone's personal phone.
- Email send + receive — Connect your firm's email. Send from the platform or reply from your inbox — everything syncs. Resend-powered deliverability, no spam folder.
- Matter-level communication — Pin conversations to specific cases. See everything related to a matter in one place — across attorneys, staff, and case lifecycle.
Reviews. Asked for automatically.
A signed case is the best moment to ask for a review, and it is the moment most firms miss. The request goes out on its own, the same client is never asked twice, and your rating and review pace are tracked daily.
- Requests fire on the signed case — When a matter is marked signed, the review request goes out on its own — no one has to remember. Email only, sent under an existing business relationship, and idempotent, so a retry never double-sends.
- Never asked twice — The general review machine and the Local Service Ads review machine share one record of who has already been asked. A client who got the LSA request will not get a second one from the firm-wide machine.
- Rating and review pace, tracked daily — A daily snapshot of your Google rating and review count turns into velocity — how many new reviews arrived this month, not just the lifetime total sitting on your profile.
- Replies drafted with the ethics rules built in — Responses are drafted for you to approve and post. The drafting rules are the constraints a bar complaint would test: never confirm representation, never discuss case details, never admit fault. Posting stays with your firm — GavelGrow does not post to Google on your behalf.
- Setup is picking your listing — Search your firm, pick the Google listing, and the review link and place ID are set for you. Subject line and ask are editable if you want your own words.
Built for legal. Consent-first by default.
Every SMS honors CTIA opt-out keywords automatically. All consent events logged to an append-only audit trail. Consent logging, state-bar-aware controls, and AES-256 encryption from day one.
- Consent-tracked SMS — STOP, HELP, START, UNSUBSCRIBE — every CTIA keyword honored automatically. Append-only consent event log for defensible audit trails.
- Two-party consent call recording — Automatic state-by-state compliance. Verbal consent pre-roll where required. Recordings encrypted and access-logged.
- SAML SSO with your identity provider — Okta, Azure AD, Google Workspace, OneLogin, JumpCloud, Duo, Ping, or any SAML 2.0 IdP. Your IT admin configures GavelGrow in 10 minutes via a hosted admin portal. When someone leaves the firm, they lose access the moment you revoke them in your IdP. Optimize and Managed plans.
- Encryption + tenant isolation — AES-256 at rest, TLS 1.3 in transit. Row-level security in the database — your firm's data is invisible to other tenants. Daily encrypted backups.
- Bar-compliance review — Every outbound message template reviewed against state bar advertising rules before launch. No solicitation violations, no case-result overpromising.
Team seats. Role-based access. Auto-reports.
Invite attorneys, paralegals, and intake staff with role-based permissions. Send auto-generated reports to managing partners monthly. Export anything to CSV for the rest.
- Role-based team permissions — Owner, Admin, Member, Viewer — plus a dedicated Billing role for your external accountant or bookkeeper (sees invoices, reports, and audit log but NOT case data or client communications). Separate access for separate responsibilities without exposing privileged information.
- Auto-generated monthly reports — Branded PDF reports emailed to partners on the first of every month. Total spend, leads, signed cases, ROI — customizable by practice area. Date-range CSV exports available on demand for any ad-hoc question.
- Bulk lead operations — Triage at scale — select 50 stale leads and re-status, re-assign, or delete in one motion. No more clicking through rows one at a time when you're working through a 500-lead backlog.
- Outbound webhooks (Zapier / n8n / custom) — Register any HTTPS endpoint and GavelGrow POSTs signed JSON when specific events fire — new leads, status changes, deletions. HMAC-SHA256 signatures in Stripe's exact header format, so your existing verifier library drops in unchanged. Wire GavelGrow into Zapier's 7,000+ apps or your own backend in under a minute. Optimize and Managed.
- Customer-visible audit log — Every admin action (invites, role changes, subscription changes, SMS sends, intake submissions, deletions) logged with actor, timestamp, IP, and target. Visible to owners and admins under Settings → Audit Log — full accountability without paying for a separate audit service. If GavelGrow staff ever impersonates your workspace for support, those sessions appear in your audit log too.
One subscription. One login. One place the numbers agree.
Most firms assemble the list below out of four or five vendors, then spend the month reconciling them by hand. Published list prices, shown as ranges because every one of them meters by seat or by volume.
| Capability | Typical stack | GavelGrow |
| Call tracking | CallRail ($45-195/mo) | Included |
| Lead CRM | Clio Grow ($49/user) | Included |
| Ad analytics | AgencyAnalytics ($79-379/mo) | Included |
| SMS automation | Twilio + glue code | Included |
| Benchmarks | Not available | Practice-area (Pro) |
| Signed-case attribution | Spreadsheets | Automatic |
Want the marketing run for you instead of run by you? See the agency side. Switching from another tool? See how migrations work.
Frequently Asked Questions
Does the Features page show everything, or is there more in the platform?
These are the major capabilities. Inside the platform, each feature has additional depth — custom report builders, advanced filter logic, role-based permissions, team audit logs, and more. The 7-day free trial gives you full access to explore everything.
Can I use GavelGrow alongside Clio or MyCase?
Yes. GavelGrow focuses on the marketing funnel (click → lead → signed case) while Clio/MyCase handle post-intake case management. Many firms use both. We provide CSV export of signed cases that maps cleanly to Clio's import format.
How much does Twilio cost on top of the GavelGrow subscription?
Tracking numbers are pass-through billed via Twilio ($1/number/month + $0.03/minute). SMS is $0.0083/message. All transparent — shown in your billing dashboard. Track includes 2 numbers, Optimize includes 10, and Managed includes 3. Extra numbers on any plan are $10/month each.
Is the Benchmarks feature available on all plans?
Benchmarks (compare your firm to 500+ others by practice area and market size) are unlocked in full on Optimize and Managed. Track plans see a locked teaser with an upgrade prompt. Your own firm's data is always fully accessible regardless of plan.
Do you integrate with Google Ads, Meta Ads, and LSA?
Google Ads: yes — connect the account once and spend, clicks, impressions, and conversions sync every night. Local Services and Meta: yes, both connect as ad accounts too (Track connects one; Optimize is unlimited). Call tracking numbers can be pointed at campaigns on any of them, and CSV upload covers any platform we do not connect natively.
How do I import my existing lead history?
CSV import during onboarding. Our team can also do a white-glove migration from Clio Grow, Lawmatics, MyCase, or spreadsheet — just message support after signup.
All 59 capabilities are in the 7-day free trial — no card. See what it costs · Book a 15-minute demo · Full FAQ