Before continuing:
1. Create a free project at supabase.com
2. Go to SQL Editor → paste & run supabase_schema.sql
3. Create a Storage bucket named job-photos (set to Public)
4. Come back here with your Project URL and Anon Key
Please read and acknowledge the following before using the app
Your employer uses GPS location tracking while you are On Duty.
What is collected: Your device's GPS location (coordinates, speed, and heading).
When tracking occurs: Only while you have tapped Go On Duty in the app. Tracking stops automatically when you tap Go Off Duty or sign out.
Who can see your location: Account administrators and owners of your employer's workspace only. Your location is never shared with third parties.
Data retention: Location history is kept for 30 days and then permanently deleted.
Your control: You control when tracking is active. Tap Go Off Duty at any time to stop sharing your location immediately.
By tapping I Agree & Continue, you acknowledge that you have read this disclosure and consent to location tracking as described above while you are marked On Duty.
Your consent is recorded with a timestamp for compliance purposes.
CREWEHQ
Install CREWEHQAdd to home screen for instant access
Click Generate to create a summary from this job's notes.
Total Revenue
$0.00
—
Service Info
Service Type
Address
Scheduled Date
Assigned To
Notes
—
Profitability
0% Margin
$0$0
Total Price
$0
Customer Pays
Line Item Costs
$0
Materials
Labor Cost
$0
Timesheets
Expenses
$0
Other Costs
Profit
$0
Net Margin
Line Items 0
Product / Service
Qty
Unit Cost
Unit Price
Total Cost
Total Price
Markup %
Totals
$0.00
$0.00
—
No line items yet
Timesheets 0
Auto-populated from time clock
Team Member
Date
Start
End
Duration
Cost Rate
Labor Cost
Total Labor
$0.00
No time entries recorded
Expenses 0
Category
Description
Vendor / Payee
Amount
Total Expenses
$0.00
No expenses recorded
Internal Notes
Quotes & Estimates
Build and manage estimates
Quote #
Customer
Date ▼
Status
Total
Actions
Job Map
All jobs plotted by address · click a pin to view details
ScheduledEn RouteIn ProgressCompletedCancelled
Jobs on Map
Loading…
Optimize Route
Dispatch Board
Drag jobs to assign techs and times · Live sync active
Dispatch Map
ScheduledEn RouteIn ProgressCompleted
Unassigned jobs
Customers
Manage customer relationships
Bookings
Every submission from your online booking form — reply, convert, or dismiss
Messages
Two-way SMS conversations with customers
Select a conversation
New Message
Sales Pipeline
Drag leads through stages — from first contact to closed deal
Loading pipeline…
Pipeline Analytics
Conversion funnel, velocity, and lead source performance
Stage Conversion Funnel
Average Time in Stage
Lead Source ROI
Reports & Analytics
Revenue, performance, and business insights — live data
to
Revenue by Week
Jobs by Status
Employee Performance
Top Services
Quote Pipeline
Customers by Lead Source
SMS Usage — This Month
Accounts Receivable Aging
Callback & Warranty Intelligence
Quality metrics, cost analysis, and trend tracking
Callback Rate Trend
Monthly callback rate % — lower is better
Callback Rate by Tech
Callbacks vs. total jobs per technician
Callback Rate by Service Type
Callback Rate by Equipment Brand
Callback Cost Breakdown
Unbillable Callback Labor by Month
Warranty Claims by Part/Supplier
Callback Detail Log
Sales & Revenue Intelligence
Deep analytics — conversion funnels, cohorts, profitability & trends
Comparing periods
Month Pacing Scoreboard
Revenue by Service Category
Quote-to-Close Funnel
Avg Job Value Trend
Customer Acquisition by Source
Revenue per Tech (Ranked)
Payment Collection Speed
Repeat vs New Customer Revenue
Service Profitability Matrix
Customer Cohort Analysis
Retention, LTV, and repeat rate by signup month
Meta CAPI Status
Custom Report Builder
Settings
Pricebook, employees, and business preferences
Bulk Cost Price / COGS Editor
Set cost prices for accurate gross margin tracking. Export → edit in Excel → import back. Items without cost prices use a 40% revenue estimate.
Service Pricebook
Employees
Customer appointment reminders are handled by Go High Level workflows. Configure your GHL webhook in the API & Integrations tab — GHL will fire SMS/email automatically when a job is created.
Feature Controls
Saved to your Supabase database
Toggle features on or off for all employees on your account. Changes save instantly.
Tip Collection
Show a tip selector on the payment screen (10%, 15%, 20%, 25%, or custom).
Review Request
Show "Request Review" button on completed jobs. → Google review, → feedback → GHL.
Before/After Photos
Allow techs to upload Before, During, After photos — stored in Supabase Storage.
Digital Signature
Customer signs quotes on tech's device. Signature saved to cloud storage.
Sales Rep Tracking
Assign a sales rep to each job and quote. Unlocks per-rep performance dashboard in Reports. Not needed for solo operators.
Recurring Service Plans
Allow pricebook items to be marked as recurring (weekly, bi-weekly, monthly, quarterly, yearly). Enables subscription billing via Stripe, customer plan management, and MRR tracking on the dashboard.
Job Checklists
Create reusable inspection and service checklists. Techs check off items in the field. Optionally require completion before marking a job done.
Manager Revenue Access
Allow users with "manager" role to view Revenue Health dashboards, Gross Margin data, Forecasts, and Sales Intelligence reports. By default, only owners and admins can see financial analytics.
Online Booking
Enable a public-facing booking form customers can use to self-schedule from your website.
Embed on your website — copy this code:
Paste this into any page on your website. Customers fill it out and the booking appears in CREWEHQ automatically.
Booking Time Blocks
Set available appointment slots and how often they appear on the booking calendar.
Promo Codes & Discounts
Create discount codes you can apply to quotes. Use for campaigns, seasonal promotions, or referral rewards.
No promo codes yet
Create your first discount code for campaigns or referrals
Auto Lead Ingestion
Automatically capture leads from Thumbtack, Angi, Yelp, and more. Leads land in your pipeline instantly.
Your Webhook URL
Send a POST request with lead data to this URL. Leads appear in your Pipeline → New Lead column.
API Key
Platform Setup Guides
Thumbtack
Email forwarding — auto-parse lead notifications
Setup (2 minutes):
1. In your email app, create a forwarding rule
2. Forward emails FROM *@thumbtack.com
3. Forward TO your webhook email (see below)
4. Or use Zapier: Thumbtack email → Webhook POST to your URL above We auto-detect Thumbtack leads and extract name, phone, service type
Setup (2 minutes):
1. Create a forwarding rule for emails FROM *@angileads.com or *@homeadvisor.com
2. Forward TO your webhook email or use Zapier/Make
3. Leads include: customer name, phone, service type, location Works with both Angi Leads and legacy HomeAdvisor
Yelp
Direct webhook — Yelp Leads API integration
Option A — Yelp Leads API (recommended):
1. Go to Yelp for Business → Developer settings
2. Set your webhook URL to the URL above + &source=yelp
3. Yelp sends leads directly — no email forwarding needed
Option B — Email forwarding:
Forward emails from *@yelp.com via Zapier/Make Supports both direct webhook and email forwarding
Google Business
Google leads via email or Reserve with Google
If you have Reserve with Google set up, leads already flow into CREWEHQ.
For Google Business message leads, forward emails from *@google.com containing "message from" to your webhook.
Facebook / Meta
Capture Facebook Lead Ads and Messenger leads
Option A — Zapier (easiest):
1. Connect Zapier to your Facebook Lead Ads
2. Send webhook POST to your URL above with &source=facebook
Option B — Email forwarding:
Forward lead notification emails from *@facebookmail.com
Other / Custom
Nextdoor, Bark, website forms, or any source
Send a JSON POST to your webhook URL: POST {webhook_url}
Content-Type: application/json
{"name":"John Smith","phone":"5551234567",
"email":"john@test.com","service":"AC Repair",
"source":"website","message":"Need help ASAP"}
Works with Zapier, Make, Pabbly, n8n, or any automation tool.
Recent Ingested Leads
Loading…
Auto-Response SMS BUSINESS
Fire a text message within seconds of a lead arriving. Shops that respond in <1 min win the job 78% of the time.
Requires Twilio SMS to be configured in Settings → API → Twilio. SMS charges apply per your plan.
Lead Source Cost Tracking BUSINESS
Enter what you pay per lead per platform. The dashboard will show which sources actually pay off.
$
$
$
$
$
$
$
$
Lead Source ROI BUSINESS
Last 30 days · leads × cost vs jobs closed × total revenue
Click Refresh to calculate ROI
Lead Source Labels
Customize which sources appear when adding customers. Add your own — Door Hanger, TV Ad, Truck Wrap, etc.
Data Export
Admin access only · Exports all tenant data as a ZIP of CSV files
Customers
Jobs
Quotes
Pricebook
Employees
Time Entries
Shifts
Routes
Promo Codes
SMS Logs
SMS Usage
Downloads a ZIP containing one CSV per table · All data for this workspace
Preparing export…
Admin Notice
This export contains all workspace data including customer PII, job history, and financial records.
Handle with care. This tab is only visible to accounts with admin role —
owners, managers, and employees cannot see or access this feature.
There is no time limit on data availability — data is retained indefinitely unless manually deleted.
Import Data from CSV
Import customers, jobs, invoices, quotes, employees, line items, and price book entries from a CSV file. Supports direct exports from Jobber, Housecall Pro, ServiceTitan, FieldPulse, and QuickBooks.
Drag & drop your CSV here
or click to browse files
Map CSV Columns
Match your CSV columns (left) to CREWEHQ fields (right). Pre-filled based on your source selection.
Preview (first 5 rows)
Every row will be stamped with your workspace's tenant_id
Import Progress
Preparing…
Checklist Templates
Signup Recovery Dashboard
0
Entered Info
0
Clicked Continue
0
Saw Payment
0
Recovered
Abandoned Signups (most recent first)
Click Refresh to load data
Company Profile
SP
Click to upload
PNG, JPG, SVG · max 2MB Recommended: 400×120px
Used in dashboard Revenue Goal tracker
Flag jobs below this margin %
Tax Settings
Pre-fills tax rate on new quotes
Shows tax line on job totals across the app
Credit Card Surcharge
Add a surcharge to credit card payments to offset processing fees. When enabled, a checkbox appears on the payment screen — if checked, the surcharge is added as a separate line item on the invoice.
State Law Notice: Credit card surcharging is illegal in some states and restricted in others. It is your responsibility to verify this is legal in your state before enabling it. CREWEHQ is not liable for any fines, penalties, or legal action resulting from your use of this feature. When in doubt, consult a lawyer or disable this feature.
Service Area ZIPs
Custom Fields PRO+
Add your-trade-specific fields to customers + jobs (Pool Type, Gate Code, Equipment Brand, etc.). Values show on list view so techs see them without opening the record.
Loading…
Need more custom fields? Business plan gives you unlimited fields + lets you filter customers by custom field. View Business →
Add Custom Field
Keep it short — this shows as a column header on the list view.
Calendar Sync
Not Connected
Subscribe to your CREWEHQ job schedule in Google Calendar, Apple Calendar, or any calendar app. Updates automatically every hour.
Your Calendar Feed URL
Regenerating creates a new URL and invalidates the old one. Anyone subscribed to the old link will need to resubscribe.
Stripe Account
Connect your Stripe account so customer payments go directly to your bank — not ours. You're always the merchant of record.
Not Connected
Why connect?
Payments deposit to your bank account, usually next business day
Customers see your business name on their card statement
Enables ACH (save 2% per invoice), Apple Pay, Google Pay
CREWEHQ never touches your money
If you don't have a Stripe account yet, you'll create one during connect. Free.
Stripe connected — test mode Account ID: Connected:
This publishable-key setup is the older flow. Once you've connected your Stripe account above, this isn't required for customer payments.
Stripe Webhook (Fallback)
Ensures deposits are recorded even if customers close the browser before being redirected back. Highly recommended.
Your Webhook Endpoint URL
Setup steps:
1. Go to dashboard.stripe.com/webhooks → Add endpoint
2. Paste the URL above → Select event: checkout.session.completed
3. Copy the Signing secret (whsec_…) → run in your terminal: supabase secrets set STRIPE_WEBHOOK_SECRET=whsec_... --project-ref YOUR_PROJECT_REF
Default Deposit Settings
Set a default deposit requirement for quotes. Can be overridden on each individual quote.
QuickBooks Online
Not Connected
Connect your QuickBooks Online account to automatically push invoices, payments, and customers every time a job is completed. Native OAuth 2.0 — no Zapier required.
Invoices
Auto-pushed on completion
Payments
Recorded when job is paid
Customers
Created/matched in QBO
QuickBooks Company
Connected · Auto-sync active
Last sync: Never
Sync Log
Entity
ID
QBO ID
Status
Time
No syncs yet
Accept Bank Payments (ACH)
Show a "Pay by bank" option alongside card on the customer payment page. Stripe ACH clears in 3–5 business days. Requires your Stripe account (connected above).
Customers see both options on checkout. Bank payments save you the card-processing fee; the plumber doing $15K/month typically saves ~$125/month when 40% of payments move to ACH.
Google Ads Conversion Tracking BUSINESS
Close the loop on your Google Ads. Every paid job feeds back to Google so their algorithm optimizes for clicks that actually close — typically lowers CAC 20-40%.
How it works: We auto-capture the gclid (Google Click ID) on every lead that arrives from Google Ads. When the job gets paid, we record a conversion. You export the CSV and upload it to Google Ads once a month. (Full API auto-upload is coming once we're approved for production dev-token access.)
Pending conversions
—
Upload instructions: Google Ads → Tools & Settings → Measurement → Conversions → Uploads → Upload new file. Select "Conversions from clicks" format.
Google Tag Manager (optional)
Paste your GTM container ID and we'll auto-inject the script on every page of the app. Useful for tracking conversions across your website and CREWEHQ in one place.
Send conversion events to Meta so you can see cost-per-booked-job in Ads Manager. Get your Pixel ID and Access Token from Meta Events Manager → Your Pixel → Settings → Conversions API.
SMS Automations
Send reminders, follow-ups, and payment nudges on autopilot.
Automated SMS Triggers
Automatically text customers at key moments. Requires a business phone number in Settings → Phone.
Missed Call Text-Back
Disabled
When a call to your Twilio number goes unanswered, auto-text the caller and create a Lead in your Customers tab. Requires Twilio credentials in Settings → Phone.
— only text during set hours (leads still created outside hours)
Text between
and
Setup: In your Twilio console, set your phone number's Voice webhook to: Loading…
Push Notifications
Off
Get instant alerts on your phone or desktop when important things happen — even when the app isn't open.
Notify me when:
Push notifications enabled
Who receives notifications:
Loading...
Weekly Performance Email
Disabled
Receive a weekly performance summary every Monday morning with revenue, top tech, open quotes, and outstanding invoices.
Business Phone Number
Not Set Up
Call Recording BUSINESS
Record inbound customer calls for dispute resolution, quality review, and training. Outbound tech-to-customer calls are never recorded.
Legal notice: 12 US states require both parties to consent to recording. We automatically play a consent announcement at the start of every recorded call. Do not disable the announcement unless you've independently confirmed single-party consent is valid in your state.
One-time Twilio setup
After saving, paste this URL into your Twilio phone number's "A Call Comes In" webhook (Twilio Dashboard → Phone Numbers → Active Numbers → your number → Configure tab → Voice Configuration):
Method: HTTP POST
Recent Recordings
Click Refresh to load recent calls.
VoIP In-App Calling
Disabled
Designated Call Receiver
Inbound calls ring this person. If they don't answer, it goes to voicemail.
Saved
Recent Calls
Loading call history...
Google Review Requests
Disabled
Automatically text customers after a completed job asking for a Google review. Requires your Google Review URL (Settings → Company) and Twilio configured above.
Inbound SMS Setup: In your Twilio console, set your phone number's Messaging webhook to: Loading…
Choose the plan that fits your business. Upgrade or downgrade anytime.
Admin Plan Override
Override this tenant's plan (admin-only). Changes take effect immediately.
Price Book Template Library
Admin-only — 30 trade templates ready to deploy to new customers
0 items
Loading templates...
Deploy Template to Customer
Selected Template
This will copy all template items into the selected tenant's pricebook. Existing items will NOT be affected. Prices can be adjusted by the tenant afterward.
Feature Control Panel
Admin-only — Manage which features each business gets based on their plan
Current Plan
Quick Preset — Set All Features to Plan Level:
Active Overrides for this Tenant
API & Integrations
Connect Stripe, Google Maps, GHL, and more
Supabase Connection
Connected
Your CREWEHQ data is live in Supabase — real-time sync, cloud photos, and role-based access are all active.
Google Maps
Not Configured
Mapbox
Not Configured
Mapbox powers the Job Map, address autocomplete, and route optimization features. Get a free token at mapbox.com.
Advanced / Manual Override (Admin only)
▶
These fields override the automated phone provisioning above. Only use if you have existing Twilio credentials or need manual control.
SMS Log
All outbound texts — missed call text-backs, job notifications, and manual tests. Rate limit: 1 text per number per 2 hours.
Click Refresh to load SMS history
CRM Integrations
When a booking or payment is created, CREWEHQ fires a webhook to all enabled integrations.
Go High Level
Auto-create contacts & appointments. Missed call text back fires from GHL.
Zapier / Make.com
Generic webhook — connect to any app
Custom CRM / REST
POST to any endpoint (Salesforce, Pipedrive, etc.)
Email — Managed by CREWEHQ
Active
Nothing to set up. CREWEHQ sends all your transactional email (quotes, invoices, receipts, booking confirmations, review requests) for you — included in your plan at no extra cost.
Defaults to your company name. Appears in the "From" line of every email.
When a customer hits reply, it goes here. Defaults to your company email.
Auto-send rules
Email notification is always sent. Enable this for an additional SMS alert.
Email Activity Log
Every email sent on your behalf — delivery, open, and bounce status tracked automatically.
Click Refresh to load email history
Suppressed Emails (Hard Bounces)
Emails that hard-bounced are automatically suppressed. Future sends to these addresses will be blocked to protect your sender reputation.
Click Refresh to view suppressed emails
Email Preview
To:
Subject:
Reserve with Google
Let customers book directly from Google Search & Maps — jobs land in your dashboard instantly
Pending Approval
How it works: Google sends booking requests to your CREWEHQ webhook URL. Jobs appear in your dashboard immediately. Requires Google to approve CREWEHQ as a certified booking provider — apply once per account, typically 2–4 weeks.
Step 1 — Your Webhook URL (give this to Google)
This URL receives booking events from Google. It's secured — only Google-signed requests are accepted.
Step 2 — Google Business Profile ID
Step 3 — Service Mapping
Map your Google-listed services to CREWEHQ pricebook items. When a customer books via Google, the matching job type is auto-applied.
Save your settings first to configure service mapping
Google Approval Checklist
Registered business entity (LLC or Corp)
Google Business Profile verified
Webhook URL configured above (Step 1)
At least 3 services mapped (Step 3)
Submit via business.google.com/booking-providers
Google reviews integration (10+ reviews recommended before applying)
Availability Settings
Recent Google Bookings
No bookings yet — once Google approves your account, bookings will appear here.
Shifts & Schedule
Assign shifts to employees — everyone sees their own week
Hours Summary — This Week
Employee
Mon
Tue
Wed
Thu
Fri
Sat
Sun
Total Hrs
Status
Recurring Routes
Pool routes, lawn care, and any repeat service — auto-scheduled
AllActiveInactiveWeeklyBi-WeeklyMonthly
No routes yet
Create a recurring route for pool cleaning, lawn care, or any repeat service
Job Details
Customer & status
Service & crew
Schedule
to
Callback Costs (Phase 2)
Job Total (base)—
Tax (0%)—
Total Due—
PAID
Customer
Activity
Contact
Details
Auto-billing
No card on file. Send a card setup link to save a card for auto-billing.
Authorization:
By enabling auto-charge, you confirm the customer has authorized you to charge their stored card
for any completed job and any deposit on a signed quote.
They may revoke authorization at any time by contacting you.
Electronic signature consent:
By signing below, the customer consents under the federal E-SIGN Act to receive and sign this estimate electronically.
A signed copy is stored on their account and may be requested at any time. Consent applies to future estimates from this business unless revoked in writing.
Customer signs below to approve this estimate:
Quote Approved
Ready to schedule — convert this into a job to assign a tech and date.
Reject Quote
Job Photos
Before
During
After
Collect Payment
Subtotal$0.00
Tax (0%)$0.00
CC Surcharge (3%)$0.00
Total Due$0.00
Add a tip?
Tip: $0.00 — New Total: $0.00
Added as a separate line item on the customer's invoice
Powered by Stripe — test mode
Change: $0.00
Send a secure payment link via SMS or email
Payment Recorded!
Send Review Request
A review request link will be sent to the customer's email with a quick thumbs-up / thumbs-down survey.
How Did We Do?
Your feedback means the world to us!
Awesome! Glad you're happy!
Would you mind leaving us a quick Google review? It takes less than 60 seconds and helps us a ton!