July 14th, 2026

Staff can now select a reason when cancelling an inspection, drawing from a standardized list approved by brand leadership
The Client Care Dashboard's Employee Performance table now supports toggling close rate attribution between Scheduled By and Quote Creator
Admin Attik gained two dashboard controls: a toggle to view data across all brands, and a setting to exclude specific companies from stats.
Contact search now finds nickname and partial-name matches, cutting down on duplicate contacts.
View Dashboard Data Across All Brands
What changed — Admin Attik users with brand dashboard access can now toggle their dashboards between "Assigned Instances" and "All Instances," giving cross-regional users and leadership a full organization-wide view without needing full backend access to every instance. This applies to all Admin Attik dashboards (Launchpad Revenue, Post-Inspection Revenue, and others).
Where to find it:
Any Admin Attik dashboard (e.g. Launchpad Revenue, Post-Inspection Revenue)
Use the new toggle to switch between Assigned Instances and All Instances

Setup: A super-user must grant brand dashboard visibility per user before the toggle appears — via Instance Management → User Management → the user's Admin Permissions section.
Include or Exclude Companies from Admin Stats
What changed — Admin Attik users can now mark specific companies (test/demo accounts, spun-out tenants, incomplete setups, etc.) to be excluded from all admin stats and dashboards, so they don't skew aggregate metrics. Excluded companies stay out of every dashboard, table, and breakdown consistently, and changes apply immediately without a redeploy.
Where to find it:
Admin Attik → Settings → Dashboard Companies
Toggle any company's include/exclude status

NOTE: This setting does not need to be edited each time reports are run, only when instances are no longer required.
Export Service Area Polygons
What changed — Companies can now export their service area boundaries as polygon coordinate data, with disconnected regions automatically split into separate shapes. There's an option to exclude expanded/out-of-area zones from the export.
Where to find it:
Settings → Service Areas
Select Export next to Add New

Cancellation Reason Required When Cancelling an Inspection
Cancelling an inspection now requires selecting a reason before the cancellation can go through. Staff choose from a standardized dropdown list (Access Issue, Transaction Canceled, Postponed, etc.) or select "Other" to type a custom reason.
Where to find it:
Open any inspection
Select the option to cancel the job
Choose a cancellation reason from the dropdown (required before confirming)

Close Attribution Toggle on Client Care Dashboard
The Employee Performance table on the Client Care Dashboard now has a toggle to switch how close rate is attributed. Staff can choose between Scheduled By (who booked the job) or Quote Creator (who originated the quote/lead). Revenue, upsell, and cancel columns are unaffected by the toggle — only close-related metrics shift.
Where to find it:
Go to the Client Care Dashboard
Find the Employee Performance block
Use the new toggle in the table controls to switch between Scheduled By and Quote Creator

Undo UKG Send Now Available on Payroll History Records
After sending payroll to UKG, an Undo UKG Send button now appears on the payroll history record. Using it will attempt to remove the pending earnings from UKG before they are processed — useful when a correction is needed after a send. Lines that have already been processed in UKG payroll cannot be removed and will remain in UKG.
Where to find it:
Go to HR → Payroll
Open a payroll history record that has been sent to UKG
Use the Undo UKG Send button to remove pending earnings from UKG

Required Service Info Fields Now Export as Columns
When you select a Required Service Info field, that field now appears as a column in the exported results. Fields are added and removed from the column list automatically as you select or deselect them.
Where to find it:
Go to Data Exports
Open or create a report
Use the "Required info fields to include" dropdown (above the Filters section) to select any Required Service Info field — it will appear as a column in the export preview automatically


Per-Charge Detail in Launchpad Revenue Exports
What changed — The Launchpad Revenue CSV export now breaks out each charge on an inspection into its own set of columns (name, amount, service category, and bundle name) at the end of the row, instead of only summary revenue totals. Inspections with no charges still export cleanly.
Where to find it:
Admin Attik → Launchpad Revenue dashboard
Select Download data

QuickBooks Sync Error Alerts Silenced for PAC Payment Retry Loop
A loop where FlexFund PAC webhook activity was repeatedly re-queuing already-completed payments for QuickBooks sync — generating hundreds of redundant failure alerts — has been stopped. Deposited payments and other known terminal sync states no longer trigger repeat alerts on every retry cycle.
Applies to: Existing and future records
Primary-Only Required Reports No Longer Appear on Add-On Services
Required report slots configured as "Primary Only" now correctly appear only on the primary service charge. Previously, these slots were incorrectly showing up on add-on services added to the same inspection.
Applies to: Existing and future records
Duplicate Refunds and Double-Charges Prevented
A safeguard now prevents the same refund or card charge from being processed more than once if a request is submitted multiple times in quick succession. Payments and refunds that are already in progress will not be duplicated.
Applies to: Future records only
Inspection Totals Update More Reliably After Changes
Inspection totals now update more consistently after changes are made to charges or services on a job. Previously, totals could fall out of sync when multiple changes happened at the same time.
Applies to: Future records only
Correct Expiration Date on Report Exports
What changed — In the exports file list, the Expires column was showing the same date and time the export was created instead of the real 30-day expiration. Completed exports now show the correct expiration date, and the fix also corrects exports that were already showing the wrong date. (The date only appears for exports that finished successfully; queued, processing, or failed exports show a dash.)
Where to find it:
Data Exports
Run any report
In the Your exports list, check the Expires column

Applies to: Existing and future records
Contact Search Now Finds Nickname and Partial-Name Matches
What changed — Searching for a contact by a partial name, common nickname or phone number now reliably surfaces the right existing profile. Previously, searches like "Sandy" wouldn't find a contact stored as "Sandra," which pushed staff to create duplicate contacts. Fuzzy matching has been loosened so these variations return the expected results — in global search, the scheduling contact picker, and the merge flow. Phone number searches do not require any specific formatting.
Where to find it: The main search bar, the contact picker when scheduling, and contact search in the merge flow.
Applies to: Existing and future records
Create Contact Companies Even When Another Brand Uses the Same Name
What changed — Adding a contact company no longer fails when a different brand/tenant already has a company with that name — company names are now unique per brand rather than across the whole system. If a create does fail, you'll now see an error message and the add form stays open instead of failing silently. This release also improved screen-reader labels on the contact form dropdowns (HubSpot, tags, inspector, and company).
Where to find it: When adding or editing a contact and creating a new contact company.
Applies to: Existing and future records
Booked Inspection Time No Longer Flips PM to AM
What changed — When scheduling an inspection for a PM time slot, the booked inspection could show up on the workorder header as the same clock time in AM (e.g. a 2:00 PM booking displaying as 2:00 AM) — a 12-hour shift that led to missed appointments. The booked time now matches the slot that was selected.
Where to find it: No new screen — takes effect when booking an inspection; the confirmed time on the inspection details header now matches the scheduler selection.
Applies to: New orders only
Email Builder Reliability Fixes
What changed — Three issues in the email builder are fixed: (1) images now upload on the first attempt instead of silently failing and requiring a second try; (2) a headline added on its own no longer forces an undeletable blank gap that showed as white space in sent emails; and (3) saving and refreshing no longer reorders your last-edited section to the bottom or drops text from sections. Emails now save and render as built, without the manual workarounds.
Where to find it: Action Flows → email builder, when creating or editing an email.
Applies to: Existing and future records
Correct Invoice Total When a Fixed Discount Is Combined With a Bundle
What changed — When a fixed-amount discount code was applied to an order that also had a bundle, the primary service line got slightly less discount than it should, leaving the invoice a few dollars higher than intended (e.g. a $30 discount only saving $27). The full discount is now distributed correctly so the invoice total reflects the complete savings.
Where to find it: No new screen — takes effect on orders that combine a fixed discount code with a bundle; the invoice total now reflects the full discount.
Applies to: New orders only
Client Portal Blocks Paying an Already-Paid Invoice
What changed — In the client portal, a stale balance could let someone reach the payment page and pay a second time on an invoice that was already settled. The portal now checks the actual payments on the invoice and shows "Invoice Already Paid" instead of allowing a duplicate payment.
Where to find it: Client portal → the invoice payment page.
Applies to: Existing and future records
App No Longer Crashes When Resuming From the Lock Screen (Mobile App)
What changed — The Attik mobile app could crash when you unlocked your phone and returned to it, due to how it checked for updates on every resume. It now only checks for updates on a fresh launch, so returning to the app after locking your phone no longer crashes it.
Where to find it: No new screen — takes effect after updating the mobile app.
Applies to: All users on the updated app version