Skip to main content
The Sales tab is the revenue view of the CRM. Every value on this screen — closes, invoices, and orders — comes from GoHighLevel models. Stripe data is not used here; per-business Stripe enrichment lives separately in the Contacts/Sales grid columns.

Summary cards

A row of KPI cards sits at the top of the Sales tab and summarises the selected date range. Every number is sourced from GHL:
CardWhat it showsGHL source
Total ClosesNumber of contacts marked as closed in the period.Contacts with a value in the GHL Date Closed custom field (or in a won opportunity stage, depending on Revenue Settings mode).
Contract ValueSum of Contract Value across closed contacts.GHL custom field configured in Revenue Settings → Contract Value field, or monetaryValue on won opportunities.
Cash CollectedSum of cash actually received.GHL custom field configured in Revenue Settings → Cash Collected field.
Total InvoicesCount of GHL invoices for the period.GHL invoices API.
Invoice AmountSum of GHL invoice amounts.GHL invoices API.
Total OrdersCount of GHL orders (ghl_orders).GHL orders API — the same source used by the Order fallback.
Order AmountSum of GHL order amounts.GHL orders API.
These cards recompute when the date range or filters change.

Three sub-tabs

The Sales table is split into three sub-tabs, all populated from GHL:
  • Closes — GHL contacts that closed in the period.
  • Invoices — GHL invoices for the period.
  • Orders — GHL orders (ghl_orders) for the period.
Each sub-tab has its own count badge (for example, Closes (8), Invoices (0), Orders (0)).

Closes columns

The default Closes grid surfaces:
ColumnDescription
CheckboxMulti-select for bulk actions.
HistoryOpens the contact event history.
NameContact name.
Phone NumberSynced from GHL.
EmailSynced from GHL.
GHL Contact IDNative GHL ID for cross-referencing.
Date ClosedDate from the GHL Date Closed custom field (or won-stage timestamp).
Contract ValuePer-contact Contract Value from the mapped GHL custom field.
Cash CollectedPer-contact Cash Collected from the mapped GHL custom field.
UTMAttribution captured on the GHL contact.
Use Columns to add UTM Source / Medium / Campaign, Ad IDs, and other GHL custom fields.

Invoices and Orders sub-tabs

Both sub-tabs read directly from GHL:
  • Invoices — One row per GHL invoice (amount, status, line items, contact link).
  • Orders — One row per GHL order from the ghl_orders table (amount, orderStatus, paymentMode, customer email). This is the same source used by the Order fallback option in Revenue Settings.
If a sub-tab is empty, check that the corresponding GHL feature is in use (invoices created, orders captured) for the selected date range.

Pagination and bulk

  • Per page selector (default 50) and 1–8 of 8 style counter at the bottom right.
  • Bulk select with checkboxes to export selected rows or change status.

Typical workflows

Reconcile Cash Collected with finance

  1. Set the date range to the period finance is reconciling.
  2. Read the Cash Collected summary card.
  3. Cross-check against finance’s bank deposits; export the Closes sub-tab if you need a line-item breakdown.

Audit a Contract Value spike

  1. Sort the Closes sub-tab by Contract Value descending.
  2. Use the History icon on the top rows to verify the deal was real (form submission, calls, payment).
  3. If a row shouldn’t be counted, fix the GHL custom field value in GHL and let the next sync recompute.

Investigate missing revenue

  1. Compare Contract Value and Cash Collected cards against your expectation.
  2. If a closed deal is missing, open it in GHL and confirm the mapped custom fields (Contract Value, Cash Collected, Date Closed) are populated.
  3. Re-run a manual GHL sync so the value picks up immediately.

Next steps

GHL Revenue Settings

Configure which GHL custom fields drive Contract Value and Cash Collected.

Lead qualification rules

Make sure only real deals count as closes.