What's New on the Platform: August 25 – September 17, 2026

What’s New on the Platform: August 25 – September 17, 2026

Over the last three weeks, we worked toward one idea: every number on the platform should come from somewhere.

A price should come from your price book, not be improvised. If nobody entered a cost, the platform should say so, not show a 100% profit. If a price can’t be confirmed, the AI assistant doesn’t quote it; it passes the question to your team. An empty field is not a zero, and that difference is now visible everywhere: in estimates, invoices, on the dashboard, and in conversations with customers.

In total, more than 1,100 changes reached the platform during this period. Here’s what matters most.

:rocket: The Big Stuff

  1. The price book is now a full pricing reference. Alongside your own items, it now includes a standard catalog of work with labor norms, crew composition, and material usage. Turn on the trades you work in, find the work you need by searching, and link your own item to it.
  2. You decide who sets the price on a document. The price book settings now have switches. You can keep setting prices by hand, turn on watch mode, where the price book only shows the price it would have set, or let the price book do the pricing. Markup rules, service plan member pricing, and minimum margin are turned on separately. Everything is off by default, so switch it on when you’re ready.
  3. Empty no longer looks like $0.00. A price nobody set, a cost nobody entered, and a tax rate left blank no longer turn into a zero on estimates, invoices, public payment pages, or the dashboard.
  4. The AI assistant doesn’t quote a price it can’t confirm. The voice and SMS assistants find out what work is needed and pass the pricing question to your team. A job booked by the assistant doesn’t get an unconfirmed amount, and its page explains why there’s no amount. The assistant also doesn’t make up business hours, warranties, or years of experience your company hasn’t provided.
  5. Measurements, right inside the estimate. Enter room dimensions, and the platform calculates floor area, perimeter, and trim length, then fills them straight into the right estimate line. Fractional quantities like 538.2 sq ft are saved exactly as entered.
  6. More control over what the customer receives. You can change a job or invoice status without messaging the customer. Estimates can be sent by SMS, not just email. Inbox tells you when a customer opens an estimate. A finished chat can be archived without deleting it.
  7. Working from a phone is easier. We reworked navigation, panels, forms, date and time selection, lists, and action buttons so the platform is comfortable to use from a phone on the job site.
  8. The demo opens right from the sign-in screen. The “Explore the demo” button opens a live demo company with owner access. It has jobs, invoices, payments, a crew, and customers, and that data refreshes several times a day.

:dollar_banknote: Price Book

This was the largest area of work during this period.

The Standard Catalog and Your Trades

  • The standard catalog of work is organized by section and trade.
  • Your company turns on the trades it works in. A trade that is turned off is hidden, not deleted: it disappears from search, line-item selection, online booking, and AI answers.
  • A single search box looks through both your own items and the standard catalog. You can also type a customer’s own words (English for now), and the platform suggests the matching section and the questions to ask before pricing.
  • You can link your item to a catalog entry, and unlink it.
  • A catalog price shows where it came from and what it doesn’t include.
  • Materials are included in a price when their cost is known: your company can enter its own purchase price or pick a value from the reference range. When material cost is missing, the price is clearly marked as labor only.
  • New Products section: products and equipment can be created, found, and billed as products rather than services.
  • A starter set of flooring services is available: 31 jobs, priced by you.

How Prices Reach Your Documents

  • When the price book sets prices, it prices lines when estimates, invoices, and jobs are created or edited, including the invoice created when a job is completed.
  • One line the price book can’t price no longer throws out the pricing for the whole document; that line uses the price from your own catalog.
  • A trip charge can be added to estimates and invoices. It’s counted once per document and stays in place when an estimate becomes an invoice.
  • When the price book sets prices, picking an item immediately shows the price for that customer’s tier, the same price that goes on the document.
  • With minimum margin turned on, a manager can approve a line below it.

How a Price Is Calculated

  • The visit calculator prices a visit from the norms: crew hours by skill level, materials (when their cost is known), the trip charge, and the visit minimum.
  • The trip charge and minimum are applied once per visit, not on every line.
  • Your hourly rate can be set two ways: calculated from wages and overhead, or simply entered, for example “$200 an hour.”
  • Hourly rate settings are grouped into four sections with explanations, and you can see which ones pricing needs. Questions about arriving at a job are asked in plain language.
  • Production work has its own utilization factor, so it is no longer priced at a service-call rate.
  • A new labor row no longer arrives with someone else’s rates: the field stays empty until you enter yours.
  • Materials are purchased in whole packages, and two lines using the same material no longer buy two packages when one is enough.
  • An item can store the details a technician needs to order the part.
  • Prices are rounded once, at the end of the calculation, not after every step.

Review and Readiness

  • The price book can review itself. It finds prices below cost, prices that look like they were entered in the wrong unit (for example, $1.89 instead of $189), ranges entered backwards, conflicting crew details, and bundles whose price differs from what the customer actually pays. Some of these can be fixed right from the review.
  • The readiness panel shows how much of your price book the platform can already price, what’s missing, and takes you straight to the row that needs attention.
  • Items without a task code are easy to spot, and codes can be filled in for the whole price book through CSV.
  • A document warns you when its total is below your company’s visit minimum.
  • A price suggested by AI fill won’t be quoted to a customer until a person confirms it.
  • AI fill no longer overwrites a price a person has typed.

Price Book Screens

  • The price book is split into separate pages with their own links: a section stays put when you refresh, and the Back button works.
  • A price book with more than 500 items shows all of them in the table, filters, search, and counts.
  • Screens use plain language: instead of internal codes, they say what’s missing and what to do about it.
  • On phones and tablets, a narrow table is replaced with cards.
  • A failed load or search shows as an error with a retry button, not as “nothing here.”
  • A preview of the new price book screen is available: four sections instead of twelve tiles, a “why this price” button, a list of what’s left to fill in, and explanations of terms. The link is on the current price book page.

Price Lists, Tiers & Bundles

  • A price list can be paused instead of deleted, with all of its prices kept.
  • Price lists, customer tiers, and volume discounts can now apply to a specific item.
  • A price list discount applies to the work only, not to the trip charge or the minimum.
  • If a percentage in a price list raises the price, the screen says so.
  • A price list stays in effect through the end of its last day in your company’s time zone, and its dates display correctly for businesses west of UTC.
  • A customer tier that’s turned off no longer gives a discount.
  • Good / Better / Best options reach the customer in the right order, keep every field from the first save, and respect the active price list.
  • The bundle form makes clear that documents currently use the item’s own price, not the bundle price.
  • Impossible settings are no longer saved, such as a price list that ends before it starts or a range whose minimum is above its maximum.

Import, Export & Permissions

  • Labor and material norms can be exported to CSV, filled in, and uploaded back.
  • An empty price cell no longer imports as $0.00, and an implausibly low price is rejected with its row number.
  • A price book loaded from its own export keeps its tax settings and item types. Suppliers are matched by name during import, so no duplicates are created.
  • Everyone can use the price book, but only the owner, admin, and director can change it. Cost is not visible to every role.
  • Saving an item no longer loses added labor rows, and a failed save is no longer reported as a success.

:receipt: Estimates, Invoices & Payments

Estimates

  • Room measurements right inside the estimate, with a unit of measure on every line. Fractional quantities are saved exactly.
  • Customers see a description of the work, not just the amount.
  • The estimate page a customer opens from a link shows discount and trip charge lines, so the lines add up to the total.
  • The preview shows the same totals as the saved estimate and scales to fit the document.
  • The amount on a signed proposal matches the estimate the customer keeps, and the proposal card says the price is before tax.
  • Estimates can be sent by SMS, and the estimate email includes a link to view it. The Email and Send Reminder buttons deliver the email to the customer.
  • Inbox tells you when a customer opens an estimate.
  • Fixing a typo no longer recalculates tax on an estimate the customer already has.
  • A new estimate no longer picks up items from an abandoned draft.

Invoices

  • An invoice status can be changed without sending anything to the customer, for example when the invoice was handed over in person. A payment link is still created.
  • “Mark as Paid” is now in the invoice action bar.
  • An invoice line remembers which job it was billed from, and an estimate shows which job it became.
  • Edits made right on an estimate or invoice page aren’t lost if saving fails, and a changed trip charge is saved.
  • Service plan invoices are dated by your company’s business day, and their due date follows your payment terms.
  • Lines on the PDF and in the exported spreadsheet add up to the total.
  • Customer documents use all of your branding fields.
  • A line the price book couldn’t price is no longer billed at $0.00.

Payments

  • A refund issued in Stripe is reflected in your records.
  • Two payments for the same amount are counted as two payments.
  • Customers can download their own payment receipt, even if you don’t have their email address.
  • A $0.00 payment request is no longer sent to the customer; your team sees what needs to be fixed on the invoice.
  • Public estimate and payment pages don’t show a total when tax was left blank, and never ask the customer to pay $0.00.

:robot: AI Assistant & Voice Agent

The rule for this period: the assistant says only what your company’s data supports.

  • The assistant doesn’t quote prices to customers on its own: it finds out what work is needed and passes the pricing question to your team.
  • A job booked by the voice agent doesn’t get an unconfirmed amount. Its page shows why there’s no amount, and the job list can filter for those jobs.
  • The voice agent reliably books callers into the time they choose.
  • An estimate over $5,000 that the AI wants to send to a customer waits for a person’s approval.
  • The assistant doesn’t claim a warranty or years of experience your company hasn’t provided. If a warranty is listed in your price book, the assistant uses your own words.
  • You can set the hourly rate the assistant shares with customers.
  • The assistant doesn’t state business hours your company hasn’t published, doesn’t say “no openings today” without checking, and no longer answers calls as a placeholder “Our Company.”
  • Someone who calls and texts from the same number is one customer.
  • A callback number the customer reads out no longer files the job under whoever owns that number.
  • The assistant doesn’t say an appointment doesn’t exist without checking, and doesn’t book over an existing appointment.
  • The assistant can schedule a job that already exists, after confirmation. If it couldn’t check a technician’s availability or skills, the assignment goes to a person for confirmation.
  • After cancelling, rescheduling, or sending an estimate, the assistant reports what actually happened, such as whether the old time slot was released.
  • The AI sees correct invoice amounts and respects the discount limit your company set.
  • The AI doesn’t suggest following up with customers you’ve already served.
  • The assistant finds photos of your work by your own tags, even when the customer describes the job in different words.
  • When AI is turned off, it stays quiet: no greeting is sent, and a staff reply pauses the AI on every channel. When the staff member stops replying, the AI picks the conversation back up, as its badge says it will.
  • The Inbox message box can be used as a prompt for the AI.

:speech_balloon: Inbox & Customer Communication

  • A finished chat can be archived and restored.
  • One customer message shows as one bubble, including retries and Thumbtack leads.
  • Conversations with Thumbtack and HomeAdvisor notifications appear in the Inbox list.
  • A reply to a Yelp or Thumbtack lead that failed to send is retried instead of lost.
  • The unread and “need attention” counters show real numbers.
  • “Customer not found” no longer appears when a contact’s phone number matches exactly.
  • If the connection drops, Inbox no longer looks up to date.
  • A customer who just called shows the time of the call, not their last text.
  • The “Message” button opens the chat the customer is already in.
  • With no prior history, calls and texts go out from your company’s main number by default.
  • A new phone number or address spotted in a text is flagged in the conversation and links to the customer’s profile.
  • A conversation shows the jobs, estimates, and invoices of that specific contact.
  • An unsent AI reply draft is marked as expired when it times out, and the conversation moves to “need attention.”
  • Conversations started from online booking appear in Inbox.
  • Line breaks in a message are preserved on a phone.

:date: Online Booking & Scheduling

  • The booking form keeps what the customer entered after a page refresh and shows submission errors. Tapping submit twice doesn’t create a second job, and if the chosen time was just taken, the customer goes back to an updated time grid.
  • The time grid accounts for service duration and doesn’t offer times the job won’t fit into.
  • A service plan customer who books online gets their member price, when member pricing is turned on in the price book.
  • The public page shows the same price that goes on the estimate.
  • Sundays are no longer hidden if your business works on Sundays.
  • The day selected on the date strip matches the day on the request, and the time grid shows its time zone.
  • “First Available” picks the nearest time that is actually open.
  • The address the customer typed reaches the technician.
  • The confirmation number a customer receives can be found by searching the job list.
  • A service that’s turned off can no longer be booked through an old link.
  • The booking page is fully light and uses your brand colors, including the confirmation screen.
  • Photos from a phone fit the size limit, and an unsupported file is rejected as soon as it’s picked.
  • The calendar export shows the hour the customer was promised.
  • Booking widget settings are saved.
  • On the schedule board, the job editor has a title field, and work orders and schedule changes appear without reloading the page. On the job page, the end time fills in automatically.
  • If a conflict check couldn’t run, the manager sees that instead of an “open calendar.”

:toolbox: Jobs, Work Orders & Customers

  • A job can be edited right on its page, and drafts survive navigation.
  • Saving from the job edit panel no longer writes $0 over the job’s amount, and a time corrected on the job page no longer shifts by the time zone difference.
  • Change history respects user permissions.
  • A cost nobody entered no longer becomes a 100% profit, and an explicitly entered zero is kept.
  • Work orders: a customer-facing document, real notes, SLAs, and a correct “SLA Breached” export column. Technician assignment in the edit window is saved, and $89.99 is no longer saved as $89.00.
  • Notes on the customer card work for every customer.
  • Editing part of a customer record or address no longer clears fields you didn’t touch, and work and company phone numbers are kept.
  • Customer list filters and sorting are kept in the page link. Customer sources such as Repeat Customer or HomeAdvisor are saved correctly, and lead statuses show their own names.
  • Unit rent and building details now save correctly.
  • In the customer portal, a service request shows your price book price or “no price yet” instead of a generic estimate that was the same for every company. The portal sign-in form appears for every company, and service plan dates no longer shift by a day.
  • The vendor portal shows the amount owed on a phone, and the contractor portal marks an emergency job as an emergency.

:busts_in_silhouette: Team, Roles & Payroll

  • Your company can set the day its workweek starts. Payroll exports and wage reports calculate overtime by that workweek.
  • Role permissions are more consistent. Dispatchers and supervisors can see payments. Technicians see Jobs and Schedule with their own work. Buttons a role has no permission for are hidden.
  • Technicians can open the details and documents of their own jobs and start a pending job. Assigned technicians can edit the title, description, and internal notes of their jobs.
  • The technician dashboard and time tracking recover after a session renewal, and a clock-in or clock-out is not sent twice.
  • Staff with permissions for customers and work orders can use them without access errors, and Inbox access works correctly for every role.

:bar_chart: Dashboard & Reports

  • “Today,” “this week,” and “overdue” roll over at midnight in your company’s time zone, not UTC.
  • The profit tile no longer shows revenue as profit or $0 when profit is unknown; it explains why the data is missing.
  • An unknown margin no longer lowers your business health score.
  • A month with no data shows as “no data,” not zero.
  • The expense card compares spending against your own benchmarks correctly.
  • A 20% conversion rate no longer displays as 2000%.
  • Key business metrics update correctly when you change the date range.
  • Business goals save correctly.

:mobile_phone: Interface, Phone & Languages

  • Many phone improvements: navigation, panels, safe areas at the screen edges, button sizes, calendar scrolling, and pull-to-refresh.
  • In the iPhone app, speaker and speakerphone selection work during a call.
  • The date and time picker stays on screen, minutes follow the chosen step, and 12 o’clock sits where people look for it.
  • The Save button in a panel stays on screen, and Escape in a quick-edit field cancels only that edit.
  • An empty list with an active filter no longer invites you to “create your first” record.
  • Tables outside the price book scroll horizontally on narrow screens.
  • Every page names its own browser tab, and a link opened in a new tab takes you to the right place after sign-in.
  • Public pages load faster.
  • Improved contrast and status colors in light and dark themes, plus better keyboard and screen reader support.
  • Improved Russian, Korean, Spanish, and Portuguese translations. The price book, the time-off screen, and the suspended account screen are now translated into every language.

:credit_card: Your Subscription

  • After you add a new card, Stripe charges that card instead of the one that failed. The digits in the add-card form are clearly visible.
  • “Reactivate” takes you straight to payment, and access is restored automatically after a successful payment.
  • Access is restored even if the payment notification got lost along the way.
  • A failed payment notice is sent once.
  • Plan buttons lead to the plan the calculator recommends.

:megaphone: Google Ads & Integrations

  • The website conversion tag can now be set up in the interface.
  • Calls to tracked ad numbers are sent to Google Ads as conversions.
  • Each company works with its own Google Ads account. If you connected Google Ads earlier, select your account again; the card will guide you.
  • Google errors are shown in plain language, the campaigns card shows the date range of its data, and a failed status check no longer looks like “not connected.”
  • Thumbtack integration settings are saved.
  • “Log in with Exoserva” works for Community.

:bell: Notifications

  • Customer emails, including visit reminders, booking confirmations, invoice payment links, and review requests, are delivered more reliably: all of them now go through the main email service.
  • An undelivered reminder is no longer marked as sent.
  • A customer message can’t be sent twice.
  • If notifications fail to load, the feed no longer looks empty, and “Clear all” in the notification menu works.
  • A pop-up notification no longer covers the bell.

:sparkles: Stability & Security

  • A customer’s incoming text is saved immediately, before processing, and isn’t lost if the queue fails.
  • Automatic follow-ups after a payment, call, or completed job (such as a review request) are no longer lost when something fails.
  • Restarting the internal cache no longer stops scheduled tasks.
  • Protection against excessive requests keeps working when the cache fails.
  • Card numbers, SSNs, and other personal details from customer messages are kept out of the short summaries the AI receives.
  • Stronger data isolation between companies, including prices and service areas.
  • Stronger link checks inside the app.
  • Exported spreadsheets open safely in Excel.
  • Access to the QuickBooks integration is checked against user permissions.
  • 17 vulnerabilities in third-party libraries were closed.

What’s Next

We’re continuing to finish the new price book screen so it becomes the main one, connect materials and labor in the standard catalog, expand it for electrical and plumbing work, grow the Products and equipment section, and keep improving work from a phone.

If you notice that a price, amount, status, or message doesn’t match what actually happened, tell us in Community. Those examples help us fix the entire workflow, not just the screen where the issue appeared.