# BlastoClean — full site

Every page of https://www.blastoclean.com as one document. Generated at build time; see https://www.blastoclean.com/llms.txt for the linked index.

---

---
title: "Your day, on a map. · BlastoClean"
description: "See visits, assignments and open time together. The day map preview starts on Starter."
url: "https://www.blastoclean.com/features/live-map"
---

# Your day, on a map.

See visits, assignments and open time together. The day map preview starts on Starter.

Preview. Choose Map in Schedule to open it when your plan includes it. The calendar stays available; office accounts in the mobile app open on Home; paid plans can also open Schedule.

This illustration uses fictional visits and is not a driving route or a travel time. The map shows the streets around your visits. On the phone, the street map is in the app.
## See the day together

Pins show visits with saved coordinates. A separate list keeps visits with missing coordinates visible. Crew chips show assignments and the last available clock punch position, with its timestamp.

## Fix an assignment

Owners and managers can reassign a visit, or use the keyboard menu. The latest schedule is checked before the change goes through. If someone else changed it, refresh and review before trying again.

## Review open time

A cancellation can create an opening. Choose a visit to move into it, or dismiss the opening. Filling a slot stays a manual decision. Reduced motion keeps opening markers still.

## Free

Read-only customer map. A fictional sample day is available only in the mobile app and does not change your schedule.

## Starter and above

Day map, visit reassignment, manual fill and dismiss, and last clock punch positions. Refreshes every 15 seconds while online.

## Future phases

Live background tracking, ETA messages and map waitlist offers are planned for a separate Pro phase. Route suggestions and a multi-location map filter are later work. None is included in this preview.

## A punch position is not live tracking

The preview reads existing clock punch locations. It does not turn on background GPS collection. A missing or old position is labeled, never presented as a current location.

[Start free](https://www.blastoclean.com/start)

---

---
title: "Job chat | BlastoClean"
description: "A chat for each clean, included with Starter, Pro and Business."
url: "https://www.blastoclean.com/features/job-chat"
---

# A chat for every clean.

Job chat

Job chat is included with Starter, Pro and Business. Email links require configured email delivery; your office can turn off new chats.

Each visit chat starts as an internal conversation for the assigned crew and office. An owner or manager can include the customer for an individual visit. The customer then opens a private link without creating an account and sees messages and photos shared with them.

## When it opens and closes

By default, chat opens 24 hours before a confirmed visit. When the visit is completed, replies remain open for 24 hours. It then stays read-only for seven days before being hidden from customers and crew.

## Photos and privacy

Do not share the link. Anyone who has it can access the chat. The office can save photos to the permanent visit record. Archiving does not mean immediate deletion.

The invitation to write a public review is the same for every rating. Private feedback is optional.

The first phase covers text, photos and email links. SMS, tips, AI and realtime belong to later phases and are not included.

Starter includes 150 chats per month in the company timezone and 30 photos per chat. Pro includes unlimited chats and 60 photos per chat. Free only shows a demo without sending messages. Business includes unlimited chats and photos.

[Start free](/start)

---

---
title: "Job chat help | BlastoClean"
description: "Private links, photos and chat lifetime."
url: "https://www.blastoclean.com/help/job-chat"
---

# About your cleaning chat

Job chat

Job chat is included with Starter, Pro and Business. Email links require configured email delivery; your office can turn off new chats.

Each visit chat starts as an internal conversation for the assigned crew and office. An owner or manager can include the customer for an individual visit. The customer then opens a private link without creating an account and sees messages and photos shared with them.

## When it opens and closes

By default, chat opens 24 hours before a confirmed visit. When the visit is completed, replies remain open for 24 hours. It then stays read-only for seven days before being hidden from customers and crew.

## Photos and privacy

Do not share the link. Anyone who has it can access the chat. The office can save photos to the permanent visit record. Archiving does not mean immediate deletion.

The invitation to write a public review is the same for every rating. Private feedback is optional.

The first phase covers text, photos and email links. SMS, tips, AI and realtime belong to later phases and are not included.

Starter includes 150 chats per month in the company timezone and 30 photos per chat. Pro includes unlimited chats and 60 photos per chat. Free only shows a demo without sending messages. Business includes unlimited chats and photos.

For questions about your clean, contact your cleaning company. For questions about BlastoClean: [hello@blastoclean.com](mailto:hello@blastoclean.com)

---

---
title: "BlastoClean — Walk it, quote it, get paid"
description: "For home cleaning and commercial cleaning companies. Send the quote. Book the visit. Put the crew on it. Get paid."
url: "https://www.blastoclean.com/"
---

# Run your cleaning business in one place.

Quotes, scheduling, crews, payments, and texting.

For home cleaning and commercial cleaning companies. Send the quote. Book the visit. Put the crew on it. Get paid.

[Start free](https://www.blastoclean.com/signup)

[Try the live demo, no account needed](https://www.blastoclean.com/try)

## Why BlastoClean

- Free plan. No credit card needed.
- Works on the phone you already have.
- Nothing extra to buy.

## Built for home cleaning and commercial cleaning

_Who it is for._

### Home cleaning

- Room-by-room quotes from your prices.
- One-time and recurring visits.
- A confirmation before the visit.

[See house quotes](https://www.blastoclean.com/docs/building-a-quote)

### Commercial cleaning

- A monthly contract for an office or a building.
- Several frequencies on one quote.
- More than one crew, and a page for each building.
- One invoice for the month.

[See commercial cleaning](https://www.blastoclean.com/docs/commercial-cleaning-mode)

## Quoting

Prices from your rooms, your tasks, and your rates.

- **Quote by room and size**. Room-by-room quotes from your prices, with size and condition multipliers.
- **Quick Quote** (Starts on Starter). A typed description, photos or both become a draft quote.
- **Magic Quote** (Starts on Pro). An AI walkthrough with photos and voice notes.
- **Send the quote**. Email on every plan. Text on Pro, when the customer has agreed.
- **Recurring options**. One quote can offer weekly, every two weeks, and monthly. Commercial bids price the month.
- **Room and task library**. Start from your rooms and tasks, then copy a quote for the next customer.

### Calculators

No account. The numbers stay in your browser.

- [Free quote calculator](https://www.blastoclean.com/free-cleaning-quote-calculator): A price range for a house clean.
- [Free bid calculator](https://www.blastoclean.com/free-commercial-cleaning-bid-calculator): A monthly bid for an office or a building.
- [Free profit calculator](https://www.blastoclean.com/free-cleaning-business-profit-calculator): Profit per job, from your price and your costs.

[Quoting guide](https://www.blastoclean.com/docs/building-a-quote)

## Scheduling

Visits on the calendar, with the crew and the checklist.

- **Book one job**. Book an approved one-time quote for a day and time. Book again copies it.
- **Calendar and recurring visits** (Starts on Starter). Every visit on one calendar, and the same visit on a repeat.
- **Crew assignment** (Starts on Starter). Put one person or a whole crew on a visit.
- **Confirmations and reminders**. A booking confirmation email on Free. Automatic confirmation requests and reminders from Starter. Text messages on Pro.
- **Calendar feeds** (Starts on Starter). Subscribe in Google Calendar, Outlook, or Apple Calendar.
- **Digital checklists** (Starts on Starter). Work sheets and checklists for each visit, on the phone or printed.

[Scheduling guide](https://www.blastoclean.com/docs/scheduling-a-visit)

## Billing and invoicing

Record payments on every plan. Invoices and the card on file on paid plans.

- **Card payments**. Take cards through your own Stripe account. On Free, by a payment link for each job.
- **Cash and checks**. Record cash, checks and other payments, refund them, and send a receipt.
- **Invoices** (Starts on Starter). Invoice per visit, or once a month for recurring customers.
- **Automatic billing** (Starts on Starter). Automatically charge the card on file when the job is done.
- **Pay by link**. Email a card payment link for a booked job on Free. Links for any visit or amount from Starter. Text on Pro.

[Invoices and payments guide](https://www.blastoclean.com/docs/invoices-and-payments)

## See all features

[See all features](https://www.blastoclean.com/features)

## Start free, grow into Pro

_Plans._

The free plan is the easy way in. Paid plans add the rest of the work.

- The calendar, repeat visits, and invoices start on Starter.
- Quote requests from your website start on Starter too.
- Texting starts on Pro. So does a walkthrough with photos and voice notes.
- Try a paid plan for 14 days. No credit card needed.

[See pricing](https://www.blastoclean.com/pricing)

## Which one sounds like you?

_Pick your path._

### Small crew, just getting started

**Free** $0 forever

- Quotes with your logo, sent by email
- Your customer list
- Customers accept online
- Book one job for a day and time
- A card payment link for that job
- 1 user, 1 location

[Start free](https://www.blastoclean.com/signup)

### Growing company with staff

**Pro** $69 / month

- Schedule, invoices, and saved cards (Starter)
- Text quotes and reminders to customers (Pro)
- 6 users included (Pro)
- Try it free for 14 days. No credit card needed.

[Try Pro free](https://www.blastoclean.com/signup)

Somewhere in between? Starter is $29 a month for 3 users. [Compare plans](https://www.blastoclean.com/pricing)

## A note from the founder

I'm Chris, the founder. I started BlastoClean because I saw how much cleaning software could improve, and I answer support myself.

Chris, Founder

## Send your first professional quote today.

Free plan. No credit card needed. 100% en español.

[Start free](https://www.blastoclean.com/signup)

Questions? Email us: hello@blastoclean.com

---

---
title: "Everything you need to run a cleaning company · BlastoClean"
description: "Quotes, scheduling, crews, payments and texting for home and commercial cleaning companies, in English and Spanish."
url: "https://www.blastoclean.com/features"
---

# Everything you need to run a cleaning company

Quotes, scheduling, crews, payments and texting for home and commercial cleaning companies, in English and Spanish.

One company can do both. You pick residential or commercial on each quote. An office, a shop, or a medical suite starts as commercial.

## Home cleaning

Quotes for houses. Book one job and record payments on Free. The calendar, invoices and saved cards start on Starter.

- Room-by-room quotes from your own prices
- One job at a time on Free. Weekly visits on paid plans.
- Invoices and a card on file on paid plans

## Commercial cleaning

Bids for offices and buildings, recurring contracts, and a monthly invoice on paid plans.

- Bids for offices, shops, and medical buildings
- A frequency on every task, priced by the month
- Several sites, and one invoice for the month on paid plans

## Quoting

Prices from your rooms, your tasks, and your rates.

[Quoting guide](https://www.blastoclean.com/docs/building-a-quote)

- **Quote by space**. Room-by-room quotes from your prices. [Learn how](https://www.blastoclean.com/docs/building-a-quote)
- **Send by email or text**. Email on every plan. Text on Pro, when the customer has agreed. [Learn how](https://www.blastoclean.com/docs/sending-a-quote)
- **Customize room types and tasks**. Start from your rooms and tasks, then change them. [Learn how](https://www.blastoclean.com/docs/your-room-and-task-library)
- **Add multipliers to a room or task**. Size and condition change the time and the price. [Learn how](https://www.blastoclean.com/docs/pricing-a-quote)
- **Live quote preview**. The total updates while you build the quote. [Learn how](https://www.blastoclean.com/docs/building-a-quote)
- **Estimate calculator** (No account). A free price range for a house clean. No account. [Learn how](https://www.blastoclean.com/free-cleaning-quote-calculator)
- **Bid calculator** (No account). A free monthly bid for an office or a building. No account. [Learn how](https://www.blastoclean.com/free-commercial-cleaning-bid-calculator)
- **Quick Quote** (Starts on Starter). A typed description, photos or both become a draft quote. [Learn how](https://www.blastoclean.com/docs/magic-quote)
- **Magic Quote** (Starts on Pro). A walkthrough with photos and voice notes. [Learn how](https://www.blastoclean.com/docs/magic-quote)
- **Photo quotes** (Starts on Starter). Customers send photos from your link. On Pro, enabled AI can prepare a price for review. [Learn how](https://www.blastoclean.com/docs/photo-quotes)
- **Recurring options**. One quote can offer weekly, every two weeks, and monthly. [Learn how](https://www.blastoclean.com/docs/building-a-quote)
- **Commercial contracts**. Price the month for an office or a building. [Learn how](https://www.blastoclean.com/docs/commercial-cleaning-mode)
- **Price by the hour or by the square foot**. Use your own hourly rate or square-foot rate, for home and commercial quotes. [Learn how](https://www.blastoclean.com/docs/size-pricing)

## Scheduling

Visits on the calendar, with the crew and the checklist.

[Scheduling guide](https://www.blastoclean.com/docs/scheduling-a-visit)

- **Book one job**. Book an approved one-time quote for a day and time. Book again copies it. [Learn how](https://www.blastoclean.com/docs/scheduling-a-visit)
- **Calendar and recurring visits** (Starts on Starter). Every visit on one calendar, and the same visit on a repeat. [Learn how](https://www.blastoclean.com/docs/recurring-schedules)
- **Crew assignment** (Starts on Starter). Put one person or a whole crew on a visit. [Learn how](https://www.blastoclean.com/docs/crews-and-availability)
- **Confirmations and reminders**. A booking confirmation email on Free. Automatic confirmation requests and reminders from Starter. Text messages on Pro. [Learn how](https://www.blastoclean.com/docs/reminders-and-confirmations)
- **Calendar feeds** (Starts on Starter). Subscribe in Google Calendar, Outlook, or Apple Calendar. [Learn how](https://www.blastoclean.com/docs/calendars-and-feeds)
- **Digital checklists** (Starts on Starter). A task list on each visit, on the phone or printed. [Learn how](https://www.blastoclean.com/docs/digital-checklists)
- **Late cancellation fee** (Starts on Starter). You set the notice window and the fee. You charge the card on file or waive it. [Learn how](https://www.blastoclean.com/docs/cancellations)
- **Day map** (Starts on Starter). A map of the day's visits when your plan includes it. [Learn how](https://www.blastoclean.com/features/live-map)
- **Job chat**. Free includes a sample that sends nothing. Send messages and photos on a visit from Starter. [Learn how](https://www.blastoclean.com/docs/job-chats)
- **Saved teams** (Starts on Starter). Send the same people together and keep each client's usual team. [Learn how](https://www.blastoclean.com/docs/saved-teams)

## Billing

Record payments on every plan. Invoices and the card on file on paid plans.

[Invoices and payments guide](https://www.blastoclean.com/docs/invoices-and-payments)

- **Invoices** (Starts on Starter). Invoice per visit, or once a month for recurring customers. [Learn how](https://www.blastoclean.com/docs/invoices-and-payments)
- **Card on file** (Starts on Starter). Automatically charge the card on file when the job is done. [Learn how](https://www.blastoclean.com/docs/invoices-and-payments)
- **Payment link**. Email a card payment link for a booked job on Free. Links for any visit or amount from Starter. Text on Pro. [Learn how](https://www.blastoclean.com/docs/invoices-and-payments)
- **Cash and checks**. Record cash, checks and other payments, and refund them, on every plan. [Learn how](https://www.blastoclean.com/docs/invoices-and-payments)
- **Your Stripe account**. Take cards through your own Stripe account. [Learn how](https://www.blastoclean.com/docs/connecting-stripe)
- **Customer portal** (Starts on Starter). Customers open quotes and invoices on their own page. [Learn how](https://www.blastoclean.com/docs/invoices-and-payments)
- **Extra work** (Starts on Starter). Add the fridge or the oven to a customer's next visit. Record that they agreed, or send a one-page approval link. [Learn how](https://www.blastoclean.com/docs/change-orders)

## Explore more features

The short list above is the tour. These guides go further.

- [Commercial cleaning](https://www.blastoclean.com/docs/commercial-cleaning-mode): Frequencies, monthly pricing, and contract terms.
- [Text messages](https://www.blastoclean.com/docs/text-messages-and-consent): Quotes, reminders, and payment links by text on Pro.
- [Reports](https://www.blastoclean.com/docs/the-dashboard-and-reports): The dashboard and the reports each plan includes.
- [Mobile app](https://www.blastoclean.com/mobile-app): The schedule and payments on iPhone and Android.
- [Customer inbox](https://www.blastoclean.com/docs/customer-conversations): Email and text with a customer, in one thread.
- [Quote requests](https://www.blastoclean.com/docs/quote-requests-from-your-website): A page and a widget for your website, on paid plans.
- [Team and security](https://www.blastoclean.com/docs/team-roles-and-permissions): Roles, sign-in, and more than one location on Business.
- [See all details](https://www.blastoclean.com/docs/feature-notes): Full details on every feature.

---

---
title: "Customers send photos. You send a firm price. · BlastoClean"
description: "Photo quotes read the pictures, price them with your own rates, and tell you which ones are safe to send."
url: "https://www.blastoclean.com/features/photo-quotes"
---

# Customers send photos. You send a firm price.

Photo quotes read the pictures, price them with your own rates, and tell you which ones are safe to send.

[Start free](https://www.blastoclean.com/start)

## From photos to a price in minutes

1. **The customer sends photos.** From your link, on their phone. A name, an email address, the address and the photos, plus a phone number and a few details about the home if they like: no account and no app. The page asks for the kitchen and every bathroom.
2. **The photos are read.** Each photo is tagged with its room and condition, and the tags become rooms from your own library. A photo that shows a person or a document is kept out of the read.
3. **Your engine prices it.** The rooms are priced with your rates, the same way as a quote you build yourself. The AI never sets the number.
4. **You send it.** Open the request from the queue, review its rooms, evidence and price, then choose a firm price or a range. Confirm the current price before sending. The customer receives the quote by email and can accept it online.

## Built so a price from photos is one you can stand behind

- **Your prices, not ours.** Rooms come from your library and minutes from your tasks, priced at your rates. Change a room count or a condition and the price is worked out again on the spot.
- **You decide the risk.** Every photo quote gets a risk score and a green, amber or red badge from the preset you choose: Careful, Balanced or Bold. Too uncertain? Send a range, ask for more photos, or book a walkthrough.
- **See why.** Each room points at the photos behind it, and the score shows what drove it: missing rooms, a wide size estimate, heavy soil, a first-time customer.
- **No app for customers.** Customers use a browser link in English or Spanish. Photos shrink on their phone before uploading to reduce data use; uploads still need a working connection.
- **An answer clock.** The queue is sorted by who has waited longest, with a timer during your working hours. If time runs out, the customer gets one polite email, and you get a nudge.

## Which plan has it

- **Free:** Try it on our sample house, priced with your own library. Nothing real is read.
- **Starter:** Your photo link: customers send up to 15 photos, and they land in your request inbox with the photos attached.
- **Pro:** With photo quotes and AI enabled, photos are read and priced for review, with the queue, answer clock, and firm or range sends. Up to 30 photos per request; reading uses AI credits.
- **Business:** Everything in Pro, for every location, with more AI credits each month.

## Questions owners ask

**Does the AI decide the price?**

No. It decides which rooms the photos show and what condition they are in. Your pricing engine prices those rooms with your rates, and you choose whether to send a firm price or a range.

**What if the photos miss a room?**

Add it from your library before you send, or ask the customer for more photos. If a room you require is missing, the photo quote is never marked low risk.

**What does a firm price promise?**

The price you will charge if the home matches the photos. Your firm-price terms go out with every one, saying what would change it, and you can write your own.

**Are the photos kept forever?**

No. They are deleted 90 days after the customer last sent photos, or after you last asked them for more, unless the customer accepted the quote they priced.

## Read more

- [Photo quotes guide](https://www.blastoclean.com/docs/photo-quotes)
- [Firm prices and risk](https://www.blastoclean.com/docs/firm-prices-and-risk)

## Answer the next "how much?" with a price

Start free, try the sample house, and share your photo link when you are ready.

[Start free](https://www.blastoclean.com/start)

---

---
title: "The iPhone and Android app · BlastoClean"
description: "The BlastoClean companion app runs on iPhone and Android, with layouts for phones and tablets in every orientation. It signs in to the same company as the web app and follows the same permissions, so there is no phone version of a quote to reconcile later."
url: "https://www.blastoclean.com/mobile-app"
---

# The whole company, at somebody’s front door

The BlastoClean companion app runs on iPhone and Android, with layouts for phones and tablets in every orientation. It signs in to the same company as the web app and follows the same permissions, so there is no phone version of a quote to reconcile later.

## Platforms

- **iPhone and iPad** — A two-pane layout on iPad, and Tap to Pay on iPhone. Coming to the App Store.
- **Android phones and tablets** — The same two-pane tablet layout, and contactless card payments on NFC devices. Coming to Google Play.

Included with every plan, using the same company account as the web app. Contact us for current iPhone and Android download options. These previews show sample data; available controls depend on your installed version.

## Your tabs follow your plan and role

- **Schedule** — The week’s visits with payment status on every row, filterable to one person, and every visit action: confirm, reschedule, complete, no-show, cancel and reassign. When a late fee applies, charge the card, waive the fee, or leave it waiting. The app does not charge on its own.
- **Quotes** — The full quote lifecycle from the phone, the leads inbox badged with how many people are still waiting to hear back, and Magic Quote. The screenshot shows the Clear filters action.
- **Customers** — Search, and a customer’s properties, quotes, visits and payment history.
- **Home** — Owners and managers see the dashboard on paid plans and a shorter Home on Free. Estimators and read-only users get a quotes-only Home on every plan.
- **More** — Open Settings for the app lock, permitted company settings, payment methods and calendar feeds. Help is available here where enabled.

## Take the card while you are still standing there

_Getting paid._

The phone itself is the terminal: Tap to Pay on iPhone, and contactless payments on supported NFC Android devices. Or the hosted card page opens with the customer watching. Cash, checks and bank transfers go on the same ledger in two taps — and those work with no processor connected at all, because getting paid should not wait on a Stripe onboarding form.

- Tap to Pay on iPhone, and contactless payments on supported NFC Android devices
- Or open the hosted card page on the phone, with the customer watching
- Cash, checks and bank transfers recorded with no processor connected at all
- Tips asked once, up front, where your company offers them
- Card numbers reach neither the app nor BlastoClean, in any mode

## Walk the property. Let the walk write the quote.

_Magic Quote._

Tap Start, then take photos and record voice notes while you talk to the customer. Nothing has to be sorted in the moment. BlastoClean sorts the walk into rooms and items you can review afterwards, and prices the draft entirely from your own library.

- Photos, voice notes and typed lines, captured in any order
- Start with nobody on file — the walk proposes the customer record afterwards
- Each photo is saved once, so a weak signal cannot create a duplicate
- Room Check has to pass before anything can be generated
- Photos open only for someone signed in, never from a public link

## Say yes on their behalf, then book the first visit

_Winning the work._

A customer who says yes at the door should not have to wait for an email. Accept and book asks who pays what, the first day, and the start time. Book it puts the first visit on the calendar. The yes is recorded against your name.

- Accept on the customer’s behalf, recorded as exactly that
- The first day and the start time are in the same box
- A taken day leaves the quote accepted so you can pick another
- The same quote is not booked twice

## Book the rhythm before you leave the driveway

_Recurring work._

One-time, weekly, biweekly or monthly — by day of the month or by the nth weekday — with slot suggestions from the crew’s availability and a grid in the location’s time zone.

- Slot suggestions from the crew’s actual availability
- Availability and conflicts are checked before booking
- Pause, resume or end a series from the phone
- Rule changes replace only the future visits nobody has touched

## The schedule turns up where you already look for it

_Your calendar._

Mint an iCal feed for the whole company, or one for a single cleaner, from the phone. The URL is shown once — exactly as on the web — and can be revoked the moment you want it gone.

- Google, Outlook and Apple Calendar all subscribe to the same feed
- One feed per person, so a cleaner sees only their own visits
- Revoke a link and it stops working immediately

## Native previews of the schedule and quote filters

The schedule and quote list are native UI previews rendered with Flutter web using synthetic records. The quote list shows Clear filters and also appears in the phone section above.

- The same screens on iPhone and Android
- The same account, the same permissions, the same prices
- Every screen laid out for the device it is actually on

## Not the phone layout, stretched

On an iPad or an Android tablet the app is not the phone layout stretched: the bottom tab bar becomes a rail down the side, the list gets the whole width, and where there is room a list and the thing you picked from it sit side by side.

- The tab bar becomes a side rail, and the content takes the rest
- A list and its detail side by side where the screen allows it
- Portrait and landscape, on phones and tablets alike
- The same app, the same account, the same rules

## A phone left on a counter is a different problem from a laptop in an office

So the app is built for the place it is actually used.

- **Biometric app lock** — Face ID, Touch ID or Android biometrics, with the device passcode as the fallback for the times a fingerprint will not read.
- **Sign-in stays on the phone** — Not in an ordinary file. Sign-in is kept in the phone's secure storage, the same place the phone keeps its own secrets.
- **One set of permissions** — The phone follows the same roles as the web app. There is no mobile exception to who may do what.
- **Card numbers go nowhere near it** — In every payment mode the card data goes from the reader or the hosted page straight to Stripe. It reaches neither the app nor BlastoClean.

## Questions about the app

### Do I need a separate account for the app?

No. The app signs in with the same email and password as the web app, to the same company. You can also register a brand-new company from the phone if you would rather start there.

### Does the app cost extra?

No. It is included with every plan, the free one included. What a plan changes is what the account can do — on the phone and on the web equally.

### Can my cleaners use it without seeing the whole company?

Yes. Crew accounts open My jobs and see assigned visits and their permitted Crew tools, such as time off, documents and visit offers. They do not get general office reports or payment controls.

### Can I take a card payment without a card reader?

Native versions with payments can use Tap to Pay on supported iPhones and contactless payments on supported NFC Android devices when the build and Stripe account are configured. Otherwise, use the hosted card page. Permitted cash, check and bank transfer recording needs no processor connection.

### Do prices work out differently on the phone?

They cannot. The phone shows the same totals as the quote you build on the web.

### Where do I download it?

Contact us for current download options. You can start on the web with the same company account; the native preview images do not establish store availability.

## Set the company up once. Use it wherever the work is.

Start a free trial on the web, and the same account is waiting on the phone.

[Start your free trial](https://www.blastoclean.com/signup)

---

---
title: "Pricing · BlastoClean"
description: "Every paid plan includes the calendar, repeat visits, crew and automatic reminders, plus invoices and saved cards. Try everything for 14 days, Quick Quote and the separate Magic Quote walkthrough included, without a card. Then choose monthly or yearly. Prefer Free? Quote it, book it and get paid, one job at a time."
url: "https://www.blastoclean.com/pricing"
---

# Simple plans that grow with you.

Every paid plan includes the calendar, repeat visits, crew and automatic reminders, plus invoices and saved cards. Try everything for 14 days, Quick Quote and the separate Magic Quote walkthrough included, without a card. Then choose monthly or yearly. Prefer Free? Quote it, book it and get paid, one job at a time.

[Try the live demo, no account needed](https://www.blastoclean.com/try)

## Free — $0 forever¹

Quote it, book it and get paid, one job at a time. One user, one location, no credit card.

- 1 user, one location
- Quotes priced room by room from your own libraries, with your logo, emailed and accepted online
- Customers and properties, with their addresses and notes
- Book an approved job for a day and time, with a confirmation email to your customer
- Get paid by card with a payment link from your own Stripe account, with no platform fee
- Record payments, and refund them: cash, check, bank transfer or a type you add
- Email receipts for the payments you record, which you can turn off
- Basic ledger of your own payments and refunds, with CSV and Excel exports
- Quote follow-ups: an email to you when a quote you sent has not been opened
- What you are owed on accepted quotes and booked jobs, at a glance
- Book again: copy a job for one more visit without starting over
- Export everything you have put in, any time, as portable JSON
- Job chat sample without sending
- Customer map preview; a fictional sample day in the mobile app only

Starter adds the calendar, repeat visits, crew and automatic reminders when you're ready.

Not included: The calendar, repeat visits, visit reminders and calendar feeds (Starter); Invoices, saved cards and the customer portal (Starter); The customer inbox, email conversations in one place (Starter); texts join it on Pro; Online quote requests and the website widget (Starter); The full dashboard and the core reports (Starter); The everyday AI assists (Starter); Quick Quote (Starter); texting, Magic Quote walkthroughs, the analytics reports, checklist reports and the API (Pro).

[Start free](https://www.blastoclean.com/signup)

## Starter — $29 per month²,³

Professional quoting and scheduling for small teams. Starts with a 14-day free trial.

- 3 users included, then $3/month per additional user
- AI assists included — 250 AI credits a month for draft quotes, sorted messages, suggested replies, learning estimates and the owner's Monday digest
- One location
- Room-by-room estimating — quotes, customers and properties
- Recurring scheduling, reminders and calendar feeds — one per crew member. A schedule can carry its own price or checklist on each weekday
- Automatic quote follow-ups by email
- The customer inbox — every email with a customer in one thread the whole office can see and answer, with their replies coming back to the company rather than to one person's mailbox (texts join it on Pro)
- Customer quote, portal and quote-request links, plus the embeddable website widget
- An invoice for every visit; record cash and check payments
- Card payments through your own Stripe account, linked with Stripe Connect in a couple of clicks — no platform fee: money settles straight to your Stripe account and you pay only Stripe's own processing fees
- Card on file, pay-by-link by email, automatic billing on completion, refunds — with branded PDF receipts
- In-person payments in the mobile app — Tap to Pay on iPhone, contactless payments on supported NFC Android devices, or the hosted Stripe Checkout card page opened right on your phone. Coming soon to the App Store and Google Play
- Optional card fee, disclosed to the customer on the quote and at checkout
- Owner dashboard — pipeline, money collected, the week ahead and a needs-attention list
- Core reports: Money owed, Money received, the basic cancellation and fee ledger, Add-on revenue, and My week — complete CSV and Excel included
- Digital checklists: a saved task list per property, copied onto each visit and tickable from the phone (Starter and up)
- iOS and Android companion app — the schedule and work checklists in your pocket. Coming soon to the App Store and Google Play
- Email notifications, plus the in-app bell that counts what needs a person — a declined card, a new lead, an accepted quote, a reply waiting
- Your logo on quotes and PDFs
- Quick Quote: describe the property, add photos of it, or both, answer adaptive one-tap follow-ups, complete the required Room Check and get a reviewable draft from your configured library, metered in AI credits
- A photo-quote page: customers send photos of their home from your link, and they land in your request inbox
- A late cancellation fee you set: a notice window and an amount. You charge the card on file or waive it. The app never charges on its own. Same choices on the phone
- When a visit is canceled, owners and managers hear by email and the in-app bell on every paid plan, plus a text on Pro and Business when texting is set up
- Offer a canceled time to customers who asked to come earlier. The first tap gets it. Included on every paid plan
- Job chat: 150/month, 30 photos/chat
- Day map preview: assignments, manual openings and last clock punch positions. Choose Map in Schedule when your plan includes it; List, Week and Month stay available. No background tracking or ETA messages
- The provider spending allowances and usage displays below are planned for a coordinated release. They do not change current live configuration. AI includes 250/700/1,500 fixed action credits on Starter/Pro/Business and a separate $4/$6/$12 monthly provider spending allowance, pooled across the company. Credits measure actions, not dollars, and do not guarantee a number of walkthroughs. Both limits apply. Failed customer-credit refunds do not erase billed attempts or retries. Settings shows usage; exhaustion pauses the assist with no automatic overage charge. Help uses a separate $1 monthly company safety allowance. Shared deployment safety limits may also pause service.

[Start your free trial](https://www.blastoclean.com/signup)

## Pro — $69 per month²,³

Adds Magic Quote walkthroughs, texting and the analytics reports for growing companies. Starts with a 14-day free trial.

- Everything in Starter
- Magic Quote walkthrough — walk with photos, video and voice notes, and get a draft with every finding pointing at the photo or second of audio it came from
- Required Room Check blocks generation when a likely room is missing or coverage is unresolved — the same protection Quick Quote receives
- Magic Quote walkthroughs use AI credits and show their usage; Quick Quote is already included with Starter
- Photo quotes read and priced for you: a review queue with an answer clock, then a firm price or a range, after review and send confirmation. Reading photos uses AI credits
- 6 users included, then $5/month per additional user
- 700 AI credits a month
- Texted quotes, payment links, SMS reminders and confirmations — and texting a customer straight from the inbox, with opt-in consent, quiet hours and STOP handled for you. Text customers from your own Twilio number, and receive their calls on it when it is a voice-capable Twilio number: connect your Twilio account in Settings
- Calls on your own Twilio number: they ring the phone you choose, and a missed call leaves a voicemail that arrives in the inbox with the recording, an AI transcript and a suggested reply
- Analytics reports: Money per hour, Quotes to jobs, Crew, Inquiries, Quality and response, and Cancellations and slot recovery — complete CSV and Excel included
- Checklist tasks that require a photo, and the per-visit checklist report
- API keys, OAuth apps and Zapier/Make sync for supported reporting endpoints within your plan and authorized location
- Job chat: unlimited chats, 60 photos/chat
- Texts are sent through your own Twilio account, so Twilio bills you directly at its own rates. BlastoClean adds no per-text charge and no monthly texting allowance; a daily safety limit stops runaway sending. Long texts, emoji and accents may use several segments on your Twilio bill. Twilio bills calls, call recordings and the phone numbers themselves to your account the same way.

[Start your free trial](https://www.blastoclean.com/signup)

## Business — $149 per month²,³

Multi-location support for franchises and established operations. Starts with a 14-day free trial.

- Everything in Pro
- 15 users included, then $5/month per additional user
- 1,500 AI credits a month
- The advanced reports — Who stays, How full you are and Profit by place (Profit by place on the web app for now)
- Compare quality and response across authorized locations; CSV and Excel at no extra reporting charge
- Multi-location support — one location included, add more for $45/month each
- Per-location quote-request forms, rates, quote numbering and payment accounts
- Text messages (SMS)
- Attachment and photo storage — including every walkthrough's photos and recordings
- Priority support
- Job chat: unlimited chats and photos
- Company-wide allowances do not increase with added locations.

[Start your free trial](https://www.blastoclean.com/signup)

## Start with one paragraph. Or walk the property.

_Quick Quote on Starter · Magic Quote on Pro._⁴

Quick Quote is on Starter, Pro and Business. Type a few details like “2.5 baths, 4 bedrooms, 3,000 sq ft, very clean, weekly,” add photos, or both, and it builds a draft quote for you to review.

Magic Quote is on Pro and Business. Walk the job on site and capture photos, video and voice notes. Every item on the quote links back to the photo, video or note it came from.

Both end in the same editor. Both check for missing rooms before the quote is made, and both price only from your own rates.

- Quick Quote starts from a free-form paragraph, a pasted customer message, your device's dictation when available, up to 15 photos of the property, or any mix of them
- Adaptive follow-ups appear as quick choices and use what you already answered to reduce repetition
- Likely-room suggestions help catch kitchens, living areas, laundry, basements, garages, break rooms and other easy-to-miss spaces
- Room Check has to be finished before a draft is created, and you confirm the suggested rooms and anything still undecided
- Magic Quote is the separate walkthrough when a full on-site record matters: photos, video, voice notes and traceable evidence, with the same blocking missing-room validation

[Try Quick Quote and Magic Quote free for 14 days](https://www.blastoclean.com/signup)

## What would that be worth to you?

Put your own numbers in. Nothing here is a benchmark we made up — the only figure we supply is how long a quote takes once the software is doing the writing, and you can drag that one too.

- Hours back each month⁵: (quotes a month × minutes saved per quote) ÷ 60.
- What those hours are worth: those hours × your hourly rate.
- Left over after the plan: that figure minus the plan's monthly price.

Starting figures, all adjustable: 20 quotes a month, 45 minutes a quote today, 10 minutes with BlastoClean, $50 an hour.

## Questions, answered

### How does the 14-day trial work?

Create your account with your company name, your name and email, and a password — no credit card. You get every feature for 14 days. Subscribe from inside the app whenever you're ready; any remaining trial days carry over, so you're never billed early.

### What happens when my trial ends?

Nothing is deleted when the trial ends, and nobody is shut out of their own records. You can subscribe to pick up exactly where you left off, or continue on the Free plan: one user, your whole customer list, and the quotes you go on building by hand, booked and paid for one job at a time, with no card and no deadline while you are using it. The calendar, repeat visits, invoices, saved cards, the inbox, paid reports, online quote requests and Quick Quote wait until Starter, while texting, Magic Quote walkthroughs and analytics reports come with Pro. Your extra locations are locked rather than deleted and come straight back if you subscribe. Quotes you already shared with customers keep working, so your customers are never locked out. And one click exports everything, whichever you choose.

### What is the Free plan, exactly?

Quote it, book it and get paid, one job at a time. You price quotes room by room from your own libraries, with your logo on the PDF, and customers accept them on a link they open without an account. Once a one-time quote is approved, you book the job for a day and time, and your customer gets a confirmation email. To get paid, send a card payment link from your own Stripe account, with no platform fee, or record cash, a check, a bank transfer or another way you use. A job is paid in one payment for what is left, and anything paid on the quote before you booked it counts toward that. For each payment you record, the customer gets an email receipt, which you can turn off. Book again copies a job for one more visit. If a quote you sent has not been opened after three days, we email you so you can resend it with one tap; your customer gets nothing automatic. What you're owed on accepted quotes and booked jobs is on your dashboard and on each customer. Free covers one user and one location, needs no card, and does not expire while somebody is using it. Starter adds the calendar, repeat visits, crew and automatic reminders when you're ready, and texting, Magic Quote walkthroughs, analytics reports and the API come with Pro. The basic payment ledger exports to CSV and Excel on Free.

### What happens if I stop using my Free account?

We suspend it and let you know. Nothing is deleted while you decide. If nobody signs in to a Free account for a whole year, the account is suspended and the account holder is notified. All data stays intact: every customer, property and quote stays exactly where it is, and simply signing back in reactivates the account, with nothing to ask us for. If nobody signs in within three months of the suspension, the account may be reviewed and deleted along with everything in it. A person here always reviews it before anything goes. Nothing here touches an account somebody is actually using, however long it pays nothing, and no paid account or account still in its trial is ever suspended for inactivity. (Leaving is a different matter with its own timetable. See "What happens to my data if I leave?" below.) If you would rather take your records with you, the one-click export works on a suspended account too.

### What are Quick Quote and Magic Quote?

Quick Quote and Magic Quote are separate ways to create the same reviewable draft. Quick Quote starts from what you have: type a loose property description, paste a customer's message, use device dictation when available, add up to 15 photos of the property, or mix them. Each photo is read once as it uploads, and the draft uses what the photos show. It extracts what you said, asks adaptive high-impact follow-ups, suggests likely rooms and requires Room Check before generating. Magic Quote is the on-site walkthrough for photos, short video, voice notes and typed lines, with each finding traced to its evidence. The same missing-room validation blocks both when coverage is incomplete. Every room and task has to match your own list. The price comes from that list, the same way as a quote you build by hand. A person reviews it before it goes out.

### How does Quick Quote help catch missing rooms?

It does not trust the first paragraph to contain every room. After it extracts what you wrote, it builds a short suggestion set from the property type, rooms already named and your configured room library — for example kitchen, living or family room, dining room, laundry, basement and garage for a home. Confirm several at once, exclude what is present but out of scope, add anything unusual in one text reply and see the final room list before generating. Unresolved assumptions stay visible, and a draft is not created until Room Check is complete. Magic Quote walkthroughs opened in the current web or mobile app receive the same blocking missing-room validation.

### Which plan do I need for Quick Quote or Magic Quote?

Quick Quote is included on Starter ($29/month), Pro and Business — never Free — and consumes AI credits from the plan's allowance. Magic Quote walkthroughs are included on Pro ($69/month) and Business ($149/month) and also consume AI credits. The walkthrough normally uses more because it analyzes photos, video and recordings; a thorough four-bedroom house or floor of offices is around 70 credits. The 14-day trial runs on the Business allowance so you can test both.

### What can I do in Magic Quote with no cell signal or Wi-Fi?

Keep the walkthrough open and you can continue capturing in a basement, a back bedroom or airplane mode — no cell connection and no Wi-Fi needed. Photos, voice notes and typed notes that are still waiting also stay saved if you close and reopen the app; when you reconnect, their uploads continue without creating duplicates. Short videos are the current exception: a video that has not finished uploading is not restored after the app closes, so leave the walkthrough open until that upload finishes.

### Can Magic Quote invent a price?

No. Rooms and tasks are chosen from your own list, so the assistant can only pick things you created. Minutes come from that list. Size and condition change the time. Every cent uses the same math as a quote you build by hand. No number on a generated quote was written by the assistant. It may show a suggested price range next to your number. You can turn that range off. It never becomes the quote.

### What if Magic Quote gets something wrong?

Every finding carries a confidence and a link to the evidence behind it, so "the customer asked for the oven" is one tap from the second of the recording where they said it. Anything shaky that would decide what gets priced — which of your tasks are in scope, and what's being left out — is put in front of you before it can move a number. You confirm, correct or reject it. And when a customer changes their mind mid-walk — "not the fridge" at 10:05, "actually, the fridge" at 10:23 — you get both, in order, with a question about which one stands, rather than one of them quietly winning.

### What happens to the photos and recordings of a customer's property?

They're yours, they're private, and you decide how long they live. Every byte is served through an authenticated route checked against your company — nothing about a walkthrough is ever public. You choose a retention window in Settings (30 days, 90, a year, or keep them); when it expires the recordings are deleted and the timeline, the transcripts and the quote they produced stay. Anything unflattering about a property — condition notes, what you said about the price — is internal by default, and promoting it to the customer's copy is a person's decision, never automatic.

### Does BlastoClean work for commercial and janitorial cleaning?

Yes — set what work your company does (residential, commercial or both) in Settings, and commercial quotes unlock the contract machinery: a frequency on every task (trash and restrooms every visit, carpets weekly, high dusting monthly, strip and wax quarterly), pricing by the month with a spec sheet grouped by frequency, contract terms on the quote (length, auto-renewal, an annual escalation and a cancellation notice period), Net-terms billing with PO numbers and consolidated monthly invoicing, due-date-aware aging in the Money owed report, and GPS clock-in and clock-out with missed-clean alerts. Companies that do both choose per quote, defaulted from the property type. Magic Quote handles commercial bid walkthroughs too — walk the suite, say what happens nightly and what happens quarterly, and the draft comes back with the frequencies attached.

### Where can I sketch a house cleaning price for free?

The [free cleaning quote calculator](/free-cleaning-quote-calculator) turns bedrooms, bathrooms, square feet, how often, and the type of clean into a low-to-high range. It runs in the browser, needs no account, and writes out its assumptions. It is a range, not a quote you send a customer. The price you send still comes from your own rooms, tasks, and hourly rate inside BlastoClean.

### Where can I sketch a commercial cleaning bid for free?

The [free commercial cleaning bid calculator](/free-commercial-cleaning-bid-calculator) turns square feet, visits per week or per month, what you pay per hour, and your profit margin into a monthly bid. It runs in the browser and needs no account. The numbers it starts with are examples you should change. It is one speed for the whole building, not the spec sheet you send. That bid still comes from your own areas, tasks, and hourly rate inside BlastoClean.

### Where can I check profit on a cleaning job for free?

The [free cleaning business profit calculator](/free-cleaning-business-profit-calculator) turns the price per job, crew size, hours, pay, supplies, and drive time into profit per job, profit per month, and a margin. It runs in the browser and needs no account. The numbers it starts with are examples you should change. It is one job shape, not the full picture tax and overhead leave out.

### Can I pay yearly?

Yes. Every paid plan can be billed yearly at the price of ten months — two months free: Starter $290/year, Pro $690/year and Business $1,490/year, with per-user and per-location add-ons discounted the same way. Pick monthly or yearly when you subscribe, switch anytime from Settings → Billing (the difference is prorated), and we email you a reminder 30 days before each yearly renewal.

### How does per-user pricing work?

The Free plan covers one user. Every paid plan includes a set number of user licenses: 3 on Starter, 6 on Pro and 15 on Business. Additional licenses are $3/month each on Starter and $5/month each on Pro and Business, prorated automatically. Your licenses are shared across all your locations, and deactivating a user removes the charge, so you only pay for the licenses you actually use.

### How do additional locations work?

Multi-location support is part of the Business plan: it includes one location, and you can add as many more as you need for $45/month each. Each location keeps its own customers, quotes and schedule — plus its own quote-request form, rates, quote numbering and, if a branch banks separately, its own payment account — with settings inherited from the company or overridden per location. On Starter and Pro, upgrading to Business is how you add a second location.

### What happens to my extra locations if I downgrade from Business?

Locations beyond your first are archived and locked — never deleted. All their customers, quotes and history stay exactly as they were, and re-upgrading to Business unlocks them again.

### Do I need to install anything?

No. BlastoClean runs in the browser on any device, and your customers just get a link — nothing for anyone to install. There's also a native companion app for iPhone and Android when you want the schedule and doorstep payments in your pocket, but nothing requires it. Coming soon to the App Store and Google Play.

### Is there a mobile app?

Yes — a native companion app for iPhone and Android, contact us for current download options. It signs into the same account and carries the week's schedule with payment status on every visit, the work checklist, the owner dashboard, customer management, and payment collection: Tap to Pay on iPhone, contactless payments on supported NFC Android devices, the hosted Stripe Checkout page, cash and checks, refunds. You can build and send quotes from the phone too — walk the rooms, tick the tasks, and the price is ready before you leave the property. It locks behind Face ID, Touch ID or your fingerprint. Available native controls depend on your installed build, permissions and provider setup.

### Do my customers need an account?

No. Customers open a private link, read the quote and accept it right there. It even works with JavaScript switched off.

### How do payments from my customers work?

Card processing is included on every plan, through your own Stripe account. On Free you send a payment link for one job at a time; invoices, saved cards and payment at the door start on Starter. You link your company's own Stripe account through Stripe Connect from Settings → Payments: a couple of clicks, no API keys to paste. Charges settle directly to your own Stripe account: your money never passes through us, and card numbers never touch us either. There's no platform fee. BlastoClean adds nothing on top, so you pay only Stripe's own processing fees. You can add an optional card fee, disclosed to the customer on the quote and again at checkout. Recording cash and check payments works on every plan too, Free included, with no Stripe account required. On a paid plan, optional tips work everywhere a customer pays (online, at the door, or recorded with cash), switchable company-wide or per location, and tracked on every payment. (All of this is separate from your BlastoClean subscription.)

### Can I take payment at the door?

Yes, on every paid plan, in the mobile app (contact us for current download options). With a supported device, a configured payment build and an eligible Stripe account, the app can offer Tap to Pay on iPhone, and contactless payments on supported NFC Android devices. No tap? Open the hosted Stripe Checkout card page right on your phone and let the customer enter their card. It goes straight to Stripe and never touches the app. And cash and check payments, and refunds of them, can be recorded on every plan, with no Stripe account at all. On Free, you record them on an accepted quote or a booked job. Available native controls depend on your installed build, permissions and provider setup.

### Can I charge a fee when a visit is canceled late?

Yes, on every paid plan from Starter up, once you turn it on. You set the notice window and the fee. They start at 24 hours and 50.00, which is $50.00 when you bill in US dollars. A person charges the card on file or waives the fee. The app never charges on its own, on the web or on the phone. If there is no card, you can cancel and send a payment link. Owners and managers also hear when a visit is canceled: email and the in-app bell on every paid plan, plus a text on Pro and Business when texting is set up. That office alert starts on. The help article Handling cancellations walks through it.

### What happens to the open time after a cancellation?

If you turn on Fill open spots, customers who opted in to Let me know if an earlier time opens up get a one-tap offer by email. On Pro and Business it also goes by text when text reminders are on, texting is set up, and the customer agreed to texts on that number. The first to tap gets the slot. Their next visit moves, and the rest of their schedule stays the same. If nobody takes it, owners and managers get a slot-still-open notice by the bell and by email. This is included on every paid plan. On Free, the time from a canceled job is not offered. Customers opt in from the office, when they book or confirm, or on their own page. They opt out by clearing that tick or from the offer. In the pending texting update, replying STOP stops text offers only; requested email offers keep arriving with their own opt-out link.

### How do text messages work?

The per-company-only texting setup described here is pending a coordinated release. It does not change current live configuration or activate providers. On Pro and Business, BlastoClean can text quotes, visit reminders, confirmations and payment links — and it does it by the book. Customers opt in first (at the office, online, or by text reply), consent is tracked per phone number, nothing sends between 9pm and 8am where the customer lives, and a STOP reply opts that number out of your texts instantly. Message frequency varies. Msg & data rates may apply. Reply HELP for help. Mobile numbers and opt-in data are not shared or sold to third parties for marketing. It even checks for landlines before sending, so you never pay for a text nobody could receive. Every company texts from a number of its own, never a shared one: connect your own Twilio account in Settings and BlastoClean sets up your Twilio number for you, with nothing to paste into Twilio, and texts from it. To take calls as well, also set up Calls and voicemail in Settings with a voice-capable Sending number. You register the numbers you text from for business texting in your Twilio console, and Twilio bills you for texts and calls directly. Until it is connected, email keeps working.

### Where do my customers' replies go?

Into a shared inbox, on every paid plan. Every email BlastoClean sends for you — a quote, a reminder, a receipt — carries a reply address belonging to that conversation, so when your customer answers it lands in one thread the whole office can see and answer, beside their texts on Pro and Business (on Starter the inbox holds email only). Whoever wrote to them last is still emailed the reply as well, so nothing that used to reach you stops reaching you. Answering by email, or leaving an internal note, is on every paid plan; answering by text needs Pro or Business, like every other text.

### Does BlastoClean work in Spanish?

Yes, end to end. The app itself follows each person's browser language, so two people in the same office can work in different languages. And everything your customers see — quote pages, PDFs, emails, texts and the portal — goes out in the language you choose for your company, English or Spanish.

### What do the AI assists do?

They draft, suggest and summarize. AI pre-fills a draft quote (rooms and tasks, from your own library) when a website lead comes in with a message and up to 5 photos, sorts incoming texts, emails and voicemail transcripts by what they need (confirming, reschedule, cancel, question), suggests a reply to a customer's message from the thread and that customer's actual upcoming visits, suggests bounded adjustments to your task times by comparing estimated and actual visit time, writes your Monday-morning owner digest, and drafts follow-up emails, work-order briefings, review requests and review replies. Prices use your configured library. Draft quotes, replies and visit actions require review. Enabled quote follow-up automation can send a personalized body without per-message approval; the system keeps the subject and quote link.

### How many AI credits do I get each month?

250 AI credits on Starter, 700 on Pro and 1,500 on Business, resetting on the 1st — the Free plan has no AI allowance. Up to a third of your month can be spent in any single day, so a runaway integration cannot empty the whole allowance overnight. Quick Quote is included on every paid plan and uses credits for text interpretation, AI clarification and each photo it reads (1 credit a photo). Magic Quote walkthroughs are Pro and above; they also read each photo and recording separately and therefore use the most. Your 14-day free trial runs on the Business allowance, so you can try everything. The provider spending allowances and usage displays below are planned for a coordinated release. They do not change current live configuration. AI includes 250/700/1,500 fixed action credits on Starter/Pro/Business and a separate $4/$6/$12 monthly provider spending allowance, pooled across the company. Credits measure actions, not dollars, and do not guarantee a number of walkthroughs. Both limits apply. Failed customer-credit refunds do not erase billed attempts or retries. Settings shows usage; exhaustion pauses the assist with no automatic overage charge. Help uses a separate $1 monthly company safety allowance. Shared deployment safety limits may also pause service.

### What counts as an AI credit?

Credits use fixed action weights, rather than the provider’s actual bill. Sorting an incoming text is 1 credit, and so is transcribing a voicemail (Pro and Business); a follow-up, briefing or review reply is 1; the Monday digest is 3; a draft quote from a lead, photo assessment or estimating suggestion is 4. Quick Quote consumes credits when it interprets the description, when an ambiguous free-text answer needs AI clarification, and for each photo it reads (1 credit, charged as the photo is read); structured taps and working out the quote do not need another decision from the assistant. Magic Quote reads each photo, video or voice note for 1 credit and organizing the walk is 12, so a thorough four-bedroom home or dozen-room office is roughly 70. Failed model runs are refunded, and Settings → AI breaks the month down by feature. The provider spending allowances and usage displays below are planned for a coordinated release. They do not change current live configuration. AI includes 250/700/1,500 fixed action credits on Starter/Pro/Business and a separate $4/$6/$12 monthly provider spending allowance, pooled across the company. Credits measure actions, not dollars, and do not guarantee a number of walkthroughs. Both limits apply. Failed customer-credit refunds do not erase billed attempts or retries. Settings shows usage; exhaustion pauses the assist with no automatic overage charge. Help uses a separate $1 monthly company safety allowance. Shared deployment safety limits may also pause service.

### What's included in Reports?

Free includes a basic ledger of your own payments and refunds. Starter adds Money received trends, the basic cancellation and fee ledger, Add-on revenue, Money owed and My week. Pro adds Money per hour, Quotes to jobs, Crew, Inquiries, Quality and response, and Cancellations and slot recovery. Business adds Who stays, How full you are, Profit by place and quality comparison across authorized locations. Each report includes complete filtered CSV and Excel exports at its own tier; these downloads are not a separate add-on. API access and OAuth integrations start on Pro. Full Job profit, contractor summaries, Profit by place and Add-on revenue are on the website.

### How do digital checklists work?

On Starter and above, save a checklist on each property and copy it onto every visit. Cleaners tick tasks from the phone, add notes and photos, and keep working offline; changes sync when the connection returns. The office sees progress and can mark a task skipped or not needed; the printable work order shows the list. Pro adds tasks that require a photo when you build the property list, and a checklist report for a finished visit. A task can come up every other clean or every Nth visit, and a schedule can use a different checklist on some weekdays. The help article Digital checklists walks through it.

### What happens to my data if I leave?

One click exports your whole company — settings, team, customers, properties, templates, saved add-ons, quotes and audit records — as portable JSON. It's your data, full stop. We then keep the account for six months after your access ends, so coming back costs you nothing; after that it becomes eligible for deletion and a person here reviews it before anything goes. If you stay on the Free plan instead, see "What happens if I stop using my Free account?" above.

### How do included usage and spending limits work?

The AI provider spending allowances and own-Twilio-only texting setup shown here are pending a coordinated release. They do not change current live configuration or activate providers. AI includes 250/700/1,500 fixed action credits on Starter/Pro/Business and a separate $4/$6/$12 monthly provider spending allowance, pooled across the company. Credits measure actions, not dollars, and do not guarantee a number of walkthroughs. Both limits apply. Failed customer-credit refunds do not erase billed attempts or retries. Settings shows usage; exhaustion pauses the assist with no automatic overage charge. Help uses a separate $1 monthly company safety allowance. Shared deployment safety limits may also pause service. Texts are sent through your own Twilio account, so Twilio bills you directly at its own rates. BlastoClean adds no per-text charge and no monthly texting allowance; a daily safety limit stops runaway sending. Long texts, emoji and accents may use several segments on your Twilio bill. Twilio bills calls, call recordings and the phone numbers themselves to your account the same way.

## Important details and disclaimers

1. After a year of inactivity on the Free plan, the account is suspended and the account holder is notified. All data stays intact; simply sign back in to reactivate the account. If nobody signs in within three months of the suspension, the account may be reviewed and deleted.
2. Paid billing starts only after your trial, managed securely by Stripe from inside the app, monthly, or yearly with two months free.
3. Licenses are shared company-wide across all your locations, and deactivating a user stops the charge for that license.
4. Quick Quote and Magic Quote use AI credits. Magic Quote walkthroughs consume more credits to analyze photos and videos.
5. Estimated hours saved only. The hours cover the whole quoting process. The walkthrough itself is faster because you capture photos, video and notes instead of stopping to measure and write everything down. This estimate does not count extra jobs or same-day quote wins. The numbers you enter are the whole calculation.

---

---
title: "Free cleaning quote calculator · BlastoClean"
description: "Estimate a house cleaning price range from bedrooms, bathrooms, size, how often, and the type of clean. Free in the browser. The assumptions are written out. It is a range, not a quote."
url: "https://www.blastoclean.com/free-cleaning-quote-calculator"
---

# Free cleaning quote calculator

A low-to-high price for a house clean, from the size of the home and the kind of job. No account. The math stays in your browser.

An estimate from typical rates. It varies by area. It is not a quote, and it is not based on a survey of what cleaners charge.

**Estimated range:** $150 to $245 per visit. That range is for 3 bedrooms, 2 bathrooms, and 1,600 square feet: a standard clean, one time, with no add-ons.

Coming back every week costs less per visit than a one-time clean, because the home never gets far from clean. A deep clean and a move-out are not a regular visit with a little extra tacked on: they include work a regular visit skips. The range above follows that shape with round numbers. A company that sends a real price uses its own times and its own rate.

## How cleaners price a job

A price that holds up is built from the work, not from a hunch. Count the rooms, give each task a time, let a bigger or dirtier room take longer, then multiply the time by the hourly rate you need to charge.

## Send quotes like this to your customers in a minute.

[Try BlastoClean free](https://www.blastoclean.com/signup)

## Questions

**Is this the price I will be charged?**

No. It is an estimate from round, typical rates, and it varies by area. A cleaning company prices a job from its own times and its own hourly rate. This page is not a survey of what cleaners charge, and it is not a quote.

**How is the range worked out?**

We add minutes for the kitchen, the bedrooms, the bathrooms, and the living room. Square feet are compared with a 1,600 square foot home: a smaller home takes less time and a larger one takes more. A deep clean or a move-in/move-out takes longer still. We round the minutes up to the next 15 minutes, then turn that time into money at a low hourly rate and a high hourly rate. Weekly, every two weeks, and monthly take a percent off the one-time price.

**Why a range instead of one number?**

The same house costs a different amount from one town to the next, mostly because the hourly rate is different. The low end uses $40 an hour and the high end uses $65 an hour. Your area may sit outside that spread.

**What is not included?**

Travel, supplies, tax, and anything we cannot see from a few numbers, such as heavy dirt, pets, or clutter. Inside the fridge, inside the oven, and interior windows are included only when you tick them.

**Can I send this to someone?**

Yes. Copy the link and the same bedrooms, bathrooms, and options open with it. A price you promise a customer should still come from your own rates. BlastoClean builds that quote from your rooms and tasks and sends it as a link.

---

---
title: "Free cleaning business profit calculator · BlastoClean"
description: "Work out profit per cleaning job and per month from your price, crew, pay, supplies, and drive. Free in the browser. No account. The starting numbers are an example you should change."
url: "https://www.blastoclean.com/free-cleaning-business-profit-calculator"
---

# Free cleaning business profit calculator

Profit per job and per month, from the price you charge, the crew you pay, supplies, and the drive. No account. The math stays in your browser.

The numbers in the boxes are a starting example. Change them to your own. They are not a survey of what cleaning companies charge or pay.

Starting example: profit per job is $50, profit per month is $1,000, and the margin is 33.3%. You charge $150. A crew of 2 for 2 hours at $20 an hour is $80 of labor. Supplies are $10. 30 minutes of driving at $20 an hour is $10. Costs add up to $100. Profit is $150 minus $100.

Labor is the crew size times the hours on the job times the pay per hour. The drive is separate. Count it in minutes and a cost per hour, or in miles and a cost per mile. Use whichever matches how you think about the trip. The starting numbers are only there so the page is not empty.

[Free cleaning quote calculator](https://www.blastoclean.com/free-cleaning-quote-calculator) · [Free commercial cleaning bid calculator](https://www.blastoclean.com/free-commercial-cleaning-bid-calculator)

## How this profit is worked out

Take the price of the job. Subtract what you pay the crew, what you spend on supplies, and what the drive costs. What is left is the profit on that job. Multiply by the jobs you do in a month. Divide the job profit by the price to get the margin.

## Keep the price, the pay, and the jobs in one place.

[Try BlastoClean free](https://www.blastoclean.com/signup)

## Questions

**Is this my real profit?**

It is the profit from the numbers you type, and nothing else. Tax, insurance, rent, ads, equipment, and your own pay (unless you put it in the hourly rate) are left out. Change the starting example before you trust the result.

**How is the profit worked out?**

Labor is the crew size times the hours on the job times the pay per hour. Add supplies for the job. Add the drive: minutes divided by 60, times the cost per hour, or miles times the cost per mile. Subtract those costs from the price. That is the profit per job. Multiply by jobs per month for the month. Divide the job profit by the price for the margin. If the price is $0, there is no margin.

**Where do the numbers in the boxes come from?**

They are a starting example so the page is not blank: price $150, 20 jobs a month, crew size 2, 2 hours on the job, $20 an hour, $10 of supplies, and 30 minutes of driving at $20 an hour. Switch to miles and the example is 10 miles at $1 a mile. None of these is a market rate or an industry average. Put in your own.

**What is not included?**

Tax, insurance, office rent, software, ads, equipment, and any pay you did not type. The drive cost is only the rate you enter. This page does not look up a mileage rate or a wage.

**Can I send this to someone?**

Yes. Copy the link and the same price, crew, supplies, and drive open with it. BlastoClean stores your prices and your jobs, and sends the quote to the customer. Try it free.

---

---
title: "Free commercial cleaning bid calculator · BlastoClean"
description: "Work out a monthly cleaning bid for an office or building from square feet, how often you come, what you pay per hour, and your profit margin. Free in the browser. No account. The starting numbers are examples."
url: "https://www.blastoclean.com/free-commercial-cleaning-bid-calculator"
---

# Free commercial cleaning bid calculator

A monthly bid for an office or a building, from the size, how often you clean, and what you pay. No account. No signup. The math stays in your browser.

The numbers already filled in are starting examples. Change each one to this building, to what you pay, and to the margin you want. They are not industry averages, and they are not a fact about what the work should cost.

The numbers already in the form are starting examples: 10,000 square feet, 5 times a week, $25 an hour of labor cost, 2,000 square feet an hour for the crew, 1 on the crew, 10% for supplies and overhead, and a 20% profit margin. With those examples, time on site is 5 hours on site a visit and paid labor is 5 paid hours with 1 on the crew.; the cost is $137.50 a visit, and the suggested monthly bid is $3,724.07.

Worked from the numbers in the form. Change them and this changes. It is not a quote, and it is not based on a survey of what cleaners charge.

1. 10,000 square feet divided by 2,000 square feet an hour is 5 hours on site on site this visit. Those hours are rounded so you can read them.
2. Labor cost uses paid hours: 5 hours on site on site times 1 on the crew is 5 paid hours with 1 on the crew.. At $25 an hour per cleaner, that pay is $125 of labor. $25 is what you pay one cleaner, not what you charge.
3. Supplies and overhead at 10% of that labor add $12.50. This visit costs $137.50.
4. A 20% profit margin is a share of the price, not an extra 20% on the cost. Divide $137.50 by 0.80. One visit is priced at $171.88.
5. 5 times a week. A year has 52 weeks and 12 months, so multiply the visit price by 5 times 52 divided by 12. The monthly bid is $3,724.07.

This page uses one speed for the whole building, and the same visits every time. A real contract often mixes the work: trash every visit, floors once a week, a heavy job once a quarter. Those need their own times. The monthly number here is a sketch from the numbers you type.

[Free cleaning quote calculator](https://www.blastoclean.com/free-cleaning-quote-calculator) · [Free profit calculator](https://www.blastoclean.com/free-cleaning-business-profit-calculator)

## How a monthly bid is built

Divide the size by how fast the crew cleans together, multiply the time on site by how many cleaners are on the crew, multiply that by what you pay one cleaner per hour, add supplies and overhead if you use them, then set the price so your margin is a share of what you charge. Do that for every visit in the month.

## Send bids like this from your own task list.

[Try BlastoClean free](https://www.blastoclean.com/signup)

## Questions

**Is this the bid I should send?**

Only if every number in the form is yours. The numbers already filled in are starting examples, not industry averages and not a fact about what the work should cost. Change them. Even then this is one speed for the whole building, not a full spec sheet.

**How is the monthly bid worked out?**

Divide the square feet by how many square feet the crew cleans in an hour. That is the time on site for one visit. Multiply that time by how many cleaners are on the crew to get paid labor hours. The hours shown are rounded so they are easy to read, and the cost uses the full paid hours. Multiply those paid hours by what you pay one cleaner per hour. That is the labor cost. Do not put the rate you charge the customer in that box, because overhead and profit are added after it. If you set a supplies and overhead percent, that percent of the labor cost is added, and the sum is the cost of the visit. Profit margin here is a share of the price, so the visit price is the cost divided by (1 minus the margin). If you come a set number of times a week, a month is that number times 52 divided by 12, because a year has 52 weeks and 12 months. If you come a set number of times a month, the month is that many visits. The monthly bid is the visit price times the visits in a month. Money is rounded to the nearest cent at each step.

**What does profit margin mean here?**

It is a share of the price, not an extra percent added to the cost. A 20% margin means 20 cents of each dollar you charge is profit, and the other 80 cents covers the cost, so the price is the cost divided by 0.80. The 20 in the form is a starting example. Use the margin you actually want.

**What is not included?**

Different tasks at different speeds, restrooms counted by fixture, work that happens only once a month or once a quarter, travel, tax, and anything one number for the whole building cannot see. Supplies and overhead are included only as the percent you type. Leave that percent at 0 and they are left out.

**Can I send this to someone?**

Yes. Copy the link and the same square feet, frequency, crew size, labor cost, and percents open with it. A price you promise a customer should still come from a scope you can stand behind. BlastoClean builds that bid from your areas and your rates and sends it as a link.

---

---
title: "Blog · BlastoClean"
description: "Practical guides on quoting, scheduling and getting paid for cleaning work, from the BlastoClean team."
url: "https://www.blastoclean.com/blog"
---

# The BlastoClean blog

Practical guides on quoting, scheduling and getting paid for cleaning work, from the BlastoClean team.

## [Magic Quote: quote a property by walking it](https://www.blastoclean.com/blog/quote-a-property-by-walking-it)

August 14, 2026 · 5 min read · The BlastoClean Team

The best information you will ever get about a job is what you notice while standing in it. Here is how to capture that without staring at your phone in front of the customer.

## [How to price a deep clean (and the first clean of a new regular)](https://www.blastoclean.com/blog/how-to-price-a-deep-clean)

October 20, 2026 · 6 min read · The BlastoClean Team

A deep clean is not a standard clean that takes longer. Here is how to scope it, estimate the time, set the price, and explain it so the customer says yes instead of asking why it costs more.

## [How to build a cleaning checklist your crew will actually follow](https://www.blastoclean.com/blog/how-to-build-a-cleaning-checklist)

October 6, 2026 · 6 min read · The BlastoClean Team

A good cleaning checklist is short enough to use, specific enough to check, and built for the property in front of you. Here is how to write one, organize it, and keep it honest.

## [When a cleaning visit gets canceled](https://www.blastoclean.com/blog/when-a-cleaning-visit-gets-canceled)

October 3, 2026 · 4 min read · Chris Muench

A last-minute cancel costs the crew their morning, leaves an empty slot, and turns into an awkward fee talk. Here is what I built after owners told me about it.

## [What every cleaning quote should include (and what to leave off)](https://www.blastoclean.com/blog/what-every-cleaning-quote-should-include)

September 11, 2026 · 5 min read · The BlastoClean Team

A checklist of the eleven things a cleaning estimate needs to win the job and survive the argument afterwards — scope, exclusions, validity, terms and the line that stops most disputes.

## [How to raise your cleaning prices without losing your customers](https://www.blastoclean.com/blog/raising-your-cleaning-prices-without-losing-customers)

September 8, 2026 · 4 min read · The BlastoClean Team

When to raise rates, how much, how to word the notice, and what to do about the handful of customers who push back — with the arithmetic on what churn you can actually afford.

## [How to price a move-out clean (the job most companies underquote)](https://www.blastoclean.com/blog/how-to-price-a-move-out-clean)

September 4, 2026 · 4 min read · The BlastoClean Team

Move-out and move-in cleans are the easiest job in this trade to lose money on. Here is a scope, a time model and a quoting method that keeps the oven from eating your margin.

## [Hourly or flat rate? How to decide what your cleaning company charges](https://www.blastoclean.com/blog/hourly-or-flat-rate-cleaning-pricing)

September 1, 2026 · 5 min read · The BlastoClean Team

The honest trade-offs between charging by the hour and quoting a fixed price for cleaning work — and a way to get the safety of one with the sales advantage of the other.

## [The reply that went to one phone](https://www.blastoclean.com/blog/the-reply-that-went-to-one-phone)

August 22, 2026 · 5 min read · The BlastoClean Team

Your software has always written the outbound half of every customer conversation. The half that comes back went to whoever pressed send — and that is why the record reads as silence that never happened.

## [The complaint nobody answered](https://www.blastoclean.com/blog/the-complaint-nobody-answered)

August 14, 2026 · 4 min read · The BlastoClean Team

Commercial clients rarely leave in a row. They leave after three emails that went to an inbox — and the fix is a visible log with a clock on it.

## [The contract that quietly went underwater](https://www.blastoclean.com/blog/the-contract-that-quietly-went-underwater)

August 14, 2026 · 5 min read · The BlastoClean Team

A janitorial contract signed two years ago is still invoicing the same figure every month. That is exactly why nobody notices when it stops paying.

## [How to bid a commercial cleaning contract](https://www.blastoclean.com/blog/how-to-bid-a-commercial-cleaning-contract)

August 13, 2026 · 5 min read · The BlastoClean Team

Commercial bids are won on a spec sheet, not a walkthrough price: a frequency on every task, visits per week, and a monthly number a facilities manager can defend to their boss.

## [Net 30 doesn't have to mean never](https://www.blastoclean.com/blog/net-30-doesnt-have-to-mean-never)

August 12, 2026 · 4 min read · The BlastoClean Team

Commercial clients pay on terms — Net 30, PO numbers, one invoice a month. How to bill like a vendor and watch your receivables age, without building the spreadsheet that watches them.

## [The empty-building problem](https://www.blastoclean.com/blog/the-empty-building-problem)

August 11, 2026 · 4 min read · The BlastoClean Team

Janitorial work happens when nobody is watching — which means trust is the product. GPS clock-in, missed-clean alerts and actual-vs-estimated hours, and why proof of service wins renewals.

## [The reports you were building by hand](https://www.blastoclean.com/blog/the-reports-you-were-building-by-hand)

August 11, 2026 · 3 min read · The BlastoClean Team

Money owed, money per hour, crew numbers, profit by place and more — the Reports section turns questions you used to answer with a spreadsheet into a click.

## [Take the payment at the door: the BlastoClean mobile app](https://www.blastoclean.com/blog/take-the-payment-at-the-door)

August 9, 2026 · 3 min read · The BlastoClean Team

The job is done, the customer is standing right there — that is the moment to get paid. The new iOS and Android companion app turns the phone into the schedule, the checklist and the card terminal.

## [Late cancellations, handled with a card on file](https://www.blastoclean.com/blog/the-no-show-problem-solved-with-the-card-on-file)

August 7, 2026 · 3 min read · The BlastoClean Team

A last-minute cancel costs you the slot. Here is a fair way to put a late-cancellation fee in place before it happens, separate from no-shows.

## [Cotización, not just quote: serving Spanish-speaking customers well](https://www.blastoclean.com/blog/bilingual-quoting-for-spanish-speaking-customers)

August 2, 2026 · 2 min read · The BlastoClean Team

A growing share of homeowners and property managers prefer to do business in Spanish. Here is what "bilingual" actually needs to mean if you want their business.

## [Turn website visitors into quotes before they close the tab](https://www.blastoclean.com/blog/turn-website-visitors-into-quotes)

July 25, 2026 · 3 min read · The BlastoClean Team

Most "request a quote" forms die in an inbox for a day or two. Here is how to turn a website visitor into a lead you can price and send back before she closes the tab.

## [Recurring cleans without the spreadsheet](https://www.blastoclean.com/blog/recurring-cleans-without-the-spreadsheet)

July 21, 2026 · 2 min read · The BlastoClean Team

Weekly and every-other-week customers are the backbone of a cleaning business — and the fastest thing to outgrow a spreadsheet. How to run a schedule that runs itself.

## [Stop texting quotes: why online acceptance wins more cleaning jobs](https://www.blastoclean.com/blog/stop-texting-quotes)

July 2, 2026 · 2 min read · The BlastoClean Team

The quote a customer can accept in one tap beats the one buried in their messages. Here is why speed-to-yes is the metric that matters.

## [How to price a house cleaning job (without guessing)](https://www.blastoclean.com/blog/how-to-price-a-house-cleaning-job)

June 10, 2026 · 3 min read · The BlastoClean Team

A room-by-room method for estimating cleaning work that produces prices you can repeat, explain and defend.

---

---
title: "Magic Quote: quote a property by walking it · BlastoClean"
description: "The best information you will ever get about a job is what you notice while standing in it. Here is how to capture that without staring at your phone in front of the customer."
url: "https://www.blastoclean.com/blog/quote-a-property-by-walking-it"
---

# Magic Quote: quote a property by walking it

August 14, 2026 · 5 min read · The BlastoClean Team

![A walkthrough captured as photos and voice notes on the left, reconciled into a priced draft quote with evidence links on the right](https://www.blastoclean.com/images/magic-quote-walkthrough.svg)

You already know how to price a property. You worked it out in the first ninety seconds —
somewhere between the kitchen and the top of the stairs, or between the lobby and the
third-floor restrooms, before anyone said the word "quote". The hard part was never the
estimating. The hard part is that everything you noticed has to survive the drive home.

## What actually gets lost

Think about the last walkthrough you did. The customer said they didn't need the
refrigerator, then changed their mind on the way out. You reckoned the shower — or the
break-room floor — would take forty minutes the first time, not the twenty your standard
time assumes. There were two dogs, or a loading bay that only opens after six. They
mentioned Fridays.

By the time you're at the kitchen table writing it up, you have four of those. Maybe five.
The one you dropped is the one that costs you — either you quote too low and eat the
difference on the first clean, or you quote high to cover yourself and lose the job to
somebody who didn't.

The usual fix is to write more down. Which means standing in somebody else's building
looking at your phone while they wait, and that is its own cost: the customer who is being
listened to is the customer who signs.

## Capture first, structure later

Magic Quote is built around a simple reversal. Instead of filling in a form while you walk,
you capture whatever the moment gives you and let the software sort it out afterwards.

Tap Start. Then just work:

- Take four photos of the kitchen — or the break room. Don't label them.
- Hold the mic and say _"master bath, shower is going to need thirty or forty minutes the
  first time, she wants the glass done."_
- Type "skip the guest bedroom" while you're standing in it.
- Record twenty seconds of video walking the lobby, talking over it.

Nothing needs a category. Nothing needs to be in order. You are not filing anything — you
are noticing things out loud, which is what you were doing anyway.

It makes no difference to Magic Quote whether the property is a four-bedroom house or a
floor of offices. On a commercial bid walk, say what happens nightly and what happens
quarterly as you go, and the draft comes back as a commercial quote with those frequencies
already attached, priced by the month.

## Then it does the boring part

Afterwards, Magic Quote reads the whole walkthrough back and organizes it: which photos
belong to which room, what the customer asked for, what they said to skip, what you
estimated out loud, that there are two dogs, that they mentioned Fridays. It builds a draft
quote from **your** room and task library, at **your** hourly rate, with **your**
multipliers — the same math as every other quote you send.

Then it hands it to you with its homework showing.

## The part that matters most: it tells you what it isn't sure about

Software that reads a recording and hands you a confident answer is software you cannot
trust, because you can't tell the parts it heard from the parts it filled in.

So every single thing Magic Quote picked up carries a confidence, and anything shaky is put
in front of you _before_ it can affect a price. Confirm it, remove it, or fix the wording.
Tap "show me" on any of it and you land on the exact photo — or the exact second of the
recording where the customer said the words. Not a summary of what they said. The
recording.

That includes the awkward cases. When somebody says "we don't need the refrigerator" at
10:05 and "actually, let's do the refrigerator" at 10:23, that's one person changing their
mind, not two contradictory notes. Magic Quote shows you both and asks which one stands.

Skip a room and it stays out of the draft, and you can open the exact moment in the
recording where the customer said so.

## Keep capturing with no cell signal or Wi-Fi

Properties are the worst place a phone has to work. One bar in the laundry room, nothing at
all in the back bedroom, nothing in a basement plant room. Keep the walkthrough open and you
can carry on capturing with no cell signal and no Wi-Fi; it catches up when the connection
returns.

Pending photos, voice notes and typed notes also stay saved if you close and reopen the app,
and their uploads resume without creating duplicates. Short videos have one current limit: a
video that has not finished uploading is not restored after the app closes, so leave the
walkthrough open until that upload finishes.

## Change it by talking to it

Back in the truck, you can just say what you want:

- _"Take 10% off."_
- _"Did she mention windows?"_ — and it tells you when, and plays you the recording.

## What stays private

A walkthrough records the inside of somebody's home or business, and we treat it that way.

Your honest note about the master shower stays internal; what reaches the customer says the
shower needs extra detail on the first visit. Photos and recordings are never public — they
are only ever served to somebody signed in to your company. And you choose how long they're
kept: thirty days, ninety, a year, or as long as the customer.

## Where it fits, and what it costs

Magic Quote is on Pro and Business. Quick Quote and the everyday drafting assists start
on Starter; photo-quote analysis and voicemail transcription also need Pro or Business,
with their providers and settings enabled. Because a
walkthrough reads every photo and recording separately, a thorough walk — a four-bedroom
house, a floor of offices — uses around 70 of your monthly AI credits, against 1–4 for the
other assists, and every walkthrough shows you exactly what it used. Your 14-day free trial
runs on the Business allowance, so you can walk a handful of real properties — not a demo
one — before deciding anything.

## The number we actually care about

Not how many features it has. This one:

**How long you spend looking at your phone while the customer is standing next to you.**

If Magic Quote is doing its job, that number is close to zero — and everything you noticed
on that property is still there when you sit down to price it.

[Start a free trial](/signup) and quote your next job by walking it.

---

---
title: "How to price a deep clean (and the first clean of a new regular) · BlastoClean"
description: "A deep clean is not a standard clean that takes longer. Here is how to scope it, estimate the time, set the price, and explain it so the customer says yes instead of asking why it costs more."
url: "https://www.blastoclean.com/blog/how-to-price-a-deep-clean"
---

# How to price a deep clean (and the first clean of a new regular)

October 20, 2026 · 6 min read · The BlastoClean Team

Almost every new customer asks some version of the same question: why does the first clean cost
more than the ones after it? If the answer is "it just does," you either lose the job or you
drop the price and spend five hours doing work you quoted at three.

A deep clean is not a standard clean that happens to take longer. It is a different list of
work. Price it that way, and both the number and the explanation get a lot easier.

## Decide what "deep" means before you price it

The biggest pricing mistake with deep cleans is that the word means something different to
everyone. To one customer it means the baseboards. To another it means inside the oven, inside
the fridge, every cabinet, the blinds, and the grout. If you quote "a deep clean" without
saying what is in it, you will find out what the customer meant on the day of the job.

Write down your own definition and use it every time. A simple way to do that is to start from
your standard clean and list what you add on top:

- **Always in a deep clean:** baseboards, door frames and doors, light switches and outlet
  covers, the tops of cabinets and the fridge, ceiling fans and light fixtures, window sills and
  tracks, buildup on tile and grout you can reach with normal tools
- **Add-ons you price separately:** inside the oven, inside the fridge, inside cabinets and
  drawers, inside windows, blinds slat by slat, walls
- **Not included:** anything that needs a ladder you don't carry, mold remediation,
  post-construction dust, biohazards

You can draw those lines wherever you like. What matters is that the lines exist, that they are
on the quote, and that your crew is working from the same list.

## Estimate the time task by task

Once the scope is written down, the time stops being a guess. Take your standard clean estimate
for the property, then add minutes for each extra task, room by room.

Say your standard clean for a particular house is about 3 hours. Walk through what the deep
clean adds: baseboards in every room, the door frames, the fans, the sills and tracks, the
kitchen cabinet tops, and real time on the shower glass and grout. Put a time on each one. If
those add up to another 2 hours, your deep clean is about 5 hours before condition comes into it.

Those numbers are an example, not a benchmark. Use your own times. If you don't know them yet,
time your crew on the next few jobs and write it down. A month of real numbers beats any rule
of thumb you will find online.

## Adjust for condition, honestly

A house that was cleaned professionally six weeks ago and a house that hasn't had a real clean
in a year are not the same job, even with the same square footage and the same task list.

Look at it in person if you can, or ask for photos if you can't. Then adjust:

- **Light:** recently cleaned, little buildup. Your base estimate is probably close.
- **Standard:** normal wear. Use your base estimate.
- **Heavy:** real buildup in the kitchen and bathrooms, pet hair everywhere, clutter you have to
  work around. Add time, often a lot of it.

Be careful with the heavy cases. The kitchen and bathrooms usually carry most of the extra time,
because grease and soap scum don't come off faster just because you're in a hurry. If a job
looks like it might be far past heavy, it is fine to quote it as hourly with an estimated
range, or to say you'll confirm the price after the first hour. That protects you and is more
honest with the customer than a flat number you are not sure about.

## Turn the hours into a price

Add your base time, your extra tasks, and your condition adjustment. Round up to the increment
you bill in, multiply by your hourly rate, and add any fixed charges like travel or supplies.

Two things worth checking before you send it:

- **Crew size doesn't change the labor.** Two cleaners for 2.5 hours is still 5 hours of labor.
  Price the labor hours, then decide how many people to send.
- **Your rate has to cover the real cost.** Your hourly rate should cover wages and payroll
  costs for the people doing the work, plus your overhead and profit. If a deep clean only
  looks profitable at a rate you'd never charge, the estimate is telling you something.

If you charge by the square foot instead of by the hour, the same thinking applies. Use a higher
rate per square foot for a deep clean than for a standard clean, and work out that rate from
the extra time, not from a feeling.

If you want a quick sanity check before you build the full quote, our
[free cleaning quote calculator](/free-cleaning-quote-calculator) sketches a low-to-high range
from bedrooms, bathrooms and square feet, with a heavier factor for a deep clean. It is a
starting point, not a price to send.

## The first clean of a recurring customer

A lot of deep cleans are really the first visit of a customer who wants weekly or every-other-week
service. This is where many companies lose money without noticing. They quote the regular
price for every visit, then spend the first visit catching up on months of buildup.

Don't hide the catch-up cost inside the regular price, and don't eat it. Quote two numbers:

- **The first clean**, which includes the deep clean tasks and the condition adjustment
- **The regular visit**, which is your standard clean for that property at the frequency they
  chose

Then say why, in one sentence: "The first visit is bigger because we're getting everything to a
level we can keep it at. After that, the regular price is what you'll pay." Most customers
understand that right away, because it's true. It also makes the regular price look reasonable
next to the first one, instead of making them wonder why it went up.

Tie the regular price to the schedule. If a weekly customer drops to monthly, the house won't
stay at that level between visits, and the regular price should change with it. Say that on
the quote, not in an awkward conversation three months later.

## Put it all on the quote

A deep clean quote that holds up should say:

- What is included, task by task or room by room
- What is not included, and what the add-ons cost
- The condition you priced for, so a surprise isn't on you
- For a new recurring customer, the first clean price and the regular price, side by side
- How long the price is good for

When all of that is written down, there is not much left to argue about. And if the job turns
out to be different from what you were shown, you have something clear to point to.

## Where BlastoClean fits

We built [BlastoClean](/) so the first clean and the regular visits live on one quote. On any
plan, you can price the first clean of a recurring quote separately by adding a set amount or a
percent, and mark tasks like baseboards or inside the cabinets as first visit only. The customer
sees both prices on the same quote, and when you book the schedule the first visit uses the first
clean price and every visit after it uses the regular price.

If you want to try it on your next deep clean, you can [start free here](/signup), and we're
happy to walk you through setup on a free 30-minute call.

Call or text (585) 200-6753.

---

---
title: "How to build a cleaning checklist your crew will actually follow · BlastoClean"
description: "A good cleaning checklist is short enough to use, specific enough to check, and built for the property in front of you. Here is how to write one, organize it, and keep it honest."
url: "https://www.blastoclean.com/blog/how-to-build-a-cleaning-checklist"
---

# How to build a cleaning checklist your crew will actually follow

October 6, 2026 · 6 min read · The BlastoClean Team

Almost every cleaning company has a checklist. Plenty of them live in a binder in the van, a
laminated sheet nobody has read since the day it was printed, or a list in the owner's head that
nobody else can see. Then a customer calls to say the baseboards were skipped, and there is no
way to know whether they were skipped, done badly, or never on the list in the first place.

A checklist only earns its keep when the crew uses it on every visit and the office can trust
what it says afterward. That comes down to how it is written, how it is organized, and where it
lives.

## Start from what you sold, not from a generic list

The fastest way to build a useless checklist is to download a 120-line "ultimate house cleaning
checklist" and hand it to your crew. It covers everything, which means it matches nothing.
Nobody is going to clean the inside of the oven on a weekly visit just because line 47 says so,
and once the crew learns to ignore some lines, they start ignoring the rest.

Build the list from the job you actually agreed to do. If you quoted a recurring standard clean
for a three-bedroom house, the checklist should be the rooms in that house and the tasks in that
quote. If you quoted a deep clean or a move-out, it should be the extra tasks you priced in:
inside the cabinets, inside the fridge, the blinds. If a task is not on the quote, it should not
be on the checklist, and if it is on the checklist, the customer should have paid for it.

That one rule settles a lot of arguments before they start. When a customer asks whether the
inside of the microwave was included, the answer is on two pieces of paper that say the same
thing.

## Organize it by room, in the order the crew walks

People clean in a path. They start in one place and work through the house or the building in
roughly the same order every time. A checklist that follows that path is easy to use. A
checklist sorted alphabetically, or by task type, makes people flip back and forth.

Group tasks under areas the crew will recognize the moment they walk in:

- Kitchen
- Main bathroom, guest bathroom
- Bedrooms (or "Primary bedroom" and "Bedrooms 2 and 3" if they are different)
- Living areas
- For commercial work: lobby, restrooms, break room, offices, each floor

Then put the areas in the order your crew actually works them. If your team always finishes in
the kitchen so the floors are the last thing done, the kitchen goes at the bottom.

## Write tasks someone else can check

"Clean the bathroom" is not a task. It is a room. Two cleaners will read it two different ways,
and neither of them is wrong.

A good task is specific enough that a supervisor, or the customer, could walk in afterward and
say whether it was done:

- Wipe vanity counter and faucet, dry the fixtures
- Scrub toilet inside and out, including the base
- Clean mirror, no streaks
- Empty trash and replace the liner
- Mop the floor, including behind the toilet

Start each line with a verb. Keep it to one action, or one tight group of actions in the same
spot. If a task needs a note ("use the stone cleaner on the counters, not the all-purpose"),
put the note on that property's checklist, not in a text message someone has to remember.

## Not every task happens every visit

This is where a lot of checklists fall apart. A weekly customer does not need the baseboards
detailed every week, the ceiling fans dusted every week, or the inside of the windows done every
week. If those tasks sit on the list as if they are due every time, the crew either does work
nobody paid for or learns to skip lines.

Give tasks a frequency instead:

- **Every visit:** counters, toilets, floors, trash, mirrors
- **Every other visit or monthly:** baseboards, ceiling fans, light fixtures, door frames
- **Quarterly:** inside windows, blinds, behind the appliances you can move

Commercial contracts work the same way, just with more of it. Restrooms and trash every night,
high dusting monthly, carpet extraction quarterly. When the checklist knows the rhythm, the crew
sees the full list but knows exactly what is due today.

## Keep it short enough to use

There is no magic number of tasks, but there is a feel to it. If the crew can't get through the
list without scrolling past things that don't apply, it's too long. If the customer could
reasonably complain about something that isn't on it, it's too short.

A few things that help:

- **Cut lines that never get checked.** If nobody has ever looked at whether a task was done,
  either start checking it or take it off.
- **Don't split tasks to look thorough.** "Wipe the top of the fridge" and "wipe the front of
  the fridge" can be one line.
- **Separate the extras.** Add-ons a customer pays for occasionally, like inside the oven or
  inside the fridge, should show up only on the visits they bought them for.

## Make it something the crew ticks, not something they remember

A checklist that sits in a binder is a training document. A checklist the crew ticks off on the
visit, task by task, is a record. The difference matters the first time something goes wrong.

When each task gets a tick, the office can see what was done without calling anyone. When a
cleaner can add a short note ("oven was already clean," "customer asked us to skip the office
today"), the context is attached to the visit instead of buried in a group chat. When a photo can
be attached to a task, an argument about whether the shower was scrubbed becomes a picture of
the shower.

It also helps the crew. A new cleaner on their second week can follow the list for a property
they have never been to.

## Review it after the complaints, not just once a year

Every callback is a signal about the checklist. If a customer says the tops of the door frames
were dusty, ask one question: was that task on the list? If it wasn't, add it. If it was, it
was missed, and that's a training conversation or a time problem, not a checklist problem.

The same goes for the other direction. If a task keeps getting marked done in five minutes when
you budgeted fifteen, your quote might be padded there. If it keeps running long, your price
might be too low. The checklist and the quote should keep each other honest.

## Where BlastoClean fits

We built [BlastoClean](/) so the checklist and the quote come from the same place. On Starter
and above, each property can carry its own checklist, organized by area, with a frequency on
every task. You can start it from the accepted quote or from your own room and task templates.
Each visit gets its own copy, cleaners tick tasks, add notes and attach visit photos from their
phone (even with no signal), and the office sees progress on the schedule. Pro adds tasks that
require a photo before they count as done, plus a checklist report for each finished visit.

If you want to try it on one of your own properties, you can
[start free here](/signup), and we're happy to walk you through setup on a free 30-minute call.

Call or text (585) 200-6753.

---

---
title: "When a cleaning visit gets canceled · BlastoClean"
description: "A last-minute cancel costs the crew their morning, leaves an empty slot, and turns into an awkward fee talk. Here is what I built after owners told me about it."
url: "https://www.blastoclean.com/blog/when-a-cleaning-visit-gets-canceled"
---

# When a cleaning visit gets canceled

October 3, 2026 · 4 min read · Chris Muench

A last-minute cancel is expensive in a way the calendar does not show.

The crew loses the pay they counted on for that morning. The slot sits empty,
and by then it is too late to fill it the old way, with a round of phone calls.
Then there is the fee conversation. Most owners skip it, because it feels
awkward to chase a customer for money they did not see coming.

Owners on Reddit and on Indie Hackers kept describing that same morning. A late
cancel, an empty hour, and a fee that never quite gets charged. I wrote it up
in the open, and owners wrote back, on
[I built a $60k/mo point of sale business starting in high school. Now I'm starting over at $0 with cleaning companies.](https://www.indiehackers.com/post/i-built-a-60k-mo-point-of-sale-business-starting-in-high-school-now-im-starting-over-at-0-with-cleaning-companies-06eeded96a)
I built three things from what they said.

## A late fee you choose to charge

In **Settings**, under **Late cancellation fee**, turn on **Charge a late
cancellation fee**. It stays off until you turn it on. It starts at 24 hours'
notice and $50 when you bill in US dollars. You can change both. A location can
set its own numbers, or leave them blank and follow the company.

The fee applies when the cancel has less notice than that window. Cancel with
exactly that much notice, or more, and there is no fee. An unpaid visit invoice
is voided; paid invoices and their payment history are retained. Cancellation does
not refund a payment. If you charge the fee, it is a separate invoice called **Late
cancellation fee**.

A person always makes the call. The app never charges the fee on its own, on
the web or on the phone. You can charge the card on file, waive the fee, or
cancel and leave the fee waiting. Someone who can take payments charges it or
waives it. Owners, managers, and estimators can cancel the visit and leave the
fee waiting. Read-only users cannot cancel. If there is no card on file,
cancel and send a payment link. The link goes by email, and by text when
texting is set up and the customer agreed.

The customer still gets their own note that the visit was canceled. The fee
amount is in that note only when you charged it in the same step. A charge you
make later sends its own receipt. The fee does not appear on the quote, so tell
the customer the window and the amount yourself, before you need them.

## You hear about it

**Tell me when a visit is canceled** starts on. Owners and managers get an
email and a notice in the bell titled **Visit canceled**. On Pro and Business,
the same switch also sends a text when texting is set up. The cleaner assigned
to that visit is not on the list. The customer is not told a second time from
this switch, and nothing from it lands in their conversation.

When a person cancels, the notice names them. When the system cancels a visit,
it does not name a person.

## The open slot, in one tap

The empty hour is the part I most wanted to fix. In **Settings**, under **Fill
open spots**, turn on **Offer canceled times automatically**. It stays off until
you do. This works on every paid plan: Starter, Pro and Business. On Free, the
time from a canceled job is not offered.

Customers start off the list. On their record, tick **Let them know if an
earlier time opens up**. They can tick **Let me know if an earlier time opens
up** when they book or confirm, and on their own page under **Earlier times**.

When a visit is canceled, those customers get an offer. It says their next
visit moves to that day and time, and the rest of their schedule stays the
same. The first person to tap **Take this spot** gets it. The cleaning has to
fit in the open time. The time that move frees is not offered again. Moving
into the open time is not a cancellation, so it does not charge a late fee.

**Approve the move first** starts off. Leave it off and the first tap moves the
visit. Turn it on and nothing moves until you approve it. The customer is told
the office will confirm the move before anything changes.

If nobody takes the spot, owners and managers get a bell notice and an email,
**Slot still open**, with the day and time. That notice is not a text.

The offer goes by email. On Pro and Business it also goes by text when text
reminders are on, texting is set up, and the customer agreed to texts on that
number.

A customer turns it off by clearing the tick, or by pressing **Stop offers about
open spots** on any offer. In the pending texting update, replying STOP only stops
text offers. Requested email offers keep arriving, with their own link to turn
them off.

The notice cutoff, the size of each group, and the quiet hours are in
[Handling cancellations](/docs/cancellations), along with the rest of the
steps.

---

---
title: "What every cleaning quote should include (and what to leave off) · BlastoClean"
description: "A checklist of the eleven things a cleaning estimate needs to win the job and survive the argument afterwards — scope, exclusions, validity, terms and the line that stops most disputes."
url: "https://www.blastoclean.com/blog/what-every-cleaning-quote-should-include"
---

# What every cleaning quote should include (and what to leave off)

September 11, 2026 · 5 min read · The BlastoClean Team

A cleaning quote does two jobs, and most quotes are only built for the first one.

The first job is to win the work: be clear, look professional, arrive fast. The second job
happens weeks later, when someone says *"I thought the windows were included."* A quote that
wins the job but can't settle that conversation isn't finished — it just hasn't been tested yet.

Here's the checklist. Eleven items; none of them takes long.

## 1. Who you are, in a way that can be verified

Business name, phone, email, address, and your license or insurance numbers if your state or
your client type expects them. Property managers and facility managers routinely file quotes
for comparison — yours should be identifiable three months later without a reply-all.

## 2. A quote number and a date

Not decoration. The quote number is how a customer refers to the document, how you find it, and
how an invoice ties back to what was agreed. The date is the anchor for everything about
validity below.

## 3. The property, not just the customer

The service address, the type of property, and the size you priced against — square footage,
bed/bath count, floors, or number of offices. This is the single most useful line when a job
comes back different from what you quoted: you priced *3 bed, 2 bath, 1,800 sq ft*, and what
you arrived at was not that.

## 4. The type of clean, named

Standard, deep, move-out, post-construction, recurring janitorial. These words mean different
things to different people, which is exactly why the next item exists.

## 5. Scope, room by room and task by task

The heart of it. Not "whole-home cleaning" but the actual rooms and the actual tasks:

> **Kitchen** — counters and cabinet fronts, sink and faucets, exterior of appliances, inside
> microwave, floor vacuumed and mopped, trash out
>
> **Bathrooms (2)** — shower and tub scrubbed, toilet, sink and counter, mirrors, floor,
> fixtures wiped

Two reasons. It's the only way a customer can compare your bid to a cheaper one honestly, and
it's the document that answers "was that included?" without anyone's memory being involved.

## 6. Exclusions, stated out loud

Everything an ordinary person might reasonably assume is included and isn't. Usually: interior
of the oven and fridge, interior/exterior windows, blinds, walls, garage, balcony, laundry,
dishes, pet waste, biohazards, moving furniture, anything above a two-step ladder.

Writing these down feels negative. It isn't — it's the single highest-value paragraph on the
page, and the customer who wants those things now knows to ask.

## 7. The price, broken into pieces

Subtotal, any fees (travel, supplies, first-visit surcharge), discounts, tax, and the total.
One undifferentiated number invites suspicion; a breakdown invites questions you can answer.

If the job is recurring and priced per visit, put the frequency menu on the quote: one-time,
weekly, every two weeks, monthly, each at its per-visit price. Customers who see the weekly rate
next to the one-time rate frequently talk themselves into weekly. A janitorial contract is a
different document — one monthly amount, with each task line carrying its own frequency — and
the menu doesn't belong on it.

## 8. Crew size and time on site

"Two cleaners, approximately 3.5 hours." It sets expectations for the day and it quietly
justifies the price — the customer isn't buying a mysterious number, they're buying seven
labor hours.

## 9. What happens if the job isn't what you were told

One sentence: *Pricing assumes standard condition as described. Significant additional soil or
scope will be re-quoted before work begins.* This line, and the exclusions above, prevent more
disputes than everything else on the page put together.

## 10. Validity, terms and how to say yes

- **Valid until** a real date — 14 or 30 days. Prices move; an unlimited quote is an unlimited
  liability.
- **Payment terms**: due on completion, net 15, deposit for large one-offs, accepted methods.
- **Cancellation policy**: your notice window, and the fee for a lockout or same-day cancel.
  If you use BlastoClean, you can turn on a late-cancellation fee in Settings (24 hours and a
  fee of 50 to start, both adjustable); someone at your office charges or waives it from the
  card on file when a visit is canceled inside that window, and it does not print on the
  quote.
- **A way to accept** that takes one tap. Every extra step between "yes" and yes costs you jobs
  — especially against a competitor whose quote can be accepted from a phone on a lunch break.

## 11. Nothing else

Leave off the internal hourly rate, your crew's individual wages, per-task minute counts, and
apologetic hedging. Leave off the three-page terms wall for a $220 house clean. The quote should
be readable on a phone in under a minute and complete enough to settle an argument.

## The version that also arrives on time

Every item above is the difference between a quote and a receipt for an argument — and writing
all of it by hand, tonight, for six properties, is why so many quotes go out as a number in a
text message instead.

[BlastoClean](/) builds this document as a by-product of estimating. Ticking tasks during the
walkthrough produces the room-by-room scope in item 5, because the scope *is* the estimate.
Fees, discount and tax are separate lines by construction. The crew size you set prints the time
on site. Frequency options render as the menu in item 7. Your logo, your tax rate, your quote
numbering and your expiry window come from your company settings, so item 2 and the validity
date in item 10 are on every quote without being retyped — the payment and cancellation wording
is yours to write, and commercial quotes get a contract terms card of their own (length,
auto-renewal, escalation, notice period).

Then it goes out as a private link — email, a branded PDF, or a text message if you're on Pro or
Business and that number has opted in — and the customer accepts in one tap with no account to
create, picking their visit frequency as they do. Switch signatures on when a job wants more
than a click and accepting instead asks them to type their name and tick that they agree, with
the drawn mark as the optional part, so a stiff trackpad never costs you the acceptance. Switch
automatic follow-ups on and a customer who goes quiet gets a nudge after the number of days you
chose, plus a warning before the quote expires. You find out the moment they open it.

Write the quote once, properly. It'll still be doing its job long after the job is done.

---

---
title: "How to raise your cleaning prices without losing your customers · BlastoClean"
description: "When to raise rates, how much, how to word the notice, and what to do about the handful of customers who push back — with the arithmetic on what churn you can actually afford."
url: "https://www.blastoclean.com/blog/raising-your-cleaning-prices-without-losing-customers"
---

# How to raise your cleaning prices without losing your customers

September 8, 2026 · 4 min read · The BlastoClean Team

Most cleaning companies are underpriced, and they know it. What stops them isn't the arithmetic
— it's the picture of the loyal customer of six years reading the email and quietly moving to
someone cheaper.

That fear is worth taking seriously. It's also worth running the numbers on, because they are
usually much friendlier than the fear is.

## First, the arithmetic that makes this decision for you

Say a recurring customer pays $150 a visit and your cost to serve is $105 — labor, payroll
taxes, supplies, drive time. That's $45 of margin. Raise the price 8% to $162 and the margin
goes to $57.

How many of those customers can you lose before you're worse off than you started? With ten
such customers you were making $450 a visit. At the new price you clear $450 with **eight**
customers. Losing one of ten puts you *ahead* — with a free slot for a customer paying the new
rate and one less house to clean.

Run that with your own numbers before you talk yourself out of a raise. The break-even churn on
a single-digit increase is nearly always higher than the churn you'll actually get.

Want to see what is left on one visit before you change the list? The
[free cleaning business profit calculator](/free-cleaning-business-profit-calculator)
does that from a price, pay, supplies, and drive time in the browser. No account.
The numbers it starts with are examples you should change.

## When you're overdue

- Your costs went up — wages, insurance, fuel, supplies — and your prices didn't.
- You're winning nearly every quote you send. A 90% close rate is not a sign of a great sales
  process; it's a sign you're cheap.
- Some jobs consistently run long and you've stopped noticing because "that's just how that
  house is."
- You have a waiting list, or you're turning work down.
- It's been more than 18 months.

## How much, and how often

**Annually, modestly, is better than rarely and dramatically.** A 5–8% increase once a year
reads as normal business. A 25% increase after four years of nothing reads as a betrayal, even
though it's the same money.

Two other moves, worth more than a blanket raise:

- **Fix the specific jobs that are wrong.** The house that takes 3.5 hours and was priced for
  2 doesn't need 6% — it needs to be re-quoted from its actual scope.
- **Raise new-customer pricing first.** New quotes go out at the new rate today. Existing
  customers move at the next scheduled increase. You learn what the market will bear with no
  churn risk at all.

## The notice

Thirty days' warning, in writing, to everyone at once. Not per-customer negotiation — that
turns a policy into an auction.

What works:

> Starting November 1, your every-other-week visit will be $162, up from $150.
>
> This is our first adjustment since March 2025. Wages for our cleaners went up this year, and
> keeping the same team in your home — the people who know your dog, your alarm code and which
> hardwood cleaner you prefer — is what that increase pays for.
>
> Everything else stays exactly the same: same crew, same day, same scope. Your next visit on
> October 22 is at the current price.
>
> Thanks for six years. If you'd like to talk it through, just reply.

What makes it work:

- **The number is right there.** No "a modest adjustment to our pricing structure."
- **One honest reason**, tied to something the customer values — their crew, not your costs.
- **It says what isn't changing.** Most of the anxiety in a price letter is unspoken: *am I
  also losing my Tuesday slot?*
- **It has a date and a last-old-price visit**, so nobody is surprised by an invoice.
- **No apology.** You're not doing anything wrong. Apologizing invites a negotiation.

## When someone pushes back

Expect a few. Have a plan and use it consistently:

- **Hold the price, offer a different scope.** "I can keep you at $150 by moving to every three
  weeks, or by leaving the finished basement out." The rate stays intact; the customer gets a
  choice.
- **Grandfather rarely, and with an end date.** "I'll hold your current rate through March" is
  survivable. "You're exempt forever" is a decision you'll resent for years.
- **Let the wrong ones go, politely.** A customer who only ever wanted the cheapest price was
  always going to leave over $12. Thank them, leave the door open, and fill the slot.

## Two things to have in place first

A price increase is much easier when you can answer two questions instantly: *what exactly are
we doing at this property?* and *what does it actually cost us to serve?*

That's the quiet argument for having the scope and the labor minutes written down rather than
carried around in your head. In [BlastoClean](/), the work behind a recurring visit is a room
and task list with real minutes on it, priced from your hourly rate — so when you decide to move
rates, you can see which properties are underwater, re-quote the ones that need re-scoping, and
send the new price as a quote the customer accepts from a link, with the whole scope attached.
And on Pro, the [Money per hour report](/features) names the customers running below your target
hourly rate — which is the list you want in front of you when you decide who moves first,
rather than what you assumed.

Then raise the price. The arithmetic has been on your side the whole time.

---

---
title: "How to price a move-out clean (the job most companies underquote) · BlastoClean"
description: "Move-out and move-in cleans are the easiest job in this trade to lose money on. Here is a scope, a time model and a quoting method that keeps the oven from eating your margin."
url: "https://www.blastoclean.com/blog/how-to-price-a-move-out-clean"
---

# How to price a move-out clean (the job most companies underquote)

September 4, 2026 · 4 min read · The BlastoClean Team

A move-out clean is not a big standard clean. It's a different job with the same name, and
pricing it like a recurring visit with a surcharge is how companies end up sending two cleaners
back for a third afternoon on a house they quoted at $320.

Three things make it different, and all three cost time:

1. **The property is empty.** Everything is visible — inside cabinets, behind the fridge,
   the tops of doors, the floor under where the couch was for nine years.
2. **Nobody has cleaned it recently.** The last four weeks of a move are not a period of
   diligent housekeeping.
3. **Somebody is inspecting it.** A landlord, a property manager or a buyer's agent is going
   to walk that property with a deposit or a closing on the line. "Clean enough" is not the
   standard; *their* standard is.

## Start with a real scope, in writing

Most move-out disputes are scope disputes wearing a pricing costume. Decide — before you
quote — which of these are in and which are extra, and say so on the quote itself:

- Inside all cabinets and drawers, inside closets
- Inside the oven; inside the refrigerator and freezer
- Interior windows, tracks and sills
- Baseboards, door frames, light switches, outlet covers
- Blinds
- Walls (spot-cleaning vs. full wipe-down — these are not the same job)
- Garage floor, patio, balcony
- Appliance exteriors and behind/under the fridge and range
- Wall anchors, nail holes, adhesive hooks and the marks they leave
- Carpet cleaning and any other subcontracted work

The last four lines are where the money is. A garage and a set of blinds can add two hours to
a job that was quoted without them.

## Build the time from the property, not from a hunch

The estimator's method works here better than anywhere: list the rooms, list the tasks you
actually perform in each one, and give every task a realistic number of minutes. For a
move-out, a workable starting point looks something like this — adjust to your own crew:

| Task | Minutes |
| --- | --- |
| Oven interior | 30–45 |
| Refrigerator interior (empty) | 20–30 |
| Kitchen cabinets, inside and out | 45–60 |
| Bathroom, full detail with shower/tub | 45–60 |
| Bedroom with closet, blinds and window | 30–40 |
| Baseboards and door frames, per 1,000 sq ft | 30 |
| Interior windows and tracks, each | 8–12 |

Then multiply for reality. A large kitchen isn't a standard one, and a heavily soiled bathroom
isn't a light one. Multipliers do the arguing for you: size ×0.75 / ×1.00 / ×1.25, condition
×0.90 / ×1.00 / ×1.25 or higher for extreme. A large, heavy kitchen at 60 base minutes is
roughly 94 minutes — which is what it will actually take, and what you should be paid for.

Add travel, supplies and any first-visit surcharge as fixed fees. Then price the total time at
your hourly rate.

## Four rules that protect the margin

- **See it first, or price a range.** A ten-minute video walkthrough is not a luxury on this
  job. If you truly can't see it, quote a range with a written condition assumption and a
  re-quote clause — don't quote a single number into the dark. The
  [free cleaning quote calculator](/free-cleaning-quote-calculator) is that kind of range for
  a house you have not walked: bedrooms, bathrooms, square feet, and move-in/move-out as the
  cleaning type. Copy the link if you want to share it. The price you actually promise still
  comes from a scope. An office or a building belongs on the
  [free commercial cleaning bid calculator](/free-commercial-cleaning-bid-calculator),
  which turns square feet and what you pay per hour into a monthly bid. Its starting
  numbers are examples.
- **Put the exclusions on the quote, not in your head.** Carpet cleaning, walls, exterior
  windows, trash hauling and appliance removal are the usual suspects.
- **Charge for condition, out loud.** "This is priced for standard condition; heavy soil is
  re-quoted on arrival" is a normal sentence that property managers hear all the time.
- **Set an expiry.** A move-out price quoted in March should not be honored in September, on a
  property that has had five months of somebody else's life in it since.

## Where the quote should come from

The work above is arithmetic and record-keeping, which is exactly the sort of thing you should
not be doing at 9pm on a laptop after a full day of cleaning.

In [BlastoClean](/), you build the room and task library once — including a move-out task set
with the oven, the cabinet interiors and the blinds already in it — and each new quote is
ticking boxes while you stand in the property. Size and condition multipliers are on every
room; fees, discount and tax come after; the total updates as you go, so the
figure on your phone and the figure on the customer's copy can never disagree.

The scope you ticked is what prints on the customer's quote — so "was the inside of the fridge
included?" is answered by the document, not by two people's memories. They accept it from a
private link with no account to create. Switch automatic follow-ups on — they're off until you
turn them on and pick the delay — and a customer who hasn't answered gets a nudge after the
number of days you chose, plus a warning before the quote expires, without you remembering to
send either.

Move-outs are good work: they're profitable, they're one-off, and property managers who like
you come back with the next vacancy. They're only unprofitable when they're guessed at.

---

---
title: "Hourly or flat rate? How to decide what your cleaning company charges · BlastoClean"
description: "The honest trade-offs between charging by the hour and quoting a fixed price for cleaning work — and a way to get the safety of one with the sales advantage of the other."
url: "https://www.blastoclean.com/blog/hourly-or-flat-rate-cleaning-pricing"
---

# Hourly or flat rate? How to decide what your cleaning company charges

September 1, 2026 · 5 min read · The BlastoClean Team

Every cleaning company eventually argues with itself about this. Charge by the hour and you
never lose money on a job that runs long — but you spend your week explaining time sheets and
watching customers do mental math while your crew is still in the driveway. Quote a flat price
and the phone call is easy — right up until the "quick" move-out takes six hours and you've
agreed to $240.

Neither model is wrong. They fail in different directions, and the direction they fail in is
what should decide which one you use.

## What hourly actually buys you

Hourly pricing transfers the risk of a bad estimate to the customer. That's its whole value.
If the house is worse than described, you get paid for the extra time. It's the sane default
when:

- **You genuinely can't scope the job.** Post-construction, hoarding situations, first cleans
  on a property nobody has touched in a year.
- **The scope is the customer's to choose.** "Give me three hours and start with the kitchen."
- **You're new.** You don't yet have the data to know how long your crew takes, and hourly is
  how you collect it.

The cost is real, though. Hourly caps your upside: get 20% faster at the work and you earn 20%
less for the same job, which is a strange incentive to sign up for. It invites supervision —
customers who price by the hour tend to watch the clock. And it makes you the cheapest-looking
or most expensive-looking bid on a list, based on a number that says nothing about what gets
done.

## What flat rate actually buys you

A fixed price sells better because it answers the only question the customer has: *what will
this cost me?* It also rewards you for being good at your job — a crew that trims 30 minutes
off a standard clean keeps that 30 minutes.

The catch is that flat rate only works if your estimate is good. A fixed price is a bet, and
you make that bet before you've done the work. Companies lose money on flat rate for one reason
almost every time: they quoted from a phone call instead of from a scope.

## The answer most established companies land on

Price the *work* by the hour internally. Sell it as a fixed number externally.

That's not a trick — it's just estimating. You break the job into rooms, you know roughly how
many minutes each task takes your crew, you multiply the total by your **billable** hourly rate,
and then you present the result as one number with a defined scope attached. The hourly rate
never leaves your office. The customer gets a price and a list of what's included.

That word "billable" is the whole game. The rate you multiply by is not what an hour of your
crew costs you. It is wages plus payroll taxes, supplies, insurance, vehicles, the phone that
rings in your office, and the margin you intend to earn. Price at cost and you've built a
defensible number that quietly pays you nothing. The crew cost the reports use is a different
number. It is wages and payroll only. It does not include insurance or a share of the van.

Doing it this way means:

1. **Your price is defensible.** When a customer asks why the kitchen costs what it does, you
   can talk about oven interiors and cabinet fronts instead of "that's just our rate."
2. **Your margin is visible.** You know the labor hours behind every quote, so you know which
   jobs are actually making money — the flat-rate company that guesses learns this only at
   year end, if ever.
3. **You can still protect yourself.** Define the scope on the quote, and put extra work
   through a change order rather than absorbing it.

## Where each one still wins

| Situation | Charge |
| --- | --- |
| Recurring residential | Flat, per visit |
| Move-outs and deep cleans you've scoped in person | Flat |
| Post-construction, hoarding, unknown condition | Hourly, with a written minimum |
| "Do as much as you can in four hours" | Hourly |
| Commercial contracts | Flat monthly, with change orders for extras |

The one combination to avoid: a flat price quoted sight-unseen on a job you've never done
before. That isn't pricing, it's gambling with your crew's week.

## Make the estimate the easy part

The reason companies fall back on hourly isn't that they prefer it. It's that building a
defensible fixed price by hand takes too long when there are six quotes to write tonight.

That's the part [BlastoClean](/) takes off your hands. You build your room and task library
once — the tasks you actually perform and the minutes each one takes — and every quote after
that is ticking boxes. Size and condition multipliers handle the large kitchen and the heavy
first clean; the total updates as you go, so the number you see is the
number the customer sees. Your hourly rate does the arithmetic in the background and never
appears on the quote.

And when the job *is* recurring and priced per visit, you can put up to four frequency options
on the same quote — one-time, weekly, every two weeks, monthly, each at its own per-visit price
— and let the customer pick the one they want when they accept. A fixed price, priced like an
estimator, sold like a menu. (Janitorial contracts work the other way round, as they should:
a commercial quote prices the whole mixed scope as a monthly amount, with each task line
carrying its own frequency — every visit, weekly, monthly, quarterly.)

If all you have so far is the size of the house, the
[free cleaning quote calculator](/free-cleaning-quote-calculator) will sketch a
low-to-high range in the browser. It is a starting point. The price you promise
a customer still comes from the hours underneath, which is the rest of this page.

An office or a building is priced by the month. The
[free commercial cleaning bid calculator](/free-commercial-cleaning-bid-calculator)
turns square feet, how often you come, and what you pay per hour into that
monthly bid. The numbers it starts with are examples, and it is one speed for
the whole building.

Charge whichever way fits the job. Just make sure you know the hours underneath it either way.

---

---
title: "The reply that went to one phone · BlastoClean"
description: "Your software has always written the outbound half of every customer conversation. The half that comes back went to whoever pressed send — and that is why the record reads as silence that never happened."
url: "https://www.blastoclean.com/blog/the-reply-that-went-to-one-phone"
---

# The reply that went to one phone

August 22, 2026 · 5 min read · The BlastoClean Team

A customer gets a quote on a Tuesday afternoon. She reads it on her phone in a
supermarket car park, and she replies to it — because that is what people do
with an email they have questions about.

*This looks good. Could you do the garage as well, and can you start the week
of the 8th?*

That reply goes to one place: the mailbox of the estimator who sent the quote.
He is on a job. He sees it at seven that evening, means to answer it properly
rather than from a phone with one bar, and does not. On Thursday the office
calls her about something unrelated and does not mention the garage, because
nobody in the office knows a garage was ever mentioned. On the following
Monday she books somebody else — not because the price was wrong, but because
she asked a question eight days ago and nobody answered it.

Look at what her file says in the software. Quote sent. Quote viewed. Quote
expired. Three rows, all of them true, describing a customer who went quiet.

She did not go quiet. She answered within the hour.

## Every system writes the outbound half

This is not a failure of anybody's diligence, and it is worth being precise
about why, because "we should be better about forwarding things" is the fix
that never works.

Field software is built to send. It sends the quote, the reminder, the
receipt, the portal link — and it files every one of them, so the customer's
history looks complete. What it has almost never done is own the return path.
The `Reply-To` on all of that mail names a person, because naming a person is
the friendly thing to do, and from that moment the conversation belongs to one
mailbox that only one employee can see.

So the record is half a conversation. Four messages out, no answer to any of
them, and a manager reading that page months later draws the only conclusion
available: this customer stopped responding. The software is not lying. It is
faithfully reporting everything it was in a position to know.

## The fixes that do not work

**"Everyone CCs the office."** Forwarding is a habit, and habits fail exactly
when they matter most — the week you are short two cleaners and quoting in the
evenings. A process that needs somebody to remember it on their worst day is
not a process.

**"A shared mailbox for everything."** Now the reply is visible, and it is
detached from the customer, the quote and the job it is about. You have moved
the problem from one person's phone into a pile nobody owns, sorted newest
first, with the oldest unanswered thing at the bottom where nobody looks.

**"Match replies by the sender's address."** Tempting, and it breaks quietly.
One person can be a customer of two cleaning companies. People reply from a
different address than the one you wrote to — from their phone, from work,
from a spouse's account — and a system matching on the `From:` header files
that reply nowhere, or worse, against the wrong company entirely.

## Make the reply address name the conversation

The version that holds up is unglamorous: the address a customer replies to
should not name a person. It should name **the conversation**, and it should
be signed so that only your system could have issued it.

That buys three things worth having.

**It is unambiguous.** The address itself says which company, which customer
and which thread — so the same person writing to two of their suppliers is
never a puzzle.

**It cannot be forged.** The `From:` header is decoration anybody can write.
The signature on the address is the part that decides where a message is
allowed to file.

**It never expires.** Nothing is stored, so there is no token to rotate and
nothing to clean up. A customer answering an email from fourteen months ago
still lands in the right thread — which is exactly the case a stored, rotated
token would break, and exactly the customer you most want to hear from.

## Nothing should be taken away to do it

Here is the part that decides whether a change like this is adopted or quietly
resented: the estimator who sent the quote still gets her reply in his own
mailbox, the way he always has.

That matters more than it sounds. A system that improves visibility by taking
something away from the person doing the work will be routed around within a
month. The office gains the conversation; nobody loses one.

## And it is not only email

Texts belong in the same place. A customer who answers a reminder by text, a
number nobody recognizes asking whether you do move-out cleans, an emailed
question about an invoice — those are one conversation with one person, and
splitting them across an inbox, a phone and a filing cabinet is how a company
ends up sending the same reminder twice from two people who each knew a
different half.

One thread per customer. Both directions, both channels, in the order things
actually happened.

## What we deliberately did not automate

No auto-replies. No automatic rescheduling because a message looked like a
reschedule. A person reads what a customer said and a person answers it —
software can sort the pile and draft a sentence, but the reply is yours.

Consent still governs texts, quiet hours are still quiet hours, and a message
you type is filed in the same record as everything the system sends itself, so
it shows up on the customer, in the delivery log and in your export. Not in a
second place somebody has to remember to check.

## The honest test of a system

Not "how much can it send?" Everything sends.

The test is: **when a customer answers, can anybody except the sender see it?**
If the answer is no, your customer history has a hole in it precisely where
the relationship is — and every silence in that record is a story you are
telling yourself about a customer who was, in fact, talking to you.

The customer inbox is part of every paid plan. See
[what else is in there](/features).

---

---
title: "The complaint nobody answered · BlastoClean"
description: "Commercial clients rarely leave in a row. They leave after three emails that went to an inbox — and the fix is a visible log with a clock on it."
url: "https://www.blastoclean.com/blog/the-complaint-nobody-answered"
---

# The complaint nobody answered

August 14, 2026 · 4 min read · The BlastoClean Team

Here is how a janitorial company loses a ten-site account.

On a Friday in March, a facilities manager emails: *the third floor bins
weren't done again*. It lands in a shared inbox at 6pm. Somebody sees it on
Monday, means to reply, and doesn't. In May she mentions it once more, in a
sentence at the end of an email mostly about parking. In August the contract
goes out to tender, and the first anyone in the office hears about a problem
is a polite note saying they've decided to go another way.

Nobody ignored her. That is the part worth sitting with. Every person in that
company would have fixed the bins in an afternoon if they had known it
mattered. The email went to an inbox, and inboxes are where accountability
goes to die.

## Why complaints are different from every other message

A complaint has a property no other email has: **the client is already
unhappy, and is measuring you on what happens next.**

That means the clock starts the moment they hit send, and it is running
against a number they have in their head and you do not. Every hour that
passes is evidence for a conclusion they are already half-forming — that this
company does not really care about our building.

An inbox cannot help you with that, because an inbox has no state. It cannot
tell you what is unanswered. It cannot tell you what has been sitting longest.
It cannot tell you that the same complaint has now come in twice. It is a pile
in reverse chronological order, and the oldest, most dangerous item in it is
always at the bottom.

## Acknowledgment is not resolution, and it is the one that matters

The instinct is to promise to *fix* things quickly. That is the wrong promise,
because it is one you frequently cannot keep — some fixes genuinely wait for
the next visit — and because it is not the one the client actually wants.

Consider two versions of the same bins complaint.

**Version one.** Reply within the hour: *Thanks — I've got this. The crew is
there Tuesday and I've asked the supervisor to check the third floor
personally and report back.* Fixed on Tuesday, three days later.

**Version two.** No reply. Fixed on Tuesday, three days later.

Identical outcome. Completely different relationship. In the first the client
learns their problem reaches a person who takes it seriously; in the second
they learn nothing and assume the worst, and they are *right* to, because
silence is the only evidence they were given.

So the number to promise, publish and measure yourself on is **time to
acknowledge**. It is the one that is always in your control, and it is the one
that carries the meaning.

## What a log does that an inbox cannot

Give the client somewhere to raise it that is not email, and give it three
properties:

**It has state.** Open, acknowledged, resolved. Which means it can be sorted
by "unanswered, oldest first" — the exact opposite of an inbox, and the
ordering that makes it impossible to accidentally leave something for three
days.

**It records when you answered, not just that you did.** The gap between
raised and acknowledged is a number, and a number you can show. *Acknowledged
in 2 hours* is a sentence a facilities manager will renew on.

**The client can see it.** This is the part that feels risky and is not. A
client looking at a log of five things they raised — all acknowledged the same
day, four resolved, one in progress with a note — is a client who has just
been shown, in their own words, that this company is on top of their building.
You will never make that argument as well as their own complaint history makes
it for you.

## Two details that decide whether it works

**Only the client creates entries.** The moment your office can file a request
on a client's behalf, your response-time figures are decoration. Somebody
means well, back-dates a complaint they handled on the phone, and the number
stops describing anything. Let the office acknowledge and resolve. That is the
whole job.

**Freeze the promise at the time it was made.** If you say two hours today and
change it to twenty-four next year, last year's answers should not
retroactively become excellent. Whatever target was in force when the client
raised the issue is the one that entry is judged against, permanently.

## The unglamorous truth

There is no clever feature here. The whole mechanism is: a place to put it, a
state so it cannot be lost, a timestamp so the answer is measurable, and
visibility so the client can see the pattern.

What it buys is the difference between a client who thinks *they always sort
it out* and one who thinks *nothing ever happens* — about a company that, in
both cases, fixed the bins on Tuesday.

---

---
title: "The contract that quietly went underwater · BlastoClean"
description: "A janitorial contract signed two years ago is still invoicing the same figure every month. That is exactly why nobody notices when it stops paying."
url: "https://www.blastoclean.com/blog/the-contract-that-quietly-went-underwater"
---

# The contract that quietly went underwater

August 14, 2026 · 5 min read · The BlastoClean Team

Ask a janitorial owner which of their contracts is the worst one and you will
usually get a fast, confident answer. Ask them to prove it and the room goes
quiet.

That is not carelessness. It is the shape of the business. A commercial
contract is signed once and then runs for years, and nothing about it looks
like it is changing: the same invoice goes out on the first of the month, and
it gets paid. Every visible signal says the account is fine.

What changes is the **time**.

## How a good contract goes bad without a single event

A building bid at three hours a night is bid honestly. Then:

- The tenant on the second floor fits out an open-plan area and adds forty
  desks.
- The client asks, reasonably, if the crew can start doing the stairwells.
- One of your two people leaves and the replacement is slower for six months.
- Somebody starts pulling the recycling separately because the client asked
  nicely one Tuesday.

None of those is a renegotiation. Not one of them generates an email anybody
would keep. But four hours a night at $30 an hour of crew pay is $600 a month
more than three hours was, and if the invoice never moved, that $600 came out
of your margin.

The contract did not fail. It **drifted**, and drift has no event to notice.

## Why your P&L will not tell you

A profit and loss statement answers "did the company make money". It is the
wrong grain for this question in two directions at once.

**It rolls sites together.** A property manager with ten buildings is one
customer, one contract and one invoice. Eight of those buildings can be
comfortably profitable while two bleed, and the account as a whole still looks
healthy. The two that bleed are the two you would have re-bid at renewal, if
you had known.

**It rolls months together.** The month the second floor got fitted out is the
month everything changed, and a yearly figure has no way to show you which
month that was.

You need the same money, cut by **site and month**. That is the only grain at
which "this used to work and now it doesn't" is visible.

## The three numbers

**Revenue.** The agreed price of the visits actually done. Billed, not
collected — this is a question about whether the *work* pays. A client who is
slow to pay is a real problem with a different report.

**Labor cost.** Hours actually worked, times what an hour actually costs you.
Both halves of that sentence matter.

*Actually worked*, because the whole point is the gap between what you bid and
what it takes. If your crews clock in and out, you already have this. If they
don't, this is the reason to start.

*Hours* also means every pair of hands. A four-hour evening with two cleaners
on it is eight hours of payroll, and a building that got a second cleaner
somewhere along the way is the most common version of this whole story — the
visit still looks like the same four-hour visit on the schedule. Count the
crew, or the report will tell you the second cleaner works for free.

*Actually costs you*, when Team pay is set up, is each person's pay for that
visit, at the rate in effect on the visit date. For a W-2 worker, add the
extra payroll cost on those wages. Do not add it for a 1099 worker. Your own
time counts only if Count my time as a cost is on. Unpaid time is left out.
The price side is the visit price with tax taken out. That cost is wages and
payroll only. It does not include insurance, or a share of the van, the
vacuum, or the chemicals. There is no overhead figure in it.

If Team pay is not set up, use one hourly crew cost for the whole company.
The Free plan has no Team pay. On Free, that hourly number is the crew cost.
Profit by place, the report that cuts this by building and by month, stays on
the Business plan. A crew member with no pay set for that visit uses the same hourly
number. Next to it, the app can suggest a figure from Team pay, labeled
Use $X from Team pay. That figure is the average pay of hourly and salaried
people, weighted by the hours they work, with the W-2 payroll extra added.
It is wages and payroll only.

An owner who costs jobs at the hourly wage alone concludes that every
contract in the book is profitable, because at the wage alone almost every
contract is. That is not optimism. It is the wrong arithmetic, and it is the
single most common way a cleaning company grows itself into trouble.

**Margin.** The difference. Negative rows are the list.

## What honest reporting refuses to do

Two refusals are worth more than the report.

**If Team pay is not set up and the hourly crew cost is blank, the report
should not invent a number.** The same is true for a person with no pay set
when that hourly number is also blank. Revenue and hours are still worth
seeing. A margin computed against a number nobody stands behind is worse than
no margin, because you will act on it.

**A visit nobody timed should not be costed from its schedule.** If a visit
was booked for three hours and nobody recorded what it took, the honest answer
is that it is uncosted. Treating the booked duration as the actual one assumes
the very thing you are trying to measure — and it would report a healthy
margin on precisely the visits that are running long.

Which is why any report like this has to tell you how much of the month it
actually covered. "Nine of twelve visits costed" is a usable answer. A margin
with no idea behind it is not.

## What you do with it

Nothing dramatic, and that is the point. You look at it once a month, and
three or four times a year it tells you something:

- A site went from 34% margin to 11% over five months. Go and see why.
- A site has been negative since March. It is either re-bid at renewal or it
  is a decision you are now making deliberately instead of by accident.
- A site is at 48%. Do not touch it, and find out what is different about it.

The contract you re-bid at renewal because you had the numbers is worth more
than the one you kept because nobody looked. Underbid contracts do not blow
up. They bleed, quietly, for years — and the only thing that finds them is
looking at the right grain, on purpose, on a schedule.

Before you have a month of visits costed in the app, the
[free cleaning business profit calculator](/free-cleaning-business-profit-calculator)
lets you sketch profit on a single job from the price, pay, supplies, and the
drive. It runs in the browser and needs no account. Profit by place still needs
time recorded on completed visits.

---

---
title: "How to bid a commercial cleaning contract · BlastoClean"
description: "Commercial bids are won on a spec sheet, not a walkthrough price: a frequency on every task, visits per week, and a monthly number a facilities manager can defend to their boss."
url: "https://www.blastoclean.com/blog/how-to-bid-a-commercial-cleaning-contract"
---

# How to bid a commercial cleaning contract

August 13, 2026 · 5 min read · The BlastoClean Team

The first commercial bid is where a lot of good residential companies get hurt. They walk
the office suite the way they'd walk a four-bedroom house, add up the rooms, quote a
per-visit price — and then discover that the building manager wanted trash pulled nightly,
carpets vacuumed weekly, high dusting done monthly, and the floors stripped and waxed once
a quarter.

None of those fit in a per-visit price, because **there is no such thing as "a visit"** on a
janitorial contract. Monday night and the last Friday of the quarter are different jobs at
the same address.

## Why the residential method breaks

Residential pricing rests on a quiet assumption: every visit is roughly the same visit. The
same rooms, the same tasks, the same time. That assumption is what lets you say "$220 per
clean" and have it mean something.

A commercial contract is built on the opposite assumption. The scope *varies by design*:

- Some tasks happen **every visit** — trash, restrooms, touch-point wiping.
- Some happen **weekly** or **every two weeks** — vacuuming open areas, mopping hard floors.
- Some happen **monthly** — high dusting, interior glass.
- Some happen **quarterly** — strip and wax, carpet extraction, the jobs that close a wing.

Quote that as one visit price and you either overcharge the quiet nights (and lose the bid)
or eat the quarterly work for free (and lose the margin). Most first-timers manage both at
once.

## The spec-sheet method

The fix is the same move that fixes residential estimating — break the job into pieces small
enough to be honest about — with one extra dimension: **every task gets a frequency**, and
the price is a **month**, not a visit.

**1. List the areas.** Offices, conference rooms, restrooms, break room, lobby, the server
room they'd rather you didn't touch. Walk the space and write them down, exactly as you
would rooms in a house.

**2. Give every task a time *and* a frequency.** "Empty trash and reline bins, 20 minutes,
every visit." "Vacuum the open floor, 45 minutes, weekly." "Machine-scrub restroom
floors, 60 minutes, monthly." The frequency is scope. Writing it down is what makes your
bid comparable to the incumbent's — and defensible when the client asks why yours is higher.

**3. Choose visits per week.** Five nights? Three? This is the lever both sides can feel:
a client who balks at the number can drop from five nights to three and *see* what it saves,
instead of hearing "I can sharpen my pencil."

**4. Price the month.** Multiply each task out — an every-visit task times the visits in a
month, a weekly task times its weeks, a quarterly task at a third of its cost per month —
sum it, apply your hourly rate, and you have the number commercial clients actually budget
with: **a monthly amount**. Facilities budgets are monthly. Bids that speak the budget's
language read as professional before anyone checks the math.

## The spec sheet is the sales document

Here's the part that wins contracts: present the scope **grouped by frequency**. One block
for what happens every visit, one for weekly, one for monthly, one for quarterly.

A facilities manager comparing three bids can't see the work — the building is cleaned when
nobody's watching. What they *can* see is the paper. A bare monthly number invites exactly
one comparison: is it bigger or smaller than the other bids? A spec sheet invites the
comparison you want: *this bid includes quarterly strip and wax and the other two don't
mention floors at all.* The documented scope at a higher price beats the mystery number more
often than you'd think — and when it doesn't, you've lost a client who was always going to
churn on price.

The spec sheet keeps earning after the signature, too. Three months in, when somebody asks
why the conference-room glass wasn't done this week, the answer is a line on a document both
sides agreed to: interior glass is monthly, and it was done on the 4th.

If you want a monthly number from one area before you write the spec sheet, the
[free commercial cleaning bid calculator](/free-commercial-cleaning-bid-calculator)
does that math in the browser. It divides square feet by how many square feet
you clean in an hour, multiplies by what you pay per hour, adds an optional
supplies and overhead percent, applies your profit margin, and turns visits
per week or per month into a monthly bid.
It is one speed for the whole building, not a task list. The numbers it starts
with are examples. Change them. It is free and it does not ask you to sign up.

## Where the software comes in

You can build all of this in a spreadsheet — one tab for the scope, one for the math, one
for the version you actually sent. Plenty of companies do, and the spreadsheet works right
up until the second contract, when it becomes two spreadsheets.

In [BlastoClean](/features), you set what work your company does — residential, commercial,
or both — in Settings. A business quote can start from a common job: Office, Medical
office, Shop, or Move-out. You can change any of it. Commercial quotes also carry the
whole method: every task
takes a frequency, you choose visits per week, and the month's price comes from your own
task list and hourly rate — the same prices as a house clean, so nothing is guessed. The customer-facing quote comes out as a proper spec sheet
grouped by frequency, contract terms print right on it, and when the contract is booked,
every work order lists the every-visit work as tonight's checklist and tags the periodic
tasks with their frequency — so the quarterly floor work gets planned into the week
instead of ambushing a Tuesday.

And if you'd rather not type the scope at all: Magic Quote handles bid walkthroughs the
same way it handles houses. Walk the suite with the facilities manager, saying what happens
nightly and what happens quarterly as you go, and the draft comes back with the frequencies
attached — priced by your library, ready to review.

## Bid the month

The habit to build is a small one: stop asking "what does a visit cost here?" and start
asking "what does a month of this building look like?" Every task, a time and a frequency.
Visits per week as the dial. One monthly number, backed by a spec sheet that shows exactly
what it buys.

That's the whole method. The building manager gets a document they can defend to their
boss, and you get a contract where the quiet nights and the quarterly floors are both,
finally, in the price.

---

---
title: "Net 30 doesn't have to mean never · BlastoClean"
description: "Commercial clients pay on terms — Net 30, PO numbers, one invoice a month. How to bill like a vendor and watch your receivables age, without building the spreadsheet that watches them."
url: "https://www.blastoclean.com/blog/net-30-doesnt-have-to-mean-never"
---

# Net 30 doesn't have to mean never

August 12, 2026 · 4 min read · The BlastoClean Team

Residential cleaning has a beautiful property most owners don't appreciate until they lose
it: **the money arrives when the work does.** Card on file, charge on completion, done. The
gap between "we cleaned it" and "we got paid" is measured in minutes.

Then you win your first office contract, and the accounts-payable department explains how
the grown-ups do it: invoice us monthly, put the PO number on it, and we pay on Net 30
terms. Which means the work you do on the 1st of March is money you see — if everything
goes perfectly — at the end of April.

That's not a scam. It's how nearly every business pays nearly every vendor, and if you want
commercial contracts, you're a vendor now. The trick is billing like one *on purpose*,
instead of discovering each rule the first time it costs you a payment cycle.

## The four things commercial billing actually requires

**1. Payment terms on the customer, not in your head.** Net 30 — or Net 15, or whatever you
negotiated — belongs on the customer's record, so every invoice they get carries a real due
date. An invoice without a due date isn't late in anyone's system, ever. It's just...
pending. Forever, if you let it.

**2. The PO number, every time.** Many companies won't route an invoice for approval
without a purchase-order number on it — and "won't route" doesn't generate an error
message. The invoice simply sits in a queue nobody owns until you call to ask, three weeks
into your thirty days. Store the PO with the customer and print it on everything.

**3. One invoice a month, not twenty.** If you clean an office five nights a week and send
an invoice per visit, their AP department gets about twenty-two invoices a month —
twenty-two approvals, twenty-two chances for one to be missed, and one annoyed AP clerk who
now associates your company name with paperwork. **Consolidated monthly invoicing** — one
invoice covering the month's completed visits — is what they expect, and it's also better
for you: one document to track instead of twenty-two.

**4. Eyes on the aging.** With per-visit card billing, a payment problem announces itself
the day it happens. On terms, a payment problem is *silent*. Nothing failed; nothing
bounced; there's just an invoice out there getting older. Which is why every business that
extends credit runs the same report: **A/R aging** — everything owed, grouped by how
overdue it is. Current. 1–30 days past due. 31–60. 61–90. Beyond that, a bucket you never
want populated.

## The 60-day debt didn't hide — nobody looked

Here's the uncomfortable mechanics of how a receivable goes bad. It's rarely a dramatic
client. It's a March invoice that missed the PO field, so it never entered their approval
queue. April's invoice went through fine, so the account *looks* active and healthy. You're
busy cleaning buildings. By the time the March invoice surfaces, you're asking someone to
pay for work from a quarter ago — and the person who ordered it may not even work there
anymore. Every week a debt ages, it gets genuinely harder to collect: memories fade,
budgets close, contacts move on.

An aging report makes that story impossible, because the March invoice can't blend in. It
sits in the 31–60 column, then crosses past 60 days, and the report shoves it at you every
time you open it. The follow-up email you send at 35 days past due is friendly and
routine. The one you'd have sent at 95 days is neither.

The traditional home for this report is a spreadsheet — invoices down the side, ages across
the top, rebuilt by hand every month by whoever lost the coin toss. It works, in the way
manual things work: right up until the month nobody rebuilds it, which is exactly the month
something ages past 60.

## What this looks like without the spreadsheet

In [BlastoClean](/features), the vendor machinery lives where it belongs — on the records
you already keep:

- **Terms and PO on the customer.** Set payment terms (Net 30, or whatever you agreed) and
  a PO number on the customer's record, and every invoice gets a due date and carries the
  PO.
- **Consolidated monthly invoicing, per customer.** Flip a customer to monthly invoicing
  and the month's completed visits land on one invoice instead of one each. Your
  residential customers keep their per-visit billing; nothing about one changes the other.
- **Aging built into the Money owed report, not a project.** What's owed, aged into
  0–7, 8–30, 31–60 and over-60 days — from the invoice's due date for customers on terms
  — always current, never waiting for somebody to rebuild it. The 60-day debt isn't
  hiding at the bottom of an inbox; it's a line in a column you check.

None of this replaces judgment — you still decide who gets terms at all, and when a slow
payer stops being worth the float. What it replaces is the memory work: the due dates, the
PO fields, the monthly rebuild, the noticing.

## Terms are the price of admission — collection is optional

Commercial contracts are worth the wait: predictable monthly revenue, long agreements, work
that doesn't churn every season. Net 30 is simply the toll at the gate.

But there's a difference between *extending credit* and *losing track of money*, and the
whole difference is a system: terms on the record, POs on the invoice, one clean bill a
month, and an aging report someone actually opens. Do that, and Net 30 means day 30 —
not "whenever we notice."

---

---
title: "The empty-building problem · BlastoClean"
description: "Janitorial work happens when nobody is watching — which means trust is the product. GPS clock-in, missed-clean alerts and actual-vs-estimated hours, and why proof of service wins renewals."
url: "https://www.blastoclean.com/blog/the-empty-building-problem"
---

# The empty-building problem

August 11, 2026 · 4 min read · The BlastoClean Team

A house cleaner works in front of the customer, or at least in front of the customer's
doorbell camera. The work is seen, the results are inspected the same evening, and if the
crew never showed, somebody knows by dinner.

Janitorial work runs on the opposite arrangement. The crew arrives after the last employee
leaves and is gone before the first one returns. The client never sees the work happen —
they see a building at 8am and make an inference. Which produces the defining anxiety of
every commercial cleaning relationship, on both sides:

**Nobody was there. So how does anyone know what happened?**

## Trust is the actual product

When a facilities manager takes a janitorial contract to their boss for renewal, they're
not defending the vacuuming. They're defending a claim: *this vendor does what we pay for,
unsupervised, in our building, at night.* Every doubt chips at that claim. The Monday the
trash was still full — was that a skipped visit, or one distracted cleaner? The invoice
says twenty-two visits — were there twenty-two?

Most cleaning companies answer with reassurance: "our crews are reliable, call me anytime."
That works right up until the first incident, at which point reassurance and a full trash
can are exactly the same evidence — none. The companies that keep contracts through an
incident answer differently: with a record.

## What a record actually looks like

The pieces are simple, and none of them require trusting anyone's memory:

**Clock in, clock out, on the visit itself.** The cleaner opens the visit on their phone
and clocks in on arrival, out at departure. The office sees the times — not "the crew
usually starts around six" but *arrived 6:04pm, left 8:47pm*, on this visit, at this
address.

**With location when available.** A clock punch can include the phone's GPS position
and distance from a property with saved coordinates. Permission, signal or missing
coordinates can leave that distance unavailable. Punch times are records to review,
not a guarantee that someone was on site.

**An alarm on the silence.** The worst failure mode isn't a short visit — it's the visit
that never starts. A cleaner is sick, a van breaks down, a night gets confused between two
crews, and nobody at the office knows until the client calls in the morning. A
**missed-clean alert**, when configured, inverts that: if nobody has clocked in within a set number of
minutes of the visit's start, the owner hears about it *that evening*. You get to be the
one who calls first — with a fix in motion — which is, for the client, nearly as reassuring
as the visit itself.

**Actual hours, not vibes.** Clock-out records what the visit really took, which feeds the
estimated-vs-actual comparison. Bid a building at 2.5 hours a night and it's actually
running 3.5? You find that out in the first weeks — while you can adjust routes, staffing
or, at renewal, the price — instead of at the end of the year when the margin has already
quietly gone.

## The renewal conversation, transformed

Put those together and the annual renewal stops being a vibes negotiation. One side of the
table has recorded punch times, available location readings to review, a
handful of missed-clean alerts that were caught and fixed the same night, and hours-per-visit
that match what was bid. The other side of the table — your competitor, bidding to displace
you — has a lower number and a promise.

Facilities managers renew the vendor that makes *their* job easy. A record does exactly
that: when their boss asks how they know the night crew shows up, the answer is a report,
not a feeling. You're no longer the line item that's hard to verify; you're the one vendor
they never have to wonder about.

And inside your own company, the same record ends the other argument — the one between the
office and the crew about who was where and when. The answer stops being a matter of who
remembers louder.

## How BlastoClean does it

In [BlastoClean](/features), proof of service is part of the visit rather than a separate
system. Cleaners record clock-in and clock-out times in the app. GPS position and
distance are available when the phone and property supply coordinates; a missing fix
does not block a punch. Configured missed-clean alerts notify the owner when nobody
has clocked in after the chosen threshold. A company's optional clock-in completion
rule checks for a punch, not physical presence. Clock-out
fills in the visit's actual minutes, which flow straight into the estimated-vs-actual
report — the same one that sharpens your future bids. Alongside the before-and-after photos
that visits already carry, the empty building stops being empty of evidence.

None of it adds a step for the client, and it barely adds one for the crew — two taps at
the door they were already walking through.

## The building is empty. The record isn't.

Commercial cleaning will always be bought on trust — the work happens at night, and no
report changes that. What a record changes is what the trust rests on. "Trust us" is what
every vendor says. *"Here's every visit, the recorded punch times and available location
readings"* is what the one that keeps the contract says.

---

---
title: "The reports you were building by hand · BlastoClean"
description: "Money owed, money per hour, crew numbers, profit by place and more — the Reports section turns questions you used to answer with a spreadsheet into a click."
url: "https://www.blastoclean.com/blog/the-reports-you-were-building-by-hand"
---

# The reports you were building by hand

August 11, 2026 · 3 min read · The BlastoClean Team

Every cleaning company owner asks the same handful of questions eventually. Which
customers are actually worth keeping at what I'm charging them? Who hasn't booked in
months? Is my quote volume turning into more yeses, or just more quotes? What's still
owed to me, and by whom?

A schedule can't answer any of that. Neither can a dashboard built for "what's
happening today." Those questions live in a spreadsheet — one somebody rebuilds every
month, pulling numbers out of whatever system holds them and hoping the export still
matches the columns from last time.

**BlastoClean now has a Reports section**, and it exists to retire that spreadsheet.

## Reports for the questions you ask

Reports sits next to your dashboard, and it's built around the specific questions
owners actually ask — not one generic export:

- **Payment ledger** — your own company’s recorded charges and refunds, with
  customer, reference, method and status.
- **Money received** — charges, refunds and net receipts by date and method, with
  tips and customer-paid fees shown separately.
- **Cancellation and fee ledger** — cancellation notice, reasons, and assessed or
  collected fees.
- **Quality and response** — inspection scores, action follow-up, complaint
  acknowledgment and completed or skipped checklist tasks.
- **Cancellations and slot recovery** — canceled slots, notification attempts,
  replacement hours and time to fill; moving an existing visit is not new revenue.
- **My week** — your own visits and pay for the selected week.
- **Money owed** — every open invoice by customer, with its status and how long it's
  been waiting.
- **Money per hour** — billed and collected revenue against your target hourly rate,
  with anyone running below it flagged automatically.
- **Quotes to jobs** — sent, accepted and declined counts week by week, so you can
  see whether conversion is actually improving.
- **Crew** — completed visits, hours, revenue and no-shows per team member.
- **Inquiries** — how many leads came in from your website form, and how many turned
  into customers.
- **Who stays** — a rolling 90-day view of customers who haven't rebooked, their last
  visit and what they used to spend.
- **How full you are** — booked minutes against available minutes, per person, one to
  twelve weeks out, so you spot an overbooked week before a customer does.
- **Profit by place** — which standing contracts still make money, one building at a
  time (on the web app for now).

Every one of them opens to a chart or a table, not a wall of numbers you have to
squint at.

**Free** includes the basic ledger of your own company’s payments. **Every paid
plan, Starter included,** adds **Money received**, the basic **Cancellation and fee
ledger**, the dashboard, **Money owed**, and **My week** for permitted office users.
**Pro** adds **Quality and response**, **Cancellations and slot recovery**,
**Money per hour**, **Quotes to jobs**, **Crew** and **Inquiries**. **Business** adds
cross-location **Quality and response**, **Who stays**, **How full you are** and
**Profit by place**.

The new report views are on the website; see the
[report guide](/docs/the-dashboard-and-reports) for platform availability.

## Built to leave the app when you need it to

Every report your plan includes exports to **CSV and Excel**, including the Free
payment ledger. On **Pro and Business**, **Zapier, Make, API keys and OAuth apps**
can read supported published reporting endpoints within the authorized plan and
location. **My week, Job profit, contractor summaries and Profit by place are not
exposed through these integrations.** See the [report guide](/docs/the-dashboard-and-reports)
for the available reports and their plan requirements.

Two more details worth knowing: on the Business plan, a single toggle switches a
report between one location and every location you have access to. And reports aren't
just for owners — permitted office users get a personal **My week** view of their own
visits and pay. Crew use their assigned-work tools instead of Reports.

## Numbers you can actually act on

None of this changes how a quote gets priced or a visit gets scheduled — the reports
just answer the questions those processes were always generating data for. [See the
full feature tour](/features), or start a free trial and open Reports from your own
dashboard.

The spreadsheet had a good run. It's allowed to retire.

---

---
title: "Take the payment at the door: the BlastoClean mobile app · BlastoClean"
description: "The job is done, the customer is standing right there — that is the moment to get paid. The new iOS and Android companion app turns the phone into the schedule, the checklist and the card terminal."
url: "https://www.blastoclean.com/blog/take-the-payment-at-the-door"
---

# Take the payment at the door: the BlastoClean mobile app

August 9, 2026 · 3 min read · The BlastoClean Team

Here's the most expensive moment in a cleaning company's week: the job is finished, the
customer is standing in their doorway saying thank you, and the money part goes… "we'll
send you something." An invoice that night, maybe. A payment link tomorrow. A check that
arrives whenever it arrives.

The best moment to get paid is the one where the work is freshest and the customer is
right there. That's what the BlastoClean companion app for iPhone and Android is for.
Available controls depend on the installed build, your permissions and provider setup;
see [native availability and requirements](/docs/the-mobile-app).

## The schedule, in the pocket it belongs in

The app signs into the same BlastoClean account as the browser. Office accounts open on
Home, and Crew open My jobs. On paid plans, permitted office users can open Schedule
and see payment status on each visit; Crew do not get the office money controls.

Open a visit and everything the doorstep needs is there: the work checklist built from the
tasks the customer actually accepted, the buttons to confirm, complete or cancel, and the
money panel where your role and plan allow it. Face ID, Touch ID or a fingerprint keeps the whole thing locked to the person
holding it.

## Three ways to take the money

**Tap to Pay on iPhone.** With a Stripe account connected, the phone *is* the terminal — Tap to Pay
on iPhone, and contactless payments on supported NFC Android devices. No card reader to buy, charge or forget in the other van. The
amount comes from the visit price, the phone collects the card, and the payment record follows Stripe's
answer, even if the phone dies mid-tap.

**The hosted checkout page.** No tap? Open Stripe's hosted Checkout card page right on
the phone — the same page a payment link opens, just with the customer standing there.
The card number goes straight from that page to Stripe. It never touches the app, and
it never touches us. And for customers who'd rather not pay at the door at all, the
card on file or an emailed payment link does the job from the same visit screen.

**Cash and checks.** Recorded with your confirmation, against the visit, in whatever payment methods
your company has defined — and refundable later if it comes to that. This works with no
Stripe account linked at all, on every plan. On Free, record payments on an accepted
quote or a booked job.

However the money arrives — tapped, typed, or handed over folded in half — it lands in the
same payment record, the visit's payment badge updates, and the customer gets a PDF
receipt with your logo on it when customer receipt emails are enabled.

## What it deliberately doesn't do

The phone uses the visit's own price; the payment record follows the provider's result.
If a connection or battery failure leaves the result uncertain, check the record before
trying again. Quotes come along too:
walk the rooms with the customer, tick the tasks, and send the quote before you leave the
property — the same room-by-room pricing the browser does, alongside the
[schedule, the checklists, the dashboard and the money](/features).

Card processing is part of every plan. Free uses a payment link for a booked job;
in-person card payment controls start on paid plans, with your own Stripe account linked through
Stripe Connect — a couple of clicks, no API keys to paste — and no platform fee:
BlastoClean adds nothing on top of Stripe's own processing fees. [The pricing
page](/pricing) has the details. Recording cash and checks works on every plan too,
from day one of the trial.

The van already has a phone in it. Now it has the schedule, the checklist and the card
terminal too.

---

---
title: "Late cancellations, handled with a card on file · BlastoClean"
description: "A last-minute cancel costs you the slot. Here is a fair way to put a late-cancellation fee in place before it happens, separate from no-shows."
url: "https://www.blastoclean.com/blog/the-no-show-problem-solved-with-the-card-on-file"
---

# Late cancellations, handled with a card on file

August 7, 2026 · 3 min read · The BlastoClean Team

A 9am slot canceled at 8:45 costs you almost exactly the same as a 9am slot nobody shows up
for. Either way, a cleaner is dressed, in the car or already on the porch, and the morning
that could have gone to a different customer is gone. The cancellation isn't really the
problem — the problem is that it's free for the customer and expensive for you, and nothing
about that is visible until it's already happened.

## Why "just have a policy" doesn't fully work

Most cleaning companies do have a cancellation policy — it's usually a line near the bottom
of a quote or a contract that says something like "24 hours' notice required." The trouble is
that a policy nobody has to act on isn't really a policy, it's a suggestion. Enforcing it
after the fact means a phone call, an invoice for a fee the customer didn't expect to see, and
a conversation nobody enjoys having. Most owners skip the call, eat the cost, and the policy
quietly stops meaning anything.

## Make the cost visible at the moment that matters

The fix isn't a stricter policy — it's moving the consequence to before the cancellation
instead of after it. Ask for a card on file when you confirm the visit, not after something's
already gone wrong, and a late-cancellation fee stops being an awkward collections conversation
and becomes exactly what it should be: a term the customer already saw, then you or someone in
the office charges or waives in one click when they cancel inside your notice window. A
no-show is a different situation. Handle that on its own, not as a late cancel.

That single change — asking for the card up front, instead of after the fact — is most of
the fix. It means:

- **The fee is a policy decision, not a negotiation.** You're not deciding in the moment
  whether to be the "mean" one; the terms were already agreed to.
- **It's consistent.** Every late cancellation inside your window gets the same treatment,
  which is the difference between a policy and a judgment call made fresh each time.
- **It protects the slot, not just the money.** A customer who knows a late cancellation has
  a real cost is more likely to actually call ahead — which is the outcome you wanted in the
  first place.

## Keep it fair, and say so up front

None of this works if it feels like a trap. Say the terms in plain language before the visit
is booked: the notice window, the fee, and exactly when it applies. That way nothing about it
is a surprise later. A customer who reads "Cancel with less than 24 hours' notice and a fee of 50
applies" (using whatever hours and fee amount you chose) before they accept isn't blindsided
when you enforce it; a customer who finds out only after canceling has a fair complaint.

[BlastoClean](/) lets a customer save a card once through a secure Stripe page and bills
completed visits from it when automatic billing is enabled. Turn on **Late cancellation fee** in Settings when
you're ready. It's off until you enable it, starts at 24 hours' notice and a fee of 50, and
you can change both for the whole company or per location. When a visit is canceled inside
that window, you or someone in the office chooses **Charge late fee** (using the card on
file, after confirmation) or **Waive**. A no-show is handled separately; this fee is only for late cancellations.
The policy is not printed on quotes. However you run it, the goal is the same: make the cost
of an empty slot visible before it happens, not after, so it stops happening as often.

---

---
title: "Cotización, not just quote: serving Spanish-speaking customers well · BlastoClean"
description: "A growing share of homeowners and property managers prefer to do business in Spanish. Here is what \"bilingual\" actually needs to mean if you want their business."
url: "https://www.blastoclean.com/blog/bilingual-quoting-for-spanish-speaking-customers"
---

# Cotización, not just quote: serving Spanish-speaking customers well

August 2, 2026 · 2 min read · The BlastoClean Team

Plenty of cleaning companies already serve Spanish-speaking customers well in person — the
crew communicates fine, the work is good, everyone's happy on-site. Then the paperwork
arrives in English: the quote, the confirmation text, the invoice. It's a small thing, and
it's also the thing that quietly tells a customer which language your business actually runs
in, regardless of which one your team speaks on the doorstep.

## The half-measures that don't quite work

Most attempts at "we serve Spanish speakers" stop at one of a few places:

- **A translated homepage, English everything else.** The marketing looks bilingual; the
  actual transaction — the quote, the acceptance page, the receipt — isn't.
- **A bilingual employee as the bridge.** It works until they're out sick, on another job, or
  the request comes in at 8pm. Then the business is bilingual exactly as often as one person
  is available.
- **A translated flyer or PDF.** Static and one-directional — fine for announcing you exist,
  no help when a customer wants to ask a question about what's included.

Each of these is better than nothing. None of them is what a Spanish-speaking customer
experiences as "this company serves people like me," because the parts that actually move
money — the number, the terms, the confirmation — are still in the other language.

## What "actually bilingual" needs to cover

Think about every document and message a customer touches between "I'd like a quote" and
"the invoice is paid," and ask whether each one can run in Spanish on its own, without
routing through a translator:

1. **The quote itself** — room-by-room scope, price, terms, in the customer's language.
2. **The acceptance page** — where they read it and say yes. If this reverts to English, the
   handoff from "interested" to "committed" happens in the wrong language at the worst
   moment.
3. **Confirmations and reminders** — the texts and emails that keep a visit on the calendar.
4. **Invoices and receipts** — the last document a customer keeps, often the one they refer
   back to.

Miss any one of these and the experience reverts to "translated marketing, English
transaction" — which a Spanish-speaking customer notices immediately, even if they never say
so.

## Why it's worth doing properly

This isn't really a translation problem, it's a trust problem. A customer paying a few
hundred dollars for someone to be alone in their home — or their building — wants documents
they can read without
guessing, terms they're sure they understood, and a receipt that matches what they agreed to
— in whichever language they're most confident reading it in. Get that right and you're not
competing on price against every other cleaning company; you're one of the few actually
speaking to a customer's whole experience, not just their doorstep.

It's also why [BlastoClean](/) runs English and Spanish end to end — quote, acceptance page,
reminders, invoices, the works — in whichever language you set for your company, not just on
the homepage. Whatever tools you use, the test is simple: pick one customer, and see how many
of the documents they'd actually receive are ones they can read comfortably. That number is
your real answer to "do we serve Spanish-speaking customers," whatever the homepage says.

---

---
title: "Turn website visitors into quotes before they close the tab · BlastoClean"
description: "Most \"request a quote\" forms die in an inbox for a day or two. Here is how to turn a website visitor into a lead you can price and send back before she closes the tab."
url: "https://www.blastoclean.com/blog/turn-website-visitors-into-quotes"
---

# Turn website visitors into quotes before they close the tab

July 25, 2026 · 3 min read · The BlastoClean Team

A homeowner — or an office manager pricing next year's janitorial contract — lands on your
website at 9:15pm, comparing three cleaning companies in three tabs. She fills in your
"request a quote" form — name, address, a sentence about what she
needs — and hits send. Then she keeps clicking between tabs, because nothing on your side
happened yet that she can see.

What happens next decides whether she becomes your customer or someone else's. And for most
small cleaning companies, what happens next is: the form emails the owner, the owner sees it
the next morning between jobs, and by the time a reply goes out she's already been
quoted, twice, by companies that answered first.

## The form isn't the problem. The gap after it is.

Contact forms aren't broken — they collect exactly what you asked them to collect. The
break is structural: a form produces an email, an email sits in an inbox, and an inbox is
where quote requests go to get cold. None of that is anyone's fault. It's just what happens
when a lead has to survive a human noticing it before anything moves.

Two things fix the gap, and neither of them requires answering your phone at 9:15pm:

**Land the request somewhere that isn't email.** A lead that drops into the same place you
already manage customers and quotes doesn't need anyone to notice it to keep existing — it's
just there, in the pipeline, next to everything else you're working.

**Give it a head start.** A name, an address and "3 bed, 2 bath, need a deep clean before we
list it" is already most of a quote. Someone still has to confirm scope and price it properly
— but converting that request into a customer and a draft quote is one click, not a form to
fill in from scratch, so the first human touch is a 30-second review, not a blank page.

## What a same-night reply is worth

You don't need a study to know this one — you've felt it as a customer. The company that
gets back to you first, with something specific rather than "thanks, we'll be in touch," is
the one you stop comparing. Every hour that request spends unanswered is an hour a
competitor's reply has to beat.

That's the whole case for closing the gap: not a fancier form, just a shorter distance
between "she hit send" and "she has something real to look at."

## What this looks like in practice

- A simple request form, or a floating widget, live on your own site — no separate app for
  the customer to learn.
- Every submission lands in a leads inbox inside the app, not your email inbox, and badges
  the navigation so it can't be missed.
- Converting one to a customer, a property and a draft quote is a single step — no
  retyping what she already told you.
- You confirm the rooms and scope, and send the link — often before she's closed the other
  two tabs.

That's exactly the shape of the lead capture built into [BlastoClean](/): a request form or
widget you drop on your own website, landing straight in a leads inbox in the app, one click
from becoming a customer and a real draft quote. The form was never the weak link. Give it
somewhere better than an email inbox to land, and it stops being one.

---

---
title: "Recurring cleans without the spreadsheet · BlastoClean"
description: "Weekly and every-other-week customers are the backbone of a cleaning business — and the fastest thing to outgrow a spreadsheet. How to run a schedule that runs itself."
url: "https://www.blastoclean.com/blog/recurring-cleans-without-the-spreadsheet"
---

# Recurring cleans without the spreadsheet

July 21, 2026 · 2 min read · The BlastoClean Team

One-off deep cleans pay the bills. **Recurring customers build the business.** A book of
weekly and every-other-week cleans is predictable revenue, predictable routing, predictable
staffing — everything a small company needs to stop white-knuckling each month.

It's also, operationally, where spreadsheets go to die.

## The Sunday-night problem

Every recurring clean is a small stack of promises: be there every second Tuesday, remind
the customer the day before, move the visit when it lands on a holiday, collect payment
after each one. With ten recurring customers, a spreadsheet and a diligent Sunday evening
can hold it together. With thirty, the cracks show:

- An every-other-week customer gets skipped because a row wasn't dragged down far enough.
- Nobody reminded Mrs. Patel, so the gate was locked and the crew drove back empty.
- Three customers are two visits behind on payment and no one noticed.
- The one person who understands the spreadsheet goes on vacation.

None of these are people failures. They're **system failures** — a manual process asked to
do a machine's job.

## What the machine should be doing

A recurring schedule has four jobs, and all four can run without a human touching them:

**1. Materialize the future.** From "every second Tuesday at 9am", the next dozen visits
should simply *exist* — visible on a calendar, weeks ahead, with holidays and one-off moves
handled as edits to single visits, not surgery on a formula.

**2. Send the reminders.** Confirmation requests and day-before reminders should go out on
schedule, every time, and the customer should be able to confirm from a link on their phone.

**3. Meet your calendar where it is.** The schedule should publish a feed that Google
Calendar, Outlook and Apple Calendar subscribe to, so the crew sees visits in the calendar
they already check — no double entry, no "check the spreadsheet".

**4. Collect the money.** With a card on file, a completed visit should be able to bill
itself. The moment payment needs a human for anything but exceptions, it starts slipping.

## The payoff is compounding

Here's the part that matters: every hour Sunday-night admin used to eat is an hour that can
go into quoting new work — and recurring customers are won with quotes too. A system that
handles the schedule end to end doesn't just prevent dropped visits; it frees up the person
who was holding the spreadsheet together to grow the book instead of babysitting it.

In [BlastoClean](/features), on Starter and above, saying yes requests the first visit for your approval. Optional instant booking respects working hours and existing bookings. Later visits follow
how often the quote says. The schedule keeps itself about twelve weeks ahead,
confirmations and reminders send themselves, your calendar subscribes to the feed,
and completed visits charge the card on file when automatic billing is enabled — with every charge in a ledger you
can actually audit.

Spreadsheets are wonderful. Just not for promises you've made thirty families about next
Tuesday.

---

---
title: "Stop texting quotes: why online acceptance wins more cleaning jobs · BlastoClean"
description: "The quote a customer can accept in one tap beats the one buried in their messages. Here is why speed-to-yes is the metric that matters."
url: "https://www.blastoclean.com/blog/stop-texting-quotes"
---

# Stop texting quotes: why online acceptance wins more cleaning jobs

July 2, 2026 · 2 min read · The BlastoClean Team

Here's how a lot of cleaning quotes go out today: a text message. *"Hi Sarah, for the deep
clean we discussed it'd be $340, let me know!"* Sometimes it's a PDF attached to an email.
Sometimes it's a voicemail.

And here's what happens next: nothing. Not because the price was wrong — because saying yes
required effort at the exact moment the customer had none to spare.

## The job goes to whoever is easiest to say yes to

Home services are bought in stolen moments — on the train, between meetings, after the kids
are down. If accepting your quote means finding your text, re-reading the thread, and
composing a reply, you've asked a tired person to do three things. Your competitor who sent
a link with an **Accept** button asked them to do one.

Speed matters on your side too. The first professional, complete quote to arrive sets the
anchor. When your quote lands while the walkthrough is still fresh — with every room and
task spelled out — the follow-up quotes from other companies get compared to *yours*.

## What a text message can't do

Beyond the missing button, a texted price is missing the things that make a quote feel
professional:

- **Detail.** "Deep clean — $340" invites haggling. Fourteen line items across six rooms
  invite trust.
- **Status.** Was it seen? Accepted? You don't know until you ask, and asking feels like
  nagging. A shared quote should tell you the moment it's opened and accepted.
- **A record.** When the job changes ("can you add the garage?"), a text thread becomes an
  argument. A revised quote with tracked versions stays a document.
- **Privacy.** A forwarded screenshot is forever. A private link can be revoked and
  regenerated the moment you need it to be.

## What "easy to say yes to" looks like

The gold standard is boring and reachable: the customer taps a link, sees a clean page that
loads instantly on their phone, reads exactly what's included room by room, and taps
**Accept**. No account. No app. No login. If they want paper, there's a PDF. If they ignore
it, a polite reminder handles the follow-up so you don't have to.

That's the entire trick. Not better salesmanship — **less friction between "sounds good"
and "accepted".**

This is precisely what [BlastoClean](/features) does with every quote: a private,
no-login acceptance page, live status back to you, tracked revisions when things change,
and a professional PDF for the paper people. Your quote shows up looking like the biggest
company in town sent it — even if it's just you and a van.

The next job you lose, make sure it's on price or availability — never on friction.

---

---
title: "How to price a house cleaning job (without guessing) · BlastoClean"
description: "A room-by-room method for estimating cleaning work that produces prices you can repeat, explain and defend."
url: "https://www.blastoclean.com/blog/how-to-price-a-house-cleaning-job"
---

# How to price a house cleaning job (without guessing)

June 10, 2026 · 3 min read · The BlastoClean Team

Ask five cleaning company owners how they price a job and you'll get five answers — square
footage, number of bedrooms, "about what the last one cost", gut feel, or an hourly rate with
a shrug. All five work until they don't: the day you quote a four-bedroom house that turns
out to have two dogs, a home gym and a kitchen that hasn't seen a sponge since spring.

There's a better way, and it isn't complicated. It's the method professional estimators use
in every trade: **break the job into pieces small enough that each piece is easy to estimate,
then let arithmetic do the rest.**

## Step 1: Think in rooms, not houses

A "house" is impossible to estimate. A **kitchen** is easy. So is a bathroom, a bedroom, a
hallway. Walk the property (in person or over video) and list the rooms. That list *is* the
skeleton of your quote.

## Step 2: Give every task a time

For each room type, write down the tasks you actually perform and how many minutes each one
takes a trained cleaner. Be honest, not optimistic:

- Wipe counters and cabinet fronts — 10 min
- Clean sink and faucets — 5 min
- Clean oven interior — 30 min
- Vacuum and mop floor — 15 min

Do this once, and you have a **task library**. From now on, estimating a kitchen means
ticking boxes, not staring at the ceiling.

## Step 3: Adjust for size and condition

A small powder room and a master bathroom are not the same job, and neither are a
maintained home and a first clean. Instead of re-guessing every time, use multipliers:

- **Size:** small ×0.75, standard ×1.00, large ×1.25
- **Condition:** light ×0.90, standard ×1.00, heavy ×1.25

A large, heavily soiled kitchen at 60 base minutes becomes 60 × 1.25 × 1.25 ≈ **94
minutes**. The multiplier does the negotiating with reality so you don't have to.

## Step 4: Price the time, not the vibe

Add up the minutes across every room, round up to your billing increment (most companies use
15 or 30 minutes), and multiply by your hourly rate. Then add any fixed fees — travel,
supplies, a first-visit surcharge — and tax.

That's the whole method. The price is now something you can **repeat** (the same house gets
the same price next month), **explain** ("the kitchen is 94 minutes because of the oven and
the condition") and **defend** (when a customer pushes back, you can talk about tasks, not
feelings).

## Sketch a range first

If all you have is bedrooms, bathrooms, and square feet, the
[free cleaning quote calculator](/free-cleaning-quote-calculator) will sketch a low-to-high
range in the browser. It follows the same shape as the method above: minutes for the rooms, a
size factor, a heavier factor for a deep or move-out clean, then an hourly rate. The
assumptions are written on the page. The range is a starting point, not a price to send a
customer.

Pricing an office or a building is a different page. The
[free commercial cleaning bid calculator](/free-commercial-cleaning-bid-calculator)
turns square feet and what you pay per hour into a monthly bid. The numbers it starts
with are examples.

## Where software earns its keep

You can absolutely run this method on paper or a spreadsheet — plenty of companies do, right
up until the spreadsheet has seventeen tabs and nobody trusts the formulas anymore.

This method is exactly what [BlastoClean](/) runs under the hood: you build the room and
task library once, tick boxes during the walkthrough, and the price updates live using your
rates and your multipliers — worked out in cents, so the total on the screen is the total
on the quote, every time. When the customer's ready, they accept online from a private link.

To see what is left on one job after pay, supplies, and the drive, the
[free cleaning business profit calculator](/free-cleaning-business-profit-calculator)
adds it up in the browser. No account. The starting numbers are examples.

However you run it, stop guessing. Your prices — and your margins — will thank you.

---

---
title: "Documentation · BlastoClean"
description: "How to use BlastoClean, one article per feature — quoting, scheduling, payments, reporting and the iPhone and Android app."
url: "https://www.blastoclean.com/docs"
---

# BlastoClean documentation

Guides for the web and mobile apps.

## Getting started

Set the company up once, and the rest of the product has what it needs.

### [Creating your account and signing in](https://www.blastoclean.com/docs/creating-your-account)

_Web and mobile · Updated October 19, 2026_

Sign up once with your company name and email, and you own a company that the owner adds the other team members to. Everyone signs in afterwards with a password, a Google, Apple, Microsoft or Facebook account, or biometrics on the phone. X, Instagram and TikTok connect from Settings once you are in, and sign you in from then on.

### [Setting up your company](https://www.blastoclean.com/docs/setting-up-your-company)

_Web app · Updated October 18, 2026_

Settings puts essentials for your next job and everyday options first, with specialist options under Advanced. Visit times requested when accepting a quote need approval by default.

### [Your room and task library](https://www.blastoclean.com/docs/your-room-and-task-library)

_Web app · Updated October 19, 2026_

Every quote is assembled from your library of room types and the tasks each one contains, with a time on every task, so shaping the library once is what makes every future quote fast and consistent.

### [Getting help inside the app](https://www.blastoclean.com/docs/getting-help)

_Web and mobile · Updated October 18, 2026_

Office roles can open Help from web navigation or More → Help on the phone where Help is enabled. It uses this documentation, cites articles and offers a support contact. Native Help requires unlocked company access.

## Quoting

Turn a property into a price — by walking it, or room by room at the desk.

### [Quick Quote and Magic Quote walkthroughs](https://www.blastoclean.com/docs/magic-quote)

_Web and mobile · Updated October 18, 2026_

Quick Quote turns a free-form paragraph, photos of the property or both, plus adaptive follow-ups, into a complete draft; Magic Quote is the separate on-site walkthrough with photos, video, voice notes and traceable evidence.

### [Building a quote](https://www.blastoclean.com/docs/building-a-quote)

_Web app · Updated October 19, 2026_

A quote is built in three steps: how often, rooms, and send. Add rooms from your library, tick the tasks, and press Send quote. The total updates as you go.

### [Pricing a quote](https://www.blastoclean.com/docs/pricing-a-quote)

_Web app · Updated October 19, 2026_

A quote is priced as ticked task minutes times size times condition times your hourly rate, plus any fixed-price rooms and fees, less discounts. You can show a price for each schedule, and any price you set by hand keeps the calculated total, the reason, and who set it.

### [Quoting from your phone](https://www.blastoclean.com/docs/quoting-from-your-phone)

_Mobile app · Updated October 18, 2026_

The phone builds a quote on one screen: how often, the rooms and tasks, then Send quote. A business quote can start from a common job. Requested visit times can be reviewed too, and the price matches the web app.

### [Photo quotes](https://www.blastoclean.com/docs/photo-quotes)

_Web and mobile · Updated October 18, 2026_

Share your photo link and customers send photos of their home without an account; on Pro the photos are read and priced from your own library, and you send a firm price or a range, after review and send confirmation.

### [Firm prices and risk](https://www.blastoclean.com/docs/firm-prices-and-risk)

_Web app · Updated October 6, 2026_

A firm price is what you will charge if the home matches the photos, a range is confirmed when you arrive, and the risk score on each photo quote tells you which of the two the photos support.

### [Hourly and area pricing defaults](https://www.blastoclean.com/docs/size-pricing)

_Web and mobile · Updated October 19, 2026_

Set your own threshold and rate range, give a property its own rate if you like, and price per-visit or monthly quotes by the hour or by the square foot. You can also charge more for the first clean.

### [Walkthrough pricing review](https://www.blastoclean.com/docs/walkthrough-review)

_Web and mobile · Updated October 11, 2026_

Mark a quote as needing an in-person walkthrough, or set a pet count that requires one. The quote cannot be sent until an owner or manager confirms the visit happened and reviews the price.

### [Dust evidence and quote adjustments](https://www.blastoclean.com/docs/dust-evidence)

_Web and mobile · Updated October 11, 2026_

Record when a property was last dusted. For dust older than three months, attach a photo of the dustiest area or apply your own percentage adjustment, so the price matches the work.

### [First clean price](https://www.blastoclean.com/docs/first-clean-alternatives)

_Web and mobile · Updated October 19, 2026_

Price the first clean on the quote itself: add a set amount or a percent, and tick tasks done only on the first visit. The customer sees both prices, and booking charges the first-visit price once, then the regular price.

## Winning work

Getting the quote in front of the customer, and making yes the easy answer.

### [Quote requests from your website](https://www.blastoclean.com/docs/quote-requests-from-your-website)

_Web app · Updated October 16, 2026_

Paid plans include a public request-a-quote page and an embeddable widget for its own site; requests land in a leads inbox that turns one into a customer, a property and a draft quote in a single step.

### [Sending a quote](https://www.blastoclean.com/docs/sending-a-quote)

_Web and mobile · Updated October 18, 2026_

Send quote emails the quote. On Pro and Business it can text the quote when there is no email and the customer agreed to texts. You can also hand over a private link or a PDF. When they open it, say yes, or say no, the status changes and your team is emailed.

### [Online acceptance and signatures](https://www.blastoclean.com/docs/online-acceptance-and-signatures)

_Web app · Updated October 18, 2026_

Customers accept the quote and request their preferred date and time. The business approves the visit before it is booked. Optional instant booking only confirms visits that fit working hours and avoid current bookings.

### [Follow-ups and quote expiry](https://www.blastoclean.com/docs/follow-ups-and-expiry)

_Web app · Updated October 18, 2026_

Switch follow-ups on and unanswered quotes get a nudge after the number of days you choose plus a warning before they expire: each sent at most once for its current send or expiry date, and never after the customer has answered.

## Scheduling

Accepted work becomes visits, one-off or recurring, assigned to the people who do it.

### [Scheduling a visit](https://www.blastoclean.com/docs/scheduling-a-visit)

_Web and mobile · Updated October 20, 2026_

Customers request a time for approval by default. Review the request on the web, or opt into instant booking within working hours and existing availability.

### [Recurring schedules](https://www.blastoclean.com/docs/recurring-schedules)

_Web and mobile · Updated October 19, 2026_

A series books one-time, weekly, biweekly or monthly work, by date or by rule like the second Tuesday, and keeps itself scheduled 3, 6 or 9 months ahead until you pause or end it.

### [Crews and availability](https://www.blastoclean.com/docs/crews-and-availability)

_Web and mobile · Updated October 19, 2026_

Put one person or several on a visit or a series, every one of them holds the hour and gets it on their own calendar, and book against a free/busy week drawn from their schedules and their connected calendars.

### [Calendars and feeds](https://www.blastoclean.com/docs/calendars-and-feeds)

_Web and mobile · Updated October 18, 2026_

Mint an iCal feed for the whole company or for one person and subscribe to it from Google, Outlook or Apple Calendar; connecting a calendar the other way lets what is already in someone’s day block bookings.

### [Reminders and confirmations](https://www.blastoclean.com/docs/reminders-and-confirmations)

_Web app · Updated October 16, 2026_

Confirmation requests and reminders go out automatically on the schedule you set, by email and, for customers who opted in, by text, each with an add-to-calendar file and a confirm link that needs no account. A customer who cannot make the time can pick an open one, and the office moves the visit in a click.

### [Work checklists and visit photos](https://www.blastoclean.com/docs/work-orders-and-visit-photos)

_Web and mobile · Updated October 18, 2026_

Every visit created from a quote carries a printable checklist of the rooms, the exact tasks the customer accepted and the property’s access notes, plus before-and-after photos within the plan limits, taken from the phone.

### [Handling cancellations](https://www.blastoclean.com/docs/cancellations)

_Web and mobile · Updated October 19, 2026_

You set the notice window and the late fee. A person charges the card on file or waives the fee, and the app never charges on its own. Owners and managers hear when a visit is canceled. Customers who asked can take the open time in one tap.

### [Digital checklists](https://www.blastoclean.com/docs/digital-checklists)

_Web and mobile · Updated October 18, 2026_

On Starter and above, the office builds a checklist per property; each visit gets its own copy; cleaners tick, untick, note and photograph tasks on the phone, even offline; the printable work order shows the same list; Pro adds tasks that require a photo and the checklist report.

### [Saved teams and client preferences](https://www.blastoclean.com/docs/saved-teams)

_Web and mobile · Updated October 19, 2026_

Create saved teams such as "Team A" or "Night crew", assign the whole team to a visit or schedule in one step, and set which team each client usually gets. Available on Starter, Pro and Business.

### [Job chats](https://www.blastoclean.com/docs/job-chats)

_Web and mobile · Updated October 19, 2026_

Private chats for each clean: who can use them, and how long they stay open.

### [The day map](https://www.blastoclean.com/docs/the-day-map)

_Web app · Updated October 17, 2026_

See one day of visits on a map, fix missing pins, reassign visits and handle open time.

### [The day map on your phone](https://www.blastoclean.com/docs/the-day-map-on-your-phone)

_Mobile app · Updated October 15, 2026_

Use the day map on your phone to review assigned visits and open your navigation app.

### [Add-ons and price changes for one visit](https://www.blastoclean.com/docs/visit-add-ons)

_Web app · Updated October 17, 2026_

Save add-ons such as "Inside fridge" in Settings › Pricing & quotes, then add one to a single visit with one tap. The invoice lists it by name, its checklist task goes on that visit only, and the recurring rate and accepted quote stay the same.

### [Calendar and map colors](https://www.blastoclean.com/docs/calendar-colors)

_Web and mobile · Updated October 16, 2026_

Set up to three color rules so you can read the schedule at a glance: by town, frequency, visit type, team, first visit or your own tags. Filter the schedule and the day map by color.

### [Email me tomorrow’s cleans](https://www.blastoclean.com/docs/tomorrows-cleans)

_Web and mobile · Updated October 14, 2026_

Owners and managers can opt into one personal evening email for tomorrow’s cleans. Choose the locations, send time and planning timezone; the email highlights work that needs attention before listing the day.

## Getting paid

Invoices, card payments, cash at the door, and the ledger behind all of it.

### [Connecting Stripe and taking card payments](https://www.blastoclean.com/docs/connecting-stripe)

_Web app · Updated October 18, 2026_

Link your company’s own Stripe account in a couple of clicks with no API keys to paste; payments settle directly to you, and BlastoClean adds no fee of its own on top of Stripe’s.

### [Invoices and payments](https://www.blastoclean.com/docs/invoices-and-payments)

_Web and mobile · Updated October 19, 2026_

Each visit gets an invoice in your company’s own numbering a week before the visit, with a status that follows its payments, and every charge, refund and recorded cash payment lands in one payment record.

### [Payment options on invoices](https://www.blastoclean.com/docs/invoice-payment-options)

_Web and mobile · Updated October 7, 2026_

Owners can display business destinations for existing manual payment methods. Staff must verify receipt and use Record payment.

### [Taking payment in person](https://www.blastoclean.com/docs/taking-payment-in-person)

_Mobile app · Updated October 16, 2026_

The phone is the card reader: Tap to Pay on iPhone, contactless payments on supported NFC Android devices, a hosted Stripe card page for everything else, and cash or checks recorded with no payment account connected at all.

### [Tips, card fees and refunds](https://www.blastoclean.com/docs/tips-fees-and-refunds)

_Web and mobile · Updated October 16, 2026_

Tips and card fees are both off by default: tips can be switched on per location and are asked for wherever a customer pays, and a card fee (yours, never ours) is shown on the quote and again at checkout.

## Running the company

The library, the team, the numbers and the settings everything else reads from.

### [The dashboard and reports](https://www.blastoclean.com/docs/the-dashboard-and-reports)

_Web and mobile · Updated October 20, 2026_

The dashboard shows the pipeline, money collected, the week ahead and a needs-attention list, and every number opens the exact list it was counted from; the reports behind it export to CSV or Excel.

### [Customer follow-ups](https://www.blastoclean.com/docs/customer-follow-ups)

_Web and mobile · Updated October 16, 2026_

Customer follow-ups put people who may need a personal check-in on one staff-only list; your team decides whether and how to reach out, and no win-back message is sent automatically.

### [Team, roles and permissions](https://www.blastoclean.com/docs/team-roles-and-permissions)

_Web and mobile · Updated October 19, 2026_

Owners manage the company and managers run the work, with narrower roles for people who only estimate or only read; changing a role or deactivating someone revokes their access immediately.

### [Two-factor authentication](https://www.blastoclean.com/docs/two-factor-authentication)

_Web and mobile · Updated October 16, 2026_

Turn on a second step from Settings → Security and it is asked for however you sign in, social sign-in included, using an authenticator app, a security key or a text code. You also get recovery codes for the day the phone is lost.

### [Finding anything: search and keyboard shortcuts](https://www.blastoclean.com/docs/search)

_Web and mobile · Updated October 16, 2026_

Office roles can press ⌘K (Ctrl+K on Windows) from any office page and type the first letters of a name, a street, a unit number or a quote number; results come back grouped by what they are and open from the keyboard.

### [AI assists](https://www.blastoclean.com/docs/ai-assists)

_Web app · Updated October 18, 2026_

AI drafts, sorts and summarizes while prices use your configured library. Proposed quotes and visit actions need review; enabled follow-up automation can send personalized email without per-message approval.

### [Text messages and consent](https://www.blastoclean.com/docs/text-messages-and-consent)

_Web app · Updated October 18, 2026_

Texting is opt-in per phone number, STOP opts a number out of your company’s texts instantly, nothing is sent between 9pm and 8am in the visit’s own time zone, and the app checks a number is not a landline before texting it. Marketing texts need a separate permission, recorded after the customer agrees to everyday texts. In the pending release, every company will text and take calls from a number of its own, through its own Twilio account.

### [Calls and voicemail](https://www.blastoclean.com/docs/calls-and-voicemail)

_Web and mobile · Updated October 19, 2026_

On Pro and Business, calls to your business number ring the phone you choose. A missed call plays your greeting and takes a voicemail, which arrives in Messages and in the client’s history with the recording, a transcript, a suggested reply and, when they asked to move a visit, a move to approve.

### [The customer inbox](https://www.blastoclean.com/docs/customer-conversations)

_Web and mobile · Updated October 19, 2026_

Customer emails arrive in one shared inbox, joined by texts on Pro and Business. A reply to anything BlastoClean sent comes back into the same thread instead of one person’s mailbox, and you answer by email or with an internal note from the same box, or by text on Pro and Business.

### [Notifications and the bell](https://www.blastoclean.com/docs/notifications)

_Web and mobile · Updated October 19, 2026_

The bell in the header carries a personal feed of the things that need somebody (a declined card, a reply, a new lead, an accepted quote, an open visit) with an unread count, and who receives each one follows the roles and locations you already set.

### [Suggested visit moves](https://www.blastoclean.com/docs/suggested-visit-moves)

_Web and mobile · Updated October 17, 2026_

On Pro and Business, BlastoClean reads a customer message like "Can we do Thursday instead?" and proposes the move for one visit. Nothing changes until you approve it.

### [Suggested instructions for today](https://www.blastoclean.com/docs/suggested-visit-instructions)

_Web and mobile · Updated October 11, 2026_

On Pro and Business, BlastoClean turns a customer message such as "Please skip the guest room today" into a short instruction for today’s visit. You edit and approve it, and the crew sees only the approved text.

### [Your own mailbox and calendar](https://www.blastoclean.com/docs/your-own-mailbox-and-calendar)

_Web app · Updated October 18, 2026_

Connect Gmail, Microsoft 365 or iCloud Mail and quotes, reminders and invoices leave from your own address, so replies land in the inbox you already watch instead of a mailbox nobody reads.

### [Exporting your data](https://www.blastoclean.com/docs/exporting-your-data)

_Web app · Updated October 17, 2026_

Download a portable JSON export of the whole company (settings, team, customers, properties, templates, saved add-ons, quotes and audit records) and learn the limits of server import and the customer spreadsheet importer.

### [Suggested quote drafts](https://www.blastoclean.com/docs/suggested-quote-drafts)

_Web and mobile · Updated October 11, 2026_

On Pro and Business, when a customer asks for a quote by email or text, BlastoClean can write internal notes on what they need and start an empty quote draft for them. You add the rooms, tasks and prices.

### [Commercial cleaning mode](https://www.blastoclean.com/docs/commercial-cleaning-mode)

_Web and mobile · Updated October 19, 2026_

Choose residential, commercial, or both in Settings. A business quote can start from a common job, then carry a frequency on every task, a monthly price, and an agreement. Customers can hold net terms, and crews clock in and out with GPS.

### [Emails to review inbox suggestions](https://www.blastoclean.com/docs/inbox-approval-emails)

_Web app · Updated October 8, 2026_

On Pro and Business, when you ask for an inbox suggestion, BlastoClean emails you when it is ready to review. Opening the link changes nothing; you approve or dismiss after signing in.

### [Quality inspections](https://www.blastoclean.com/docs/quality-inspections)

_Web app · Updated October 17, 2026_

Inspections are scored walkthroughs of one building on one day: each line carries an area, what was checked, a 1–5 rating, a comment and a photo. A walkthrough can start from a list of checks (the building’s own cleaning checklist, a checklist template or the built-in standard walkthrough) or start blank. Completing an inspection snapshots its score as a percentage and freezes the lines; areas that could not be accessed are excluded rather than scored zero. Bad lines become corrective actions with an owner and a due date, and an inspection you choose to share appears on the client’s portal beside their invoices.

### [Staff communication](https://www.blastoclean.com/docs/staff-updates)

_Web and mobile · Updated October 19, 2026_

On Pro and Business, Staff gives your team one place for announcements, a team feed and photo posts, with a report of who read and acknowledged each announcement.

### [Supplies, keys and compliance](https://www.blastoclean.com/docs/site-operations)

_Mobile app · Updated October 17, 2026_

In native versions that include the commercial site card, eligible office roles can read recorded access instructions and supply levels on a visit, reveal an access code with permission, and flag a shortage. Site setup, restock management and compliance-document management do not yet have a product interface.

### [Extra work: adding it to a visit or a monthly invoice](https://www.blastoclean.com/docs/change-orders)

_Web and mobile · Updated October 17, 2026_

Extra work is one job at one price that a customer asked for beyond the usual: the fridge on Tuesday, the move-out clean, the carpet nobody planned for. Add it to one of their visits and it joins that visit’s price, its invoice and the crew’s checklist, for any customer and any kind of company. If the customer already said yes, record that and it goes on right away. Otherwise send them a one-page approval link and it goes on when they approve. Commercial clients on consolidated billing can also have extra work that is not on a visit, which goes on their monthly invoice. You can add extra work on the web and in the mobile app.

### [Staff time-off requests](https://www.blastoclean.com/docs/staff-time-off)

_Web and mobile · Updated October 14, 2026_

On Pro and Business, team members request time off in the app. Managers see which visits are affected before they approve, and approved time off shows up when you schedule.

### [Using BlastoClean in ChatGPT and Claude](https://www.blastoclean.com/docs/chatgpt-and-claude)

_Web app · Updated October 20, 2026_

Paste one address into ChatGPT or Claude and sign in, and you can ask about your schedule, customers, quotes and numbers or have it draft a quote, while it can never send, charge, book or delete anything.

### [Offer an assigned visit](https://www.blastoclean.com/docs/staff-visit-offers)

_Web and mobile · Updated October 19, 2026_

On Pro and Business, a team member who cannot make a visit can offer their place. A teammate claims it and a manager approves the swap. The visit time and the rest of the crew stay the same.

### [Private staff documents](https://www.blastoclean.com/docs/staff-private-documents)

_Web and mobile · Updated October 19, 2026_

On Pro and Business, every document belongs to one team member. Owners and managers can file paperwork for anyone at the location and see at a glance who is missing a W-9 or ID or has a certification about to expire. Everyone else sees only their own documents.

### [Shift swaps](https://www.blastoclean.com/docs/staff-shift-swaps)

_Web and mobile · Updated October 18, 2026_

On Pro and Business, team members ask a coworker to take a visit or trade visits. The coworker accepts and, by default, an owner or manager approves before any crew changes; swaps within the same team can approve automatically.

### [Staff notification preferences](https://www.blastoclean.com/docs/staff-notifications)

_Web and mobile · Updated October 18, 2026_

On Pro and Business, each person chooses whether to get an email notice when a new staff announcement is posted. New announcements also appear in the notification bell.

### [All feature details](https://www.blastoclean.com/docs/feature-notes)

_Web and mobile · Updated October 19, 2026_

Full details on every feature, in one place.

## On your phone

The native iPhone and Android app: the schedule, the quote, and the card reader.

### [The mobile app](https://www.blastoclean.com/docs/the-mobile-app)

_Mobile app · Updated October 19, 2026_

A native iPhone and Android app that signs in to the same company as the web app and carries the schedule, quotes, customers, the leads inbox, the dashboard and in-person payments.

### [The schedule on your phone](https://www.blastoclean.com/docs/the-schedule-on-your-phone)

_Mobile app · Updated October 16, 2026_

The phone carries the whole scheduling surface: the week filtered to one person, every visit action including reschedule against the crew’s free/busy week, the work checklist, and photos from the camera.

### [Leads and customers on your phone](https://www.blastoclean.com/docs/leads-and-customers-on-your-phone)

_Mobile app · Updated October 16, 2026_

The quotes screen badges the number of website leads still waiting for an answer, and one button turns a lead into a customer, a property and a draft quote, then opens the editor on it.

---

---
title: "Creating your account and signing in · BlastoClean docs"
description: "How to start a BlastoClean company, add the people who work with you, and get back in, by password, by a connected account such as Google or Apple, or by Face ID on the phone."
url: "https://www.blastoclean.com/docs/creating-your-account"
---

# Creating your account and signing in

Getting started · Web and mobile · 5 min read · Updated October 19, 2026

**Sign up once with your company name and email, and you own a company that the owner adds the other team members to. Everyone signs in afterwards with a password, a Google, Apple, Microsoft or Facebook account, or biometrics on the phone. X, Instagram and TikTok connect from Settings once you are in, and sign you in from then on.**

The first account in a company is the owner's, and it is the only one that
starts from nothing. The owner creates employee accounts in that company.

## Starting the company

Signing up asks for your company's name, your name, an email address, a
password, and whether you do **Residential**, **Commercial** or **Both**.
Choose the work type yourself; nothing is preselected. It determines the starter
room and task library. Registration creates the company and makes you its owner. See [Your room and task library](/docs/your-room-and-task-library).

The sign-up page, and the step that finishes a sign-up started with Google,
Apple, Microsoft or Facebook, also offer **Company phone (optional)**. Leave it
blank or type a number with its area code; a country code is fine, like +1. A
number without an area code gets "Enter a phone number with its area code, like
(555) 123-4567." The number is saved on the company, and also as your own mobile
number when it is one that can receive texts. The free-trial form on this website
asks for the same number as **Phone (optional)**.

Two things are set from your surroundings rather than asked for. Your time zone
comes from the device you signed up on, so quotes and visits are dated in your
own zone from the first one. Your language follows your browser, and can be
changed later.

If you signed up from the phone app, the same form is there, and a verification
step runs in a sheet for that one moment: this verification step opens a web view.

## Signing in

![Web app: Sign in, with synthetic records.](/images/docs/login-en-20261019.webp)

You can sign in with your password or with a Google, Apple, Microsoft or
Facebook account. These are credentials on one account rather than separate
accounts, so you can mix them freely: sign up with a password and add Google
later, or the other way round. Losing access to one never locks you out while
another still works, and disconnecting one that has been compromised signs out
every other session at the same time.

**X, Instagram and TikTok** work slightly differently. None of them will tell us
an email address, and an account has to be created against one, so they cannot
start an account, only join one you already have. Sign in some other way once,
connect them under **Settings → Connected accounts**, and from then on they are
an ordinary way in like any of the others.

A few details that matter when something goes wrong:

- **Repeated failures, not normal ones, get a bot check.** Signing in correctly
  stays one click. Only after several failed attempts does a challenge appear.
- **Your sign-in stays with BlastoClean**, in a way page scripts cannot read.
  Offline mode is separate: the browser may keep a
  small recent working set on the device, such as customers, quotes, invoices,
  worksheets and unfinished quote or inspection work. It is separated by
  signed-in user, company and location, and it cannot be used to sign in. On a
  shared computer, sign out when you finish and clear BlastoClean's stored site
  data if you also want to remove the device copy.
- **Forgot your password** sends a reset link to the address on the account.
  If your account has no password, because you only ever used Google, signing
  in with Google is the way back, and setting a password afterwards is optional.
- **A second step, if you want one.** Two-factor authentication is optional and
  per person, and applies however you sign in: social sign-in included. See
  [Two-factor authentication](/docs/two-factor-authentication).

## On the phone

![Native UI preview: Sign in with synthetic records.](/images/docs/mobile-login-en-20261019.webp)

The iPhone and Android app signs in to the same company with the same
credentials, and keeps that sign-in in the phone's secure storage rather than
in an ordinary file. Once you are in, you can turn on **biometric app lock** in
Settings: Face ID, Touch ID or Android biometrics, with the device passcode as
the fallback for the times a fingerprint will not read.

There is nothing to set up. The app signs in to your company.

## Adding your team

The owner opens **Settings → Employees & Teams → Employees → Add employee**
on the web. Enter the person’s name, email, role and a starting password of at
least 12 characters, then select **Create employee account**. Share that password
directly with the person; creating the account is not an invitation email.
Employees can change their password in the web account settings.

In the mobile app, open
**Settings → Employees → Add employee**. The same account and seat limits apply. What each role may do, and what happens the
moment you change one, is in
[Team, roles and permissions](/docs/team-roles-and-permissions).

## Your own account

On the web, open **Settings → Your account** to edit your name and mobile number.
Password and connected-account controls are in the same section; second-factor,
passkey and trusted-browser controls are under **Security**. Crew uses
**My account** at the foot of its navigation.

In the mobile app, open **Settings → Account**; Crew opens **Account**
from its menu. Edit your name or mobile number, then save. Email is read-only.
Cancel restores the last saved values; Back asks before discarding unsaved edits.
A failed save keeps your draft for correction or retry.

Native password, connected-account and security buttons open the web app in your
browser. You may need to sign in there separately. Biometric app lock remains a
device setting, separate from web two-factor authentication. See
[Two-factor authentication](/docs/two-factor-authentication).

Personal Account remains accessible when a subscription is locked. The
screenshots use sample data. The app is not in the App Store or Google Play
yet.

## Leaving or deleting an account

Use the account-deletion option in web Settings or native Settings and read its
confirmation before continuing. A team member deletes their own access; an
owner's company-deletion flow deletes the company and its data. They are
different actions. The screen asks for the required typed confirmation and
explains the effects. Export company data from the web first if you need it.
A cancellation or interrupted response is not proof that deletion completed.

![Web app: Personal account and security handoffs, with synthetic records.](/images/docs/web-account-en-20261019.webp)

![Native UI preview: Personal account and security handoffs with synthetic records.](/images/docs/mobile-account-en-20261019.webp)

---

---
title: "Setting up your company · BlastoClean docs"
description: "The settings every other part of BlastoClean reads from: your hourly rate, quote numbering and expiry, business hours, branding, language and, on Business, multiple locations."
url: "https://www.blastoclean.com/docs/setting-up-your-company"
---

# Setting up your company

Getting started · Web app · 2 min read · Updated October 18, 2026

**Settings puts essentials for your next job and everyday options first, with specialist options under Advanced. Visit times requested when accepting a quote need approval by default.**

Settings starts with **Essentials for your next job**: pricing, the task library, working hours and taking payments. **Everyday settings** holds the options you use regularly. Open **Advanced** for locations, automation, the website form, AI and API access. Search finds sections, and direct links open advanced sections too.

![Web app: Company details, with synthetic records.](/images/docs/settings-overview-en-20261019.webp)

## The numbers to set first

![Web app: Pricing defaults, with synthetic records.](/images/docs/settings-pricing-en-20261019.webp)

- **Your hourly rate.** Hourly quotes use labor time multiplied by this rate,
  before other adjustments. Square-foot quotes use your area rate instead;
  see [Hourly and area pricing defaults](/docs/size-pricing).
- **Tax.** Applied to quotes and invoices at the rate you set.
- **Quote numbering.** Quotes number themselves in your own sequence (for example
  `Q-2026-000028` in the pictures in these guides). You choose the format. The sequence never reuses a number.
- **Quote expiry.** Thirty days by default. A quote past its expiry can no
  longer be accepted online, which is what makes
  [follow-ups](/docs/follow-ups-and-expiry) worth switching on.

## Business hours and scheduling

By default, accepting a quote requests a time for the office to approve. A request is not yet a booking. In **Pricing & quotes**, you can enable instant booking: it requires a scheduling plan, the whole visit must fit the location’s effective working hours, it must start at least an hour ahead, and it cannot overlap existing bookings. Unavailable times remain requests.

Review the company’s hours and timezone, plus any location overrides. Office approval lets you review the date and time before creating the visit. See [Scheduling a visit](/docs/scheduling-a-visit).

## Branding and language

Your logo appears on quote pages, PDFs and receipts. Your company language,
English or Spanish, decides what your customers are written to in. A quote
keeps the language it was written in forever, so changing the company language
later does not rewrite what a customer has already been sent.

## More than one location

On the Business plan a company can run several **locations**: branches or
franchise territories, each with its own customers, quotes and schedules, its
own public quote-request form, its own rates and quote numbering, and, where a
branch banks separately, its own payment account.

Settings inherit from the company until a location overrides them, so a new
branch starts out matching the rest of the business and only differs where you
say so. People are assigned to locations, and what they can see follows: the
schedule, the search box and every report show one location's work at a time,
with an "all my locations" view for those who work across several.

## What else is on this page

The rest of Settings is documented where the feature is:

- [Your room and task library](/docs/your-room-and-task-library)
- [Connecting Stripe](/docs/connecting-stripe) and
  [Tips, fees and refunds](/docs/tips-fees-and-refunds)
- [Quote requests from your website](/docs/quote-requests-from-your-website)
- [Calendars and feeds](/docs/calendars-and-feeds)
- [Handling cancellations](/docs/cancellations)
- [AI assists](/docs/ai-assists)
- [Team, roles and permissions](/docs/team-roles-and-permissions)
- [Exporting your data](/docs/exporting-your-data)

---

---
title: "Your room and task library · BlastoClean docs"
description: "The room types and cleaning tasks every BlastoClean quote is built from. You start with a library when you sign up, then shape it to how your own company cleans."
url: "https://www.blastoclean.com/docs/your-room-and-task-library"
---

# Your room and task library

Getting started · Web app · 4 min read · Updated October 19, 2026

**Every quote is assembled from your library of room types and the tasks each one contains, with a time on every task, so shaping the library once is what makes every future quote fast and consistent.**

A quote in BlastoClean is not a blank document. It is assembled from a library
of **room types** and the **tasks** that belong to them, each task carrying the
number of minutes it takes. Get the library right and a quote becomes a matter
of ticking what applies; leave it as it arrives and you will spend the rest of
your life typing the same lines.

Your company starts with a library: the common room types and the tasks most
cleaning companies do in them, for houses and for offices. You can quote on day
one and shape it as you learn what you actually charge for.

## Room templates

![Web app: Room and task library, with synthetic records.](/images/docs/settings-library-en-20261019.webp)

A room template is a room type (Kitchen, Full Bathroom, Living Room, Garage;
Office, Conference Room and Restroom if your work is commercial) and the set
of tasks that comes with it. When somebody adds a Kitchen to a
quote, they get your kitchen tasks, already timed, ready to tick on and off.

Add the rooms your work actually involves. A company that cleans dental
practices needs a Treatment Room far more than a Nursery.

## Task templates

A task is one line of work with a duration: *Scrub and disinfect toilet, 8
minutes.* Two things make these worth being careful about:

- **The time is what the price is made of.** Labor on a quote is the sum of the
  ticked tasks' minutes, multiplied by your hourly rate. A task with an
  optimistic time under-charges every quote it appears in.
- **The description is what the customer reads.** Task descriptions appear on
  the quote the customer sees and on the printed work checklist the cleaner
  works from, so they are worth writing as sentences rather than shorthand.

A task can belong to several room types. Changing it in the library changes it
everywhere it is used **from then on**: quotes already written keep the times
they were written with, so tuning the library never silently reprices something
a customer has already agreed to.

## Layouts

A layout is a set of rooms, such as a 4-bedroom house or an apartment type.
Start a quote from one and remove what the job does not need, or add it as a
repeated unit, such as 40 apartments in a complex. See
[Building a quote](/docs/building-a-quote).

Layouts live in **Settings**, under **Essentials for your next job**, in
**Layouts**. Choose **New layout**, name it, add its rooms, and choose **Create
layout**. Change one and choose **Save layout**. A hidden layout is kept but not
offered on quotes; tick **Show hidden layouts** to find it again. You can also
save the rooms on a quote with **Save these rooms as a layout**. A layout holds
up to 100 rooms.

## Names in two languages

Two different people read a room's name, and they do not always read the same
language. The office and the crew read the app in whatever language their own
browser asks for. Two people in one office can be looking at the same screen in
two languages. Meanwhile, the customer reads a quote written in the language your
company sends in.

So each room type and task holds its name in **both**. The field at the top of
the editor is your own wording: it is what a customer's quote, email and PDF
print, and it does not move. Underneath it is the same name in the other
language, which is what staff and crew see instead, including on the printed
work order, which is the sheet somebody is actually holding in a bathroom.

The starter library arrives with both filled in, so a bilingual crew is covered
on day one without anybody typing forty task names twice. Rooms and tasks you
add yourself have whichever languages you fill in; leave the second box blank
and everybody sees the first. Renaming a room directly on a quote replaces the
name with the one string you typed: pick the room type again if you want both
languages back.

## Sizes and conditions

Rooms are not all the same size and not all in the same state, so the library
does not try to hold a separate template for every combination. Instead, each
room on a quote carries a **size** and a **condition** multiplier: a large room
takes longer than a medium one, an extreme-condition room longer still. Those
multipliers are applied by the system rather than typed in, which is why a
mis-keyed number can never produce an absurd price.
[Pricing a quote](/docs/pricing-a-quote) covers how they combine.

## Letting the app tune the times for you

The app records how long visits actually take when they are marked complete, and
compares that with what was estimated. On a paid plan with AI assists switched
on, it will suggest bounded adjustments to your task times from that comparison.
You accept or dismiss one at a time. Quotes you have already sent never
change; only the ones you send next get sharper. See
[AI assists](/docs/ai-assists).

---

---
title: "Getting help inside the app · BlastoClean docs"
description: "The help assistant answers office roles on every plan where Help is enabled, using this documentation and linking to the longer answer in English or Spanish."
url: "https://www.blastoclean.com/docs/getting-help"
---

# Getting help inside the app

Getting started · Web and mobile · 3 min read · Updated October 18, 2026

**Office roles can open Help from web navigation or More → Help on the phone where Help is enabled. It uses this documentation, cites articles and offers a support contact. Native Help requires unlocked company access.**

Office roles can ask the help assistant about these articles in plain words
where Help is enabled. Crew accounts do not show the assistant.
"How do I add a room?" mid-quote beats opening a new tab
and scanning an index, so the answer comes to where you already are.

## Where it is

**In the web app**, choose **Help** from navigation where it is enabled.
On a narrow phone screen it is under **More**. It opens the Help page.
The conversation is kept while you move between pages; **Start over** clears it.

**On the phone**, office roles can open **More → Help** while the company's
app access is unlocked and Help is enabled. Answers stream in as they generate,
and the thread keeps while you step out to try the advice and come back.

## What it answers with

The assistant uses these help articles and is instructed to cite the article
that answers your question. On the web a cited link opens in a new tab; on the
phone an allowed documentation link appears as a chip that opens inside the app.

After a website correction is deployed, the assistant normally refreshes its
articles within about half an hour. If it cannot refresh them, it can use an
older copy. Open the linked article to check the current wording.

It answers in English or Spanish, following the language your app is set to.

## What it will not do

It is instructed to stay on using BlastoClean, say when the documentation does
not answer, and direct account, billing or unresolved problems to a person.

Like anything AI-written, an answer can miss: the linked article is the
authoritative version, which is exactly why answers cite one.

## A few practical things

- It is available to office roles on **every plan** where Help is enabled,
  and it uses **no [AI credits](/docs/ai-assists)**:
  asking for help is never metered work.
- In the **web app**, office roles can still ask for help when a subscription
  lock is showing, including how to update a card. The native app's subscription
  lock prevents opening Help; use the web app or contact support below.
- **Start over** clears the conversation whenever you want a clean slate; on
  the web, closing the tab does the same.
- There is an hourly cap on questions per person, generous enough that you
  will not ordinarily meet it: it exists so the assistant stays available for
  everyone.

## Talk to a person

Call or text [(585) 200-6753](tel:+15852006753).
[Text (585) 200-6753](sms:+15852006753).

## Included usage and safety limits

These paired provider spending allowances and usage displays are proposed for a coordinated release. They are not live configuration changes; current deployed behavior stays in effect until that release.

AI includes 250/700/1,500 fixed action credits on Starter/Pro/Business and a separate $4/$6/$12 monthly provider spending allowance, pooled across the company. Credits measure actions, not dollars, and do not guarantee a number of walkthroughs. Both limits apply. Failed customer-credit refunds do not erase billed attempts or retries. Settings shows usage; exhaustion pauses the assist with no automatic overage charge. Help uses a separate $1 monthly company safety allowance. Shared deployment safety limits may also pause service.

## Suggest an improvement

When **Help shape BlastoClean** is enabled, open the feedback board from the
web menu or native Settings. Search existing ideas, browse Ideas, In progress,
Preview or Completed, vote on an existing request, or use **Suggest an idea**
to describe your own. **My feedback** shows your submissions and their status.
The board shows your current submission allowance. A vote or a status is not
a delivery promise. Use the support contact above for account or payment problems.

---

---
title: "Quick Quote and Magic Quote walkthroughs · BlastoClean docs"
description: "Use Quick Quote for a fast adaptive estimate from a description, photos or both, or capture a Magic Quote walkthrough with photos, video and voice. Both use your configured library and require a missing-room check."
url: "https://www.blastoclean.com/docs/magic-quote"
---

# Quick Quote and Magic Quote walkthroughs

Quoting · Web and mobile · 10 min read · Updated October 18, 2026

**Quick Quote turns a free-form paragraph, photos of the property or both, plus adaptive follow-ups, into a complete draft; Magic Quote is the separate on-site walkthrough with photos, video, voice notes and traceable evidence.**

BlastoClean offers two distinct AI-assisted ways to skip the blank form.

- **Quick Quote** is the fast option for a property you can describe or
  photograph. Type one loose paragraph, add photos of the property, or both, work
  through prioritized gaps and complete the required Room Check. Quick Quote is
  available on **Starter, Pro and Business**, not Free.
- **Magic Quote** is the on-site walkthrough for the property in front of you.
  Walk it with photos, short video, voice notes and typed lines, then review
  every finding beside its evidence. Magic Quote is available on **Pro and
  Business**.

Both finish in the same quote editor, use AI credits and are priced entirely by
your configured room and task library. Quick Quote reads each photo you add once,
for one credit, and drafts from what the photos show; it has no video or audio.
A Magic Quote walkthrough reads every capture separately, keeps each finding
beside its evidence and is the heavier route. Actual usage appears in
**Settings → AI**.

## Where to find them

In the web app, both start from the same place as every other quote:
**Quotes → New quote**. That page opens on a choice between the three ways to
make a quote (**Magic Quote**, **Quick Quote** and **Build it yourself**) and
only offers the ones your plan and AI settings allow. An owner sees the others greyed out with the
reason and a link to fix it; everybody else simply sees what they can use, and
when that is one thing there is no choice to make. The page remembers the way
you chose last, so a cleaner who always walks and an office that always types
each land on their own.

There is no separate Magic Quote menu in the web app. The walkthroughs your
company has walked are under **Quotes**, on the **Walkthroughs** tab beside the
quotes themselves. That is where a walk is resumed, opened for review, or
deleted.

In the phone app the layout is its own: the **Quotes** tab has a **Magic Quote**
button in its top corner, which is both where a walkthrough starts and where
past ones are listed, and **New quote** on the same tab offers Quick Quote and
the editor. See [Quoting from your phone](/docs/quoting-from-your-phone).

When nobody can walk the home, the customer can send photos of it instead, and
on Pro those photos are read and priced the same way. See
[Photo quotes](/docs/photo-quotes).

## Quick Quote: describe it in one paragraph

Open a new quote and choose **Quick Quote**. Type the facts in the order
they come to you:

> 2.5 baths, 4 bedrooms, about 3,000 sq ft, very clean, weekly cleans.

Shorthand is fine. You can paste what the customer texted, use your device's
dictation when available, or include priorities, exclusions and anything else
the customer mentioned. The structured pass shows the total size, bedroom and
bathroom counts, named rooms, condition and frequency. Other details remain
visible in the review notes instead of silently changing scope or price.

### Follow-ups are a coverage check, not another form

Quick Quote ranks missing information by what could change the scope or
price, then presents a short, prioritized batch:

- **Likely rooms:** kitchen, living or family room, dining room, laundry or
  mudroom, basement and garage for a home; reception, restrooms, offices, break
  room and storage for a workplace.
- **Cadence and condition:** one-time, weekly, every two weeks or monthly;
  light, average, heavy or extreme condition.
- **Required configured measurements:** the actual per-room area or fixture
  count when a selected task in your library needs one.
- **Review notes:** pets, access, special surfaces, add-ons and other unusual
  details stay visible for a person to apply; Quick Quote does not invent work
  or pricing from them.

Choose several room suggestions in one tap, or type a correction for a missing,
wrong or excluded room. Excluded rooms remain visible and unpriced. Facts
already captured in the opening paragraph reduce repeated questions.

Room suggestions appear in **Room Check** for confirmation, and anything still
undecided stays visible. **Generate quote** stays unavailable until the required
Room Check is complete. Review the coverage or add
the sunroom, workshop or second kitchen that may be missing.
The assistant proposes the shape of the job. Your own list decides which rooms
and tasks are allowed, and the same math as a hand-built quote decides every
minute and cent.

### Add photos, with or without a description

Under the description, **Add photos** takes up to 15 photos of the property from
your phone or computer. Each one is read as it uploads, for 1 AI credit: which
room it shows, its condition, and things that change the work, such as an oven
or clutter. A photo shows its result as soon as it is read.

- A photo that shows a person or a document is kept out of the draft, and so is
  one that does not show the place being cleaned. It stays in the list,
  blurred, with the reason.
- You can start from photos alone. Type a few words as well when you know
  something the photos cannot show, such as how often, or the square footage.
  Measurements only ever come from what you type.
- **Draft rooms** waits until every photo has been read. Remove a photo you do
  not want before you start; once the Quick Quote starts, its photos stay with
  it.
- A photo not read because the month's AI credits or today's AI limit ran out,
  or AI was turned off, is not charged. If that clears while the photo is still
  kept (a day after it was added), **Read again** reads it; after that, add it
  again. A photo whose upload failed is tried again or removed before you start.
- Photos you added but did not use are still there if you come back to the
  page, and are deleted a day later.

The draft is built from what the photos show, never from the photos
themselves, so the price still comes only from your list. Start a separate
Magic Quote walkthrough when you want video, voice notes or every finding kept
beside its evidence.

![Web app: Walkthrough list, with synthetic records.](/images/docs/magic-quote-en-20261019.webp)

## Magic Quote walkthrough: starting one

In the web app, open **Quotes → New quote** and choose **Magic Quote**; in the
phone app, tap **Magic Quote** on the Quotes tab. Pick the customer and
property if they are already on file, or don't: a walkthrough is the one way
to start that needs neither, and the button says which of the two is about to
happen. Press **Start walkthrough** and you are on the capture screen. On a
phone with no signal the walk starts anyway, saved on the device, and is sent
when you are back in range.

![Web app: New quote options, with synthetic records.](/images/docs/quote-new-magic-phone-en-20261019.webp)

## Magic Quote walkthrough: capturing

There are four things you can capture, and no form:

- **Photos**: through the system camera you already know how to use.
- **Video**: short clips, for the things a still will not show.
- **Voice notes**: talk while you walk. A successfully transcribed, supported
  recording shows text beside it: which room you are in, what the customer
  asked for, or what they said to skip. Transcription availability and safety
  limits apply. If no transcript is available, keep the recording and add a
  typed note with the details needed for the quote.
- **Typed lines**, for when talking would be awkward.

Three properties of the capture matter more than they sound:

**An open walkthrough keeps working with no cell signal and no Wi-Fi.** In a
basement, a back bedroom, a dead spot in the hall or airplane mode, keep
capturing and the app catches up when the connection returns.

**Closing the app has one current limit.** Pending photos, voice notes and typed
notes stay saved when you close and reopen the app, then resume uploading
without creating duplicates. A short video that has not finished uploading is
not restored after the app closes, so leave the walkthrough open until that
upload finishes.

**You can start with nobody on file.** Knocking on a door is an ordinary way to
get work, and a doorstep is the worst place to make somebody fill in a customer
form. Start the walkthrough with no customer at all; the walk itself proposes
the record afterwards (a name somebody said, a number they read out, the
address on the mailbox) and the review screen shows that as an editable form
beside a search of the customers you already have. Nothing is written to your
customer list until a person presses the button.

![Web app: Walkthrough capture, with synthetic records.](/images/docs/magic-quote-walkthrough-en-20261019.webp)

## Reviewing and the missing-room check

Review comes before price in both products. Quick Quote reviews the parsed
property and room coverage. A Magic Quote walkthrough also shows:

- **A timeline** of every photo, clip and recording in the order you took it,
  with transcripts beside recordings that have been successfully transcribed.
  Findings based on a transcript link to the recording evidence; a recording
  without a transcript remains available to review yourself.
- **A readiness score**, and the findings it is least sure about, put in front
  of you before they can affect a price. Confirm one, remove it, or fix the
  wording. Nothing you rejected gets quoted.
- **Changes of mind, as changes of mind.** _"We don't need the refrigerator"_ at
  10:05 and _"actually, let's do the refrigerator"_ at 10:23 is one customer
  changing their mind, not two contradictory notes. Both are shown and you say
  which stands.
- **A split between what the customer sees and what your crew sees.** Your
  honest note about the state of the master shower stays internal; the
  customer's quote says the shower needs extra detail on the first visit.

![Web app: Walkthrough review, with synthetic records.](/images/docs/magic-quote-review-en-20261019.webp)

The third line of that summary is the feature earning its keep: _"The
refrigerator interior was first excluded at customer request and then reinstated
later in the walk: the later position stands and should be confirmed."_ Two
sentences said twenty minutes apart, read as one person changing their mind, and
put in front of somebody to confirm rather than quietly picked.

Every Quick Quote and every Magic Quote walkthrough opened in the current app must pass the same blocking
missing-room validation before generation. Room Check compares the proposed
rooms with the property facts and configured library, keeps unresolved coverage
visible, and refuses to generate until the required check is complete. Exclude a
room that is present but out of scope, or add the missing room, then try again.

If you open a Magic Quote review before the walkthrough has finished being
organized, it tells you which half of the work is still running and counts the
wait down, rather than showing you an empty page that reads like "the walk found
nothing". A pass that failed says why, above the button that retries it.

## Pricing, and who decides

The draft is priced by your own room and task library, your hourly rate and your
multipliers: the same math as every other quote. AI may
structure and suggest; it never writes a price. Magic Quote can suggest a range
beside your number, but it can never _be_ the number. From there it is an
ordinary quote: see [Building a quote](/docs/building-a-quote) and
[Pricing a quote](/docs/pricing-a-quote).

![Web app: Walkthrough list, with synthetic records.](/images/docs/magic-quote-phone-en-20261019.webp)

You can also talk to the walkthrough afterwards: _"Take 10% off."_ _"Did she mention windows?"_ Questions are answered with the
capture they are drawn from, and edits go through a fixed set of instructions
rather than free rein.

## What happens to the photos and recordings

They are of the inside of somebody's home or business, and they are treated
that way. They
are never public, they are never given a URL that would work without a session,
and you choose how long they are kept: thirty days, ninety, a year, or as long
as the customer is a customer.

## Included usage and safety limits

These paired provider spending allowances and usage displays are proposed for a coordinated release. They are not live configuration changes; current deployed behavior stays in effect until that release.

AI includes 250/700/1,500 fixed action credits on Starter/Pro/Business and a separate $4/$6/$12 monthly provider spending allowance, pooled across the company. Credits measure actions, not dollars, and do not guarantee a number of walkthroughs. Both limits apply. Failed customer-credit refunds do not erase billed attempts or retries. Settings shows usage; exhaustion pauses the assist with no automatic overage charge. Help uses a separate $1 monthly company safety allowance. Shared deployment safety limits may also pause service.

A recording is preserved if it cannot be safely transcribed. Recording does not guarantee a transcript: supported formats, transcription availability and safety limits apply. If transcription is unavailable, listen to the original and add the relevant details as typed notes.

The public demo pairs 75 action credits per visitor generation with a $2.50 provider spending allowance. It also shares a $10 monthly demo pool and the platform safety limits. The demo also limits input size per assist while retaining the selected model and output quality; oversized input is refused with captures preserved. Both credit and spending limits apply; shared exhaustion can pause an assist before all credits are used. Demo usage never creates an overage charge.

---

---
title: "Building a quote · BlastoClean docs"
description: "The three steps of the BlastoClean quote builder (how often, rooms, and send) with one Send quote button and a running total as you work."
url: "https://www.blastoclean.com/docs/building-a-quote"
---

# Building a quote

Quoting · Web app · 8 min read · Updated October 19, 2026

**A quote is built in three steps: how often, rooms, and send. Add rooms from your library, tick the tasks, and press Send quote. The total updates as you go.**

A quote is built the way you think about a job. Room by room. Task by task.
How dirty it is. Start it yourself, describe the place in a paragraph with
Quick Quote, or walk it with Magic Quote. All three land in the same builder.

The builder has three steps. You can jump between them. The numbers are a map,
not a trap.

## Choose how to start

**Quotes → New quote** opens on the choice. Three cards, one for each way in.
A plan without Quick Quote or Magic Quote, or a company with AI turned off,
shows those cards locked, with the reason, if you are the owner. Other people
do not see them. When only one way is open, the page skips the question and
starts the quote. It remembers the way you chose last time. A link can ask for
one outright. **Start walkthrough** on the Walkthroughs tab opens here with
Magic Quote already chosen.

- **Build it yourself** when you want room-by-room control.
- **Quick Quote** when you can describe the place, have photos of it, or both.
  Type the rooms, square footage, condition, service, and how often, in
  ordinary words, and add up to 15 photos. Answer a few follow-ups, finish the
  required Room Check, and review the draft. It uses AI credits, one for each
  photo. It is on Starter, Pro, and Business. It is not on Free.
- **Magic Quote** when you are on site and photos, video, or voice notes will
  help. It uses AI credits. It is on Pro and Business.

All three use your own room and task library. The same pricing supplies every
task, minute, and price, on the phone and on the web. The two AI routes have to
pass the missing-room check before a quote can be made.

![Web app: New quote options, with synthetic records.](/images/docs/quote-new-en-20261019.webp)

## 1. How often?

The first question is how often you would clean this place. You can change it
later.

- **Just once**
- **Every week**
- **Every two weeks**
- **Once a month**

The same step holds the customer, the quote date, the date the quote is good
until, and the address. Start from a customer you already have, or add one
here. A customer can have several addresses. The quote is for one of them. The
address is where the access notes live: parking, the alarm code, the dog.

You can also arrive here already filled in. A
[quote request](/docs/quote-requests-from-your-website) from your website, a
Quick Quote description and its Room Check, or a
[Magic Quote walkthrough](/docs/magic-quote) can all do that.

## 2. Rooms

Rooms and tasks are on one step. The panel on the right is the running total,
broken down by room. It updates as you work.

![Web app: Quote rooms and tasks, with synthetic records.](/images/docs/quote-editor-rooms-en-20261019.webp)

At the top of a quote priced by the visit, **Show first visit task option**
adds a **First visit only** tick to each task, for work done just once, such as
baseboards or inside the cabinets. It also turns on the first clean price on
the Send step. Turn it off and the first clean price goes, and so does every
tick. See [First clean price](/docs/first-clean-alternatives).

Add rooms from your library (Kitchen, Full Bathroom, Office) or name an area
of your own. Each room carries:

- **How many.** Two matching half baths are one row with a quantity, not two
  rows. Once a room type is in the quote, its add button raises the count on
  that card, and a minus next to it takes one off and says how many are in the
  quote. On a card with more than one, **List one separately** gives one of
  them its own card. A quote holds up to 200 room cards.
- **Size**, from small to extra large. That changes the time.
- **Condition**, from light to extreme. That changes the time too.
- **A fixed price, if you want one.** Know a room is $45 no matter what the
  tasks add up to? Set it. The room is charged at that. Its time still counts
  toward the visit, because somebody still has to be in there.

The rooms you added are under **In this quote · 3 rooms**. The count includes
every copy of a repeated unit. Tap a room to change its size, condition and
tasks. Cards start closed, with a summary line: the tasks ticked, the time, and
the size and condition when they are not typical. **Open all** and **Close
all** do every card at once.

### Start from a layout

A layout is a set of rooms, such as a 4-bedroom house or an apartment type.
**Start from a layout** is open when the quote has no rooms yet. Pick the
closest home or unit. Its rooms are added to this quote. Then remove or change
what this job does not need.

If the quote already has rooms, the app asks **Use 4-bedroom house on this
quote?** Choose **Replace the rooms already here** or **Add its rooms to the
ones already here**. A quote holds up to 200 rooms. The list shows the layouts
for this kind of quote. Tick **Show every layout, for homes and businesses** to
see them all.

When you tick **This job has repeated units (e.g. 40 apartments)**, the list
becomes **Add a layout as a unit**. The layout goes in as its own unit, and the
number above it is how many of that unit.

Built a set of rooms you will quote again? Choose **Save these rooms as a
layout**. Any quote can start from it. Edit or hide it in **Settings**, under
**Layouts**. A layout holds up to 100 rooms. Owners, managers and anyone else
who can edit your library can save one.

### Tasks on the room

![Web app: Task selection, with synthetic records.](/images/docs/quote-editor-tasks-en-20261019.webp)

Tick what applies. Each task shows its minutes. You can change the minutes for
this quote without changing the library. Add a task, remove one, or move it up
or down.

The extra fields sit under **Advanced** on a business quote, and under **More**
on a home quote:

- **Note for the customer** appears on the quote they see.
- **Note for your crew** is internal. It appears on the printed
  [work checklist](/docs/work-orders-and-visit-photos). The customer never sees
  it.
- On a business quote, this is also where you set how often that task happens,
  and how the time is counted.

### Start a business quote from a common job

On a business quote, **Start from a common job** offers four starting points.
Picking one fills the rooms, the tasks, how often you come, how many visits a
week, whether they pay by the month or by the visit, and the agreement. You can
change any of it. If the quote already has rooms, the app asks before it
replaces them.

- **Office.** Lobby, restrooms, and desks. Three times a week.
- **Medical office.** Waiting room, exam rooms, and restrooms. Weekdays.
- **Shop.** Sales floor, checkout, and restrooms. Weekdays.
- **Move-out.** A one-time deep clean after someone moves.

The rest of commercial quoting (square feet, a frequency on every task, and
the agreement) is in
[Commercial cleaning mode](/docs/commercial-cleaning-mode).

## 3. Send

The last step says the price in plain words. They pay an amount each visit, an
amount a month, or an amount for this one visit.

**Advanced** holds the math: discount, fees, tax, the hourly rate, and, on a
business quote, the agreement. Most people can skip it.
[Pricing a quote](/docs/pricing-a-quote) covers that screen.

![Web app: Quote send review, with synthetic records.](/images/docs/quote-editor-review-en-20261019.webp)

Then you see the quote the way the customer will see it. One button sends it:
**Send quote**. If there is an email address, that button emails the quote and
marks it sent. On Pro and Business, if there is no email and the customer has
agreed to texts, the same button texts it. **Text instead** is there on those
plans when you want a text on purpose. You can also copy a private link or download a PDF. See
[Sending a quote](/docs/sending-a-quote).

## Accepting and requesting a visit

On Starter and above, customers accept the quote and request a date and time.
The business must approve the request before the visit is booked. In the web app,
**Review requested time** opens the request for approval. The mobile app has the
same review.

Optional instant booking is off by default. When enabled, the full visit must
fit working hours and avoid current bookings; unavailable times stay requests.
See [Online acceptance and signatures](/docs/online-acceptance-and-signatures)
and [Scheduling a visit](/docs/scheduling-a-visit).

On Free, the button says **Yes, I accept**, and no visit is booked. You book
the job yourself: an approved one-time quote shows a job card, and in
**Book it** you pick the day and the start time. See
[Scheduling a visit](/docs/scheduling-a-visit).

## Saving, and the numbers

The quote saves as you go. The header says so. Every total is worked out the
same way on the phone and on the web. That is why the two cannot disagree about
a price.

## Find a quote again

On **Quotes**, search and choose status and sort order, then use the page arrows
to reach older work. Opening the editor and returning, browser Back/Forward and
reload keep that web list view. **Retry** after a failed list read keeps those
choices. Empty search results offer a filter reset; they do not mean all quotes
have disappeared.

Bulk selections cover the visible page only. Moving to another page or changing
search, status or sort clears the selection so you can review exactly what an
action will affect. The native Quotes list has its own search, status and paging;
these web browser-history and bulk-selection instructions are for the web.

![Web app: Quote list and paging, with synthetic records.](/images/docs/quotes-page-en-20261019.webp)

![Web app: Quote list and paging, with synthetic records.](/images/docs/quotes-pagination-phone-en-20261019.webp)

### Delete a quote

Owners and managers can delete a quote. On its row in **Quotes**, open **More
actions** and choose **Delete quote**. It takes two steps.

1. **Delete quote 1042?** explains what happens. The quote leaves the active
   lists and its public link stops working. The customer, property, jobs,
   invoices and payment history are kept. The app refuses while quote payments
   are not refunded, while a single job is booked or completed, or while a
   canceled single job still holds a payment.
2. Choose **Continue to final confirmation**, tick **I want to delete quote
   1042.**, and confirm. You cannot restore this quote in the app.

The mobile app has the same two steps.

---

---
title: "Pricing a quote · BlastoClean docs"
description: "How BlastoClean turns rooms and tasks into a price: labor time, size and condition, fixed room prices, discounts, fees, tax, a price for each schedule, and a price change with a paper trail."
url: "https://www.blastoclean.com/docs/pricing-a-quote"
---

# Pricing a quote

Quoting · Web app · 5 min read · Updated October 19, 2026

**A quote is priced as ticked task minutes times size times condition times your hourly rate, plus any fixed-price rooms and fees, less discounts. You can show a price for each schedule, and any price you set by hand keeps the calculated total, the reason, and who set it.**

Nobody should have to trust a number they cannot rebuild. This is how a
BlastoClean total is worked out, in the order it happens.

The math lives under **Advanced** on the Send step of the
[quote builder](/docs/building-a-quote). The line above it already says the
price in plain words. Most people can skip Advanced.

![Web app: Quote pricing, with synthetic records.](/images/docs/quote-editor-pricing-en-20261019.webp)

## The calculation

1. **Task minutes.** Every ticked task on every room contributes its time.
2. **Size and condition.** Each room's minutes are multiplied by its size
   multiplier and its condition multiplier. A large room at ×1.25 in extreme
   condition at ×1.50 takes 1.875 times the base time.
3. **Labor.** Total minutes × your hourly rate, either the one from
   [Settings](/docs/setting-up-your-company), or a rate set on this quote alone.
4. **Rooms priced individually.** A room with a fixed price contributes that
   amount instead of its labor. Its time still counts toward the visit's
   length, because somebody still has to be there for it.
5. **Fees**, then **discount**, then **tax**.

Every one of those figures is shown in the running total panel, broken down by
room, while you work, and it is recalculated every time you change something.
That is why the phone app and the web app can never produce different numbers
for the same quote.

One thing deliberately never enters that arithmetic: **crew size**. Set how
many people you plan to send and the quote shows the time on site: the labor
divided across the crew, which is also what booking the job puts on the
schedule and what the customer's copy promises. The price is built from labor
minutes alone: three cleaners for two hours bill the same six hours one cleaner
would.

## Or price by the square foot

Larger homes and offices are often easier to price by size. On the quote's
pricing step, set **Pricing mode** to **By square foot**, then enter the
**Measured square feet** and the **Rate per square foot**. The price is the
square feet times the rate, and the rate has to stay inside the minimum and
maximum you set in Settings. Your rooms and tasks still set how long the visit
takes. Monthly quotes can be priced by the square foot too: the monthly price is
the price for one clean times the cleans in a month.

Some quotes stay hourly, such as quotes with repeated room groups or
tax-exempt tasks. Choosing square-foot pricing clears fixed room prices;
switching back to hourly prices those rooms by time. See
[Hourly and area pricing defaults](/docs/size-pricing) for the rates, the size
where quotes switch to square feet, and the full list.

## Manual adjustments

Two escape hatches exist for the jobs that do not fit the model, and both leave
a visible mark rather than quietly changing a number:

- **A manual time on a room.** Know the master bathroom takes 45 minutes
  whatever the tasks add up to? Set it. The quote shows plainly that the figure
  was set by hand.
- **A fixed price on a room.** As above, but for the amount rather than the
  time.

## A price for each schedule

Repeat work is cheaper per visit than a one-off. The way this trade sells it
is a menu: $250 once, or $212 a visit if you come every week. A quote priced
per visit can offer that. Up to four choices: just once, every week, every two
weeks, once a month. Each has its own price per visit.

On the Send step, open **Advanced** and turn on **Show a price for each
schedule**, under **Price by how often**. Set the discount each schedule earns,
as a percent or an amount off the quote as built. The one-time choice is the
quote as built unless you give it an adjustment of its own. Every price runs
through the same math as everything else, tax included, and updates as you
work. Set the discounts you usually offer once, in **Settings → Pricing**, and
new quotes can start with the choices already on.

The customer picks one when they say yes. That choice becomes the price. The
quote's total is reworked to it. The saving shows as its own line ("Weekly
rate"). On Starter and above, the visit follows the chosen frequency once staff approve
the requested time or optional instant booking confirms it after checking working
hours and current bookings. On Free, the customer accepts without requesting a
time; staff book the job manually afterward. See
[Online acceptance and signatures](/docs/online-acceptance-and-signatures).

Those choices and a hand-set total cannot be combined. The choices are
calculated prices. A hand-set total would argue with them.

## Overriding the total

An owner or a manager can set the final price of a quote by hand. What is
stored is not just the new number. The **calculated total**, the **price you
set**, the **reason**, and **who set it** are kept together. Six weeks later,
when somebody asks why this house was $500 and the matching one next door was
$615, the answer is on the quote.

Whether someone may do this at all is a matter of their role. See
[Team, roles and permissions](/docs/team-roles-and-permissions).

## Revisions

Editing a quote the customer has already accepted creates a **revision**. The
version they agreed to is never lost and never quietly replaced, which matters
the first time there is a disagreement about what was included.

## A range before your own rates

If you do not have a task list yet, the
[free cleaning quote calculator](/free-cleaning-quote-calculator) sketches a
low-to-high range from bedrooms, bathrooms, square feet, how often, and the
type of clean. It stays in the browser and needs no account. The assumptions
are written on that page. That range is not a BlastoClean quote. A quote in
the app uses your rooms, your tasks, and your hourly rate, and BlastoClean
does the math.

An office or a building is a different sketch. The
[free commercial cleaning bid calculator](/free-commercial-cleaning-bid-calculator)
turns square feet, visits per week or per month, and what you pay per hour into
a monthly bid. The numbers it starts with are examples. It is one speed for the
whole building, not a quote from your task list.

## Profit on one job

Before you have a month of visits in the app, the
[free cleaning business profit calculator](/free-cleaning-business-profit-calculator)
turns the price you charge, what you pay the crew, supplies, and the drive into
profit per job and per month. It stays in the browser and needs no account. The
numbers it starts with are examples. That sketch is not the Profit by place
report, which needs completed visits with time recorded.

## Card fees and tips

A percentage fee for paying online by card, and tips, are both configurable and
both off by default. They are covered in
[Tips, fees and refunds](/docs/tips-fees-and-refunds), including the rule that
a card fee is disclosed to the customer on the quote and again at checkout,
rather than appearing on a statement as a surprise.

---

---
title: "Quoting from your phone · BlastoClean docs"
description: "Build and send a quote from the iPhone or Android app, start a business quote from a common job, and book the first visit when the customer says yes at the door."
url: "https://www.blastoclean.com/docs/quoting-from-your-phone"
---

# Quoting from your phone

Quoting · Mobile app · 3 min read · Updated October 18, 2026

**The phone builds a quote on one screen: how often, the rooms and tasks, then Send quote. A business quote can start from a common job. Requested visit times can be reviewed too, and the price matches the web app.**

The phone app is not a viewer. It builds a quote from nothing and sends it,
without going back to a desk.

![Native UI preview: Quote list and paging with synthetic records.](/images/docs/mobile-quotes-en-20261019.webp)

## The list

The Quotes tab is every quote you have: search by number, customer, or address, and
filter by status: All, Draft, Ready, Sent, Viewed and the rest. Every row
carries the quote number, the customer, the property and the total, so you can
tell two Johnsons apart without opening either.

Two things sit in the top corner: the **leads inbox**, badged with the number of
quote requests still waiting for an answer (see
[Leads and customers on your phone](/docs/leads-and-customers-on-your-phone)),
and **Magic Quote**.

## Building one

![Native UI preview: Quote details with synthetic records.](/images/docs/mobile-quote-detail-en-20261019.webp)

The phone puts the quote on one screen, not a row of steps.

1. **How often?** One time, every week, every two weeks, or once a month.
2. Add rooms from your company's room list, or name an area of your own. Tick
   tasks on and off. A task row shows the name and the minutes. Add one, remove
   one, or move it up and down. How often that task happens, and how the time
   is counted, sit under **Advanced**.
3. **Send quote** emails it or texts it.

The math behind the price sits under **Advanced**. Most people can skip it.

On an empty business quote, **Start from a common job** offers four starting
points. They show only while the quote has no rooms yet. Picking one fills the
areas, the tasks, how often you come, and what you both agree to. You can
change any of it. A second tap does not add the rooms again.

- **Office.** Lobby, desks, restrooms, and the break room. Every week.
- **Clinic.** Waiting room, exam rooms, and restrooms. Every week.
- **Store.** Sales floor, fitting rooms, and the stock room. Every week.
- **After a build or a move.** One visit after construction or moving out.

### Layouts and room counts

Native versions with **Start from a layout** can add saved rooms and tasks to
home or business quotes too. If rooms are already present, choose whether to
replace them or add the layout's rooms. People with library-write permission
can use **Save these rooms as a layout**. The commercial presets above remain
separate.

Use the count controls to add matching rooms, and split one off for different
work. Room summaries and **Open all** / **Close all** help you review a large
quote. For availability, see [The mobile app](/docs/the-mobile-app).

**The price matches the web app.** Each edit uses the same pricing, and the
phone shows the totals it gets back. It does not work out a separate price on
the phone.

## Accepting on the customer's behalf

Sometimes the customer says yes while you are standing there. Asking them to
go back to a desk and tap a link is silly. **Accept and book** does both:

![Native UI preview: Accept and book confirmation with synthetic records.](/images/docs/mobile-accept-and-schedule-en-20261019.webp)

The box shows who pays what, how often you come, the first day, and the start
time. **Book it** puts the first visit on the calendar. They will not be asked
to accept it online, and **the yes is recorded against your name**. Six weeks
later it says who agreed to what.

The app will not book the same quote twice. If that day is already taken, the
quote stays accepted and you pick another first day.

Booking carries on into [Scheduling a visit](/docs/scheduling-a-visit) and, for
regular work, [Recurring schedules](/docs/recurring-schedules).

## Magic Quote on the phone

The phone is where [Magic Quote](/docs/magic-quote) belongs, because it is the
thing with the camera and the microphone in it. Capture is three targets and no
form (photo, voice note, and two text shortcuts) and it works with no cell
signal and no Wi-Fi at all.

## Customer time requests

Customers accepting the public quote request a time for approval by default.
Tap **Review requested time** on an accepted quote, review or change the requested
date and time, then book to approve it. Mobile **Settings** also has the optional
instant-booking switch. It is off by default and the server enforces working
hours and existing bookings. See [Online acceptance and signatures](/docs/online-acceptance-and-signatures).

---

---
title: "Photo quotes · BlastoClean docs"
description: "Customers send photos of their home from your link. On Starter they land in your request inbox; on Pro they are read, priced with your own rooms and rates, and waiting for you to send a firm price or a range."
url: "https://www.blastoclean.com/docs/photo-quotes"
---

# Photo quotes

Quoting · Web and mobile · 6 min read · Updated October 18, 2026

**Share your photo link and customers send photos of their home without an account; on Pro the photos are read and priced from your own library, and you send a firm price or a range, after review and send confirmation.**

Some customers will not wait for a walkthrough, and some jobs are not worth
one. Photo quotes let a customer show you the home from their phone, and let
you answer with a price while they are still deciding who to call.

## The photo link

Photo quotes use your quote request link, one step further: if your request
page is `/r/your-link`, your photo page is `/r/your-link/photos`. Find it, copy
it and switch it on or off in **Settings > Photo quotes**. Share it on your
website, in your email signature, and in your replies to anybody who asks "how
much?" See [Quote requests from your website](/docs/quote-requests-from-your-website)
for the request link itself.

The customer:

1. Leaves a name, an email address and the address of the home. The price is
   emailed, so the email address is required. They can also add a phone
   number, the type of home, how many bedrooms and bathrooms it has, and a
   note.
2. Adds photos from their phone. The page shrinks each one before sending it,
   uploads them one at a time, and shows the rooms you ask for: the kitchen and
   every bathroom, unless you change that. Until they tap **Send**, they can
   take any photo back out, even after reloading the page.
3. Taps **Send** and sees a receipt confirming that the photos arrived. The
   email and receipt say the quote will be emailed after review, without
   claiming somebody is reviewing immediately or promising a quick reply.

![Customer browser page: Photos received confirmation, with synthetic records.](/images/docs/photo-received-phone-20261007.webp)

They never make an account or download an app. The page is in English or
Spanish, following their browser. Starter takes up to 15 photos per request,
and Pro and Business take up to 30.

## On Starter: photos in your request inbox

Each submission arrives as a quote request like any other, marked **Photo
quote**, with its photos on the card. Convert it and price it the usual way, or
with Quick Quote. Nothing reads the customer's photos for you on Starter, and
they are not passed to Quick Quote: Quick Quote reads only the photos you add
to it yourself, for 1 AI credit each.

## On Pro: read, priced and waiting for you

On Pro and Business the photos are read before you see them:

- Each photo is tagged with the room it shows, how dirty it looks, and anything
  that changes the work, like a well-used oven or pets. A photo that shows a
  person or a document is kept out of everything after that, and stays blurred
  until you choose to look at it.
- The tags become rooms from **your** room library, with how many, how big and
  how dirty. Every room points at the photos it came from.
- Your pricing engine prices those rooms at your rates, exactly as if you had
  added them to a quote yourself. The AI never writes a number that becomes a
  price.
- A risk score says how much the photos leave to guesswork. See
  [Firm prices and risk](/docs/firm-prices-and-risk).

Reading uses AI credits: 3 for each batch of up to three photos, and 4 to turn
the tags into rooms, so a ten-photo home is about 16 credits. Reading sends
the photos to Anthropic, the AI service BlastoClean uses, and the upload page
tells your customer so before they add any. The photos are read only once an
owner has accepted how AI is used, in the notice the app shows. Until then, and
whenever AI is off or the month's credits are spent, the photos still reach
you, unread. Photos sent from a page that didn't say AI reads them are never
read, even once reading is on: price those yourself. See
[AI assists](/docs/ai-assists).

## Photo requests and review

Open **Requests** and filter the source to **Photo quote** where photo quotes
are enabled. The old Photo quotes link redirects to this filtered inbox.
Open a request's **Review** action to inspect its photos, current price and
risk. A low risk score does not send anything by itself.

Choose **Send firm price** or **Send range** in review, then check the recipient
and current price in the confirmation dialog before sending. If the price has
changed, refresh and review it again; an old preview is not authority to send.

## Reviewing one

The photos are on the left; tap one to see it large. On the right is what was
read: each room with how many, how big and how dirty, and the photos behind it.
Change any of those and the price and the risk are worked out again at once.
If the photos missed a room you know is there, add it from your library; if
they missed a task a room needs, like the inside of the oven, add it from that
room's own list.

Then choose one of four:

- **Send firm price.** The engine's price, with your firm-price terms.
- **Send range.** The price plus and minus your range width, confirmed when you
  arrive. Once the customer accepts and a visit time is approved or instantly booked, its visits are booked without a price,
  and completing one asks you for its final price.
- **Ask for more photos.** Tick what you need, add a note, and the customer
  gets an email with a link back to the same upload. You can ask twice.
- **Book a walkthrough.** The customer is told you would like to see the home
  first, and the request stays in your inbox to book the visit from.

Sending creates the customer, the property and the quote, the same way Convert
does in the request inbox, and emails the customer the quote link. On the quote
the customer reads, **Firm price** or **Price range** sits next to the number.
They accept it online like any other quote; see
[Sending a quote](/docs/sending-a-quote).

## The clock

Photo quotes keep an internal review target: 30 minutes during working hours
unless you change it in **Settings > Photo quotes**. For photos received while
you are closed, the target starts from your next opening. This helps the office
prioritize requests; the receipt does not promise a quote within that time.
If the target passes, the customer gets one update saying the photos are still
waiting for a quote, and the office gets its existing notification. The update
does not claim a quote has been sent.

## Try it on the sample house

Every plan, Free included, can open the sample house: from the card on
**Quotes**, or with **Try the sample house** on the Photo quotes queue. It is
six photos of a drawn home, read and priced with your own library and rates.
Nothing in it is a real customer, and it uses no credits.

## How long the photos are kept

Photos are deleted 90 days after the customer last sent photos, or after you last
asked them for more, together with the details they sent with them, unless the
customer accepted the quote they priced; then they stay with that quote. An
upload the customer started and never sent closes after a day, so nothing more
can be added to it, and is deleted 90 days after it was started.

## On the native app

Native versions with photo-quote review can inspect requests and choose a firm
price or range, ask for more photos or request a walkthrough. Sending asks for
confirmation and checks the current price. Room corrections stay on the web.
See [Native version availability](/docs/the-mobile-app).

---

---
title: "Firm prices and risk · BlastoClean docs"
description: "What a firm price promises and what a range promises, how the risk score on a photo quote is worked out, how to choose a risk preset, and how to word your firm-price terms."
url: "https://www.blastoclean.com/docs/firm-prices-and-risk"
---

# Firm prices and risk

Quoting · Web app · 4 min read · Updated October 6, 2026

**A firm price is what you will charge if the home matches the photos, a range is confirmed when you arrive, and the risk score on each photo quote tells you which of the two the photos support.**

A price from photos is a promise made without seeing the home. This article is
about deciding which promise to make. For how photo quotes arrive and how to
send one, see [Photo quotes](/docs/photo-quotes).

## Firm price or range

**A firm price** is the price you will charge if the home matches the photos.
The quote carries your firm-price terms, so the customer reads the condition
alongside the number. The built-in wording says the price holds as long as the
home matches the photos, and that you may revisit it before you start if there
are rooms the photos did not show, if the condition is very different, or if
work is added that the quote does not list.

**A range** is your price, plus and minus your range width (15% unless you
change it), rounded to whole dollars. The quote says the final price is
confirmed when you arrive and see the home. Use it when the photos are good
enough to be useful and not good enough to bet on.

Either way, the customer gets an ordinary quote: the rooms and tasks from your
library, priced by your engine, accepted online like any other. See
[Pricing a quote](/docs/pricing-a-quote) for how the engine prices rooms.

## How the risk score works

Each photo quote gets a score from 0 (nothing left to guess) to 1 (mostly
guessing). It adds up seven things, each with a fixed weight:

| What it looks at                       | Weight | Riskier when                                    |
| -------------------------------------- | ------ | ----------------------------------------------- |
| How sure the read is                   | 30%    | the photos are dark, partial or hard to read    |
| Rooms not photographed                 | 20%    | a room you require is missing from the photos   |
| Condition                              | 15%    | the home looks heavily soiled                   |
| Size uncertainty                       | 10%    | the square footage estimate is a wide band      |
| Price above your usual                 | 10%    | the price is well above your typical quote      |
| Past overruns                          | 10%    | jobs like this ran over before                  |
| New customer                           | 5%     | you have never worked for them                  |

Past overruns are not measured yet, so that part counts as zero for now.

Some findings rule out **Low risk** whatever the score says, because they are
exactly what a person should look at:

- the bedrooms or bathrooms found don't match what the customer said the home
  has, more or fewer,
- some photos are screenshots, stock pictures or not of a home at all,
- a photo could not be read (too large, damaged or missing), so it may show
  something the price leaves out,
- a photo was kept out of the read because it shows a person or a document,
  so it may show something the price leaves out too,
- a room the photos show, or a task added to one, is not in your library, so it
  cannot be priced,
- the property looks commercial,
- the photos don't make clear the property is a home,
- nothing priceable was found.

The review page shows the score, each part of it, and any of these findings,
so you can see why a photo quote landed where it did.

## Choosing a preset

**Settings > Photo quotes > Risk appetite** decides where the badges change
color:

| Preset             | Low risk up to | Check first up to | Above that |
| ------------------ | -------------- | ----------------- | ---------- |
| Careful            | 0.15           | 0.45              | High risk  |
| Balanced (default) | 0.25           | 0.55              | High risk  |
| Bold               | 0.35           | 0.65              | High risk  |

Low risk also needs every room you require in the photos. Start on
**Balanced**. If you find yourself adjusting most firm prices after the visit,
move to **Careful**; if almost nothing ever changes, **Bold** saves you looks
you do not need.

Which rooms you require is set on the same screen: the kitchen and every
bathroom by default, and every bedroom if you want it. Change it and the photo
quotes waiting on you are scored again under the new rule.

## Wording your terms

Your firm-price terms are saved on each quote when it is sent, the way a
quote's own terms are, so changing them later does not change a promise already
made. Good terms are short and specific:

- Say what the price is based on: the photos the customer sent.
- Say what would change it: rooms or areas the photos did not show, a
  condition very different from the photos, or added work.
- Say when you would raise it: before you start, never after.

Leave the box empty to use the built-in wording, in English or Spanish to match
the quote. Only an owner can change the terms or the preset, because together
they decide what the company can lose on a price it sends.

---

---
title: "Hourly and area pricing defaults · BlastoClean docs"
description: "Price by the hour for smaller spaces and by the square foot for larger ones, using your own rates."
url: "https://www.blastoclean.com/docs/size-pricing"
---

# Hourly and area pricing defaults

Quoting · Web and mobile · 3 min read · Updated October 19, 2026

**Set your own threshold and rate range, give a property its own rate if you like, and price per-visit or monthly quotes by the hour or by the square foot. You can also charge more for the first clean.**

Many cleaning businesses price a small apartment by the hour and a large home
or office by the square foot. Size pricing lets BlastoClean start each new quote
the way you would price it. It works for residential and commercial quotes,
whether you price each visit or a monthly agreement.

## Set your defaults

1. Open **Settings**, then **Pricing & quotes**.
2. In **Size pricing defaults**, tick **Use size-based defaults for new quotes**.
3. Enter your **Area threshold in square feet**, for example 2,500.
4. Enter your **Default rate per square foot**, **Minimum rate per square
   foot** and **Maximum rate per square foot**.
5. Select **Save pricing**.

Nothing changes until you save your own numbers. New quotes below the threshold
start hourly. Quotes at or above it start by the square foot. Quotes you
already wrote keep their prices. The owner sets these defaults.

## Give a property its own rate

Some buildings are harder or easier to clean than your usual job. Open the
property and enter a **Price per square foot for this property**. Leave it
blank to use your company's default.

New quotes for that property start with its rate. If the rate is outside your
minimum and maximum, the quote uses the nearest allowed rate. If you change the
property on a quote, the quote picks up the new property's square feet and
rate, and you choose the pricing mode again.

## Choose the pricing mode on a quote

On the quote's pricing step, find **Quote pricing mode** and choose the
**Pricing mode**:

- **Hourly**: the price comes from your task times and hourly rate, as usual.
- **By square foot**: enter the **Measured square feet** and the **Rate per
  square foot**. You can change the rate on each quote, as long as it stays
  within your range.

Square-foot pricing replaces the hourly labor. Your fees, discounts and taxes
still apply, and the estimated work time is kept for scheduling. If the size is
unknown or the property changed, choose a mode before you send the quote.

You can choose **By square foot** before you know the area. The draft saves,
and waits for the **Measured square feet**.

## Monthly quotes

A commercial quote priced by the month can also be priced by the square foot.
The monthly price is the price for one clean times the cleans in a month: visits
per week times 52, divided by 12. A weekly clean counts as about 4.33 visits a
month. The quote shows both the price for each clean and the price for each
month.

## First clean price

To charge more for the first visit of a recurring quote, priced by the hour or
by the square foot, use the **First clean** card on the quote's **Send** step.
See [First clean price](/docs/first-clean-alternatives).

## When square-foot pricing is not offered

Square-foot pricing is not offered for quotes with a layout added as a
repeated unit or tax-exempt tasks, or before your
company rates are set up.
In those cases the quote explains why **By square foot** is not available.

Choosing **By square foot** removes fixed room prices from this quote. If you
switch back to **Hourly**, those rooms are priced by time; their old fixed
prices do not return. You can save an unfinished square-foot draft before
measuring, but must enter the area and resolve pricing before sharing it.

Photo quotes keep their reviewed hourly price.

Native versions with area-pricing controls use the same rules. See
[Native version availability](/docs/the-mobile-app).

See also [Pricing a quote](/docs/pricing-a-quote).

---

---
title: "Walkthrough pricing review · BlastoClean docs"
description: "Require an in-person walkthrough before a quote can be sent, for homes with several pets or any job you want to see first."
url: "https://www.blastoclean.com/docs/walkthrough-review"
---

# Walkthrough pricing review

Quoting · Web and mobile · 2 min read · Updated October 11, 2026

**Mark a quote as needing an in-person walkthrough, or set a pet count that requires one. The quote cannot be sent until an owner or manager confirms the visit happened and reviews the price.**

Some jobs are hard to price from a description: a home with four dogs, a
hoarding cleanup, or an office floor you have never seen. A walkthrough review
holds the quote until someone has been on site and checked the price.

## Set your pet rule

1. Open **Settings**, then **Pricing & quotes**.
2. In **Walkthrough rules**, enter a number in **Require a walkthrough at this
   pet count**. For example, enter 3 to require a walkthrough for homes with 3
   or more pets.
3. Select **Save walkthrough rule**.

Leave the number empty if you do not want a pet rule. You can still mark any
single quote as needing a walkthrough. The owner sets this rule.

## Mark a quote

On the quote, find **Walkthrough review**:

- Tick **Needs an in-person walkthrough** to require one for this quote.
- Enter the **Number of pets**. Leave it empty if you do not know yet. If your
  company has a pet rule, an empty number counts as needing a walkthrough: the
  quote shows no price until you enter the number of pets or finish the
  walkthrough review.

When a walkthrough is required, the quote keeps its rooms and tasks but shows
no price, and you cannot send or share it yet.

## Book the walkthrough

Select **Book a walkthrough visit**. The schedule opens with the customer and
property filled in. Choose a time and confirm the visit. The walkthrough visit
has no price, so the customer is not billed for it. Booking needs a plan that
includes the schedule (Starter, Pro or Business) and permission to edit the
schedule. Owners, managers and estimators have that permission; if you do not
see **Book a walkthrough visit**, ask one of them to book it.

## Review and release the price

After the visit, an owner or manager opens the quote, adjusts rooms, tasks and
price as needed, then:

1. Ticks **I completed the in-person walkthrough and reviewed this quote's
   scope and pricing**.
2. Selects **Save office walkthrough review**.

The quote can now be sent as usual. If you change the property, the customer,
the pet count or your pet rule before the quote is accepted, the quote needs a
new review. Accepted quotes keep the price the customer agreed to.

See also [Pricing a quote](/docs/pricing-a-quote) and
[Dust evidence and quote adjustments](/docs/dust-evidence).

## On the native app

In versions with these controls, open the quote's pricing screen for the
corresponding evidence, review or first-clean card. The same role permissions
and server checks apply. Owners can also open Dust evidence rules and
Walkthrough rules from Settings; the web Settings layout above is different.
Accepted quotes keep the agreed version. If another person changes the quote,
refresh and review it before applying an old draft.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "Dust evidence and quote adjustments · BlastoClean docs"
description: "Ask when a home was last dusted, and require a photo or add a set adjustment for heavy dust."
url: "https://www.blastoclean.com/docs/dust-evidence"
---

# Dust evidence and quote adjustments

Quoting · Web and mobile · 2 min read · Updated October 11, 2026

**Record when a property was last dusted. For dust older than three months, attach a photo of the dustiest area or apply your own percentage adjustment, so the price matches the work.**

Dust that has built up for months takes much longer to clean than a weekly
wipe. Dust evidence asks the question on every new quote, and makes sure heavy
dust is backed by a photo or priced in.

## Turn it on

1. Open **Settings**, then **Pricing & quotes**.
2. In **Dust evidence rules**, tick **Ask for dust evidence on new quotes**.
3. Optional: enter a **Missing-photo adjustment (%)**, for example 15. When
   dust is older than three months and there is no photo, this percentage of
   the labor is added to the quote.
4. Select **Save dust rules**.

If you leave the percentage empty, a photo is required for older dust. The
owner sets these rules. Each quote keeps the rule it started with, so changing
your settings later does not change quotes you already wrote.

## Record dust on a quote

On the quote, find **Dust evidence** and choose **Last dusted**:

- **Within three months**: nothing else is needed.
- **More than three months ago**: add a photo of the dustiest area, or let your
  adjustment apply.
- **Unknown**: the quote shows no price until you find out.

To add a photo, save the property on the quote first. Upload the picture with
**Add a file** in the quote's **Photos and attachments**, then choose it under
**Photo of the dustiest area**. Select **Save dust assessment**.

The photo must be a current one for that quote and property. If you change the
property, choose a new photo.

## How the adjustment shows

When the adjustment applies, it appears on the quote as its own line, so the
customer can see why the price is higher. It is added once, and your discounts
and tax apply to it as they do to the rest of the quote. If the quote mixes
taxable and tax-exempt tasks, review the tax on the quote before the adjustment
can apply.

The quote cannot be sent, shared or accepted until the dust step is complete.
That means the question is answered and, for dust older than three months,
there is a photo or your adjustment applies. Accepted quotes keep the price and photo the customer agreed to.

See also [Walkthrough pricing review](/docs/walkthrough-review) and
[Pricing a quote](/docs/pricing-a-quote).

## On the native app

In versions with these controls, open the quote's pricing screen for the
corresponding evidence, review or first-clean card. The same role permissions
and server checks apply. Owners can also open Dust evidence rules and
Walkthrough rules from Settings; the web Settings layout above is different.
Accepted quotes keep the agreed version. If another person changes the quote,
refresh and review it before applying an old draft.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "First clean price · BlastoClean docs"
description: "Charge more for the first visit of a recurring quote, with an extra amount and tasks done only on the first visit."
url: "https://www.blastoclean.com/docs/first-clean-alternatives"
---

# First clean price

Quoting · Web and mobile · 3 min read · Updated October 19, 2026

**Price the first clean on the quote itself: add a set amount or a percent, and tick tasks done only on the first visit. The customer sees both prices, and booking charges the first-visit price once, then the regular price.**

A first clean is usually bigger than the ones that follow. On a recurring quote
you can charge more for it, and add tasks done only that once, without building
a second quote. The customer sees the first clean price and the regular price on
the same quote.

## Turn it on

On the quote's **Send** step, find the **First clean** card and tick **Price the
first clean separately**. Anyone who can edit quotes can do this, on any plan.

Then choose the **Extra for the first clean**:

- **No extra, only first-visit tasks**: the first visit costs the regular price
  plus any tasks marked **First visit only**.
- **Add a set amount**: enter the **Extra amount**.
- **Add a percent of a regular visit**: enter the **Extra percent**.

The card shows the result, such as "First clean $240.00, then $150.00 per
visit". If both prices are the same, it says so: add an extra or mark some tasks
for the first visit.

## Tasks for the first visit only

On the **Rooms** step, tick **First visit only** on tasks done just once, such
as baseboards or inside the cabinets. Those tasks are left out of the regular
visit's price, time and checklist, and are done and charged on the first visit.

The **Show first visit task option** switch at the top of the **Rooms** step
adds the **First visit only** tick to each task and turns on the first clean
price on the **Send** step, with no extra. Turning the switch off clears the
first clean price and every tick.

## When it is not available

A first clean price works on recurring quotes priced per visit. The card
explains what to change when the quote:

- is a one-time clean: answer **How often?** with a repeating schedule. A
  one-time clean has no regular visits after it.
- offers frequency choices: turn them off.
- is sent as a price range.
- has a total override: remove it.
- has every task marked **First visit only**: the regular visit needs at least
  one task.
- has no price for the regular visit.

## What the customer sees

The customer's quote page and PDF show the first clean and the regular visits,
each with its own price. There is nothing to choose: accepting the quote accepts
both.

## Booking

When you book the schedule, the first visit uses the first clean price and
tasks, and every visit after it uses the regular price and tasks. Moving or
canceling the first visit does not move its price onto the next one. Each visit
gets its own checklist.

## Older quotes

Quotes made before this change may show **First-clean alternatives**, built from
separate quotes. They are read-only, with the note "This quote has first-clean
alternatives made from separate quotes. Turning on the first clean price
replaces them." Quotes the customer already accepted keep what they agreed to.
The **Routine visits** price is now called **Regular visits**.

A first clean price set on a square-foot quote was carried over to this card.

See also [Building a quote](/docs/building-a-quote),
[Hourly and area pricing defaults](/docs/size-pricing) and
[Recurring schedules](/docs/recurring-schedules).

## On the native app

Open the quote's pricing screen to find the **First clean** card, then select
**Save first clean price**. Tick **First visit only** on tasks in each room. The
same permissions and server checks apply.

See also [Building a quote](/docs/building-a-quote) and
[Recurring schedules](/docs/recurring-schedules).

---

---
title: "Quote requests from your website · BlastoClean docs"
description: "The public request-a-quote page, the embeddable widget you can restyle without touching code, and the leads inbox where the requests land."
url: "https://www.blastoclean.com/docs/quote-requests-from-your-website"
---

# Quote requests from your website

Winning work · Web app · 3 min read · Updated October 16, 2026

**Paid plans include a public request-a-quote page and an embeddable widget for its own site; requests land in a leads inbox that turns one into a customer, a property and a draft quote in a single step.**

Work that arrives on its own is the cheapest work there is. Two things make that
happen: somewhere for a stranger to ask, and somewhere for the ask to land.

## The request page and the widget

![Web app: Website request widget settings, with synthetic records.](/images/docs/settings-widget-en-20261019.webp)

On Starter, Pro and Business, each company (and, on Business, each location) gets a public
**request-a-quote page** you can link from your website, your Google listing or
a social profile. A visitor leaves a name and a way to reach them. They never
make an account.

If you would rather the form lived on your own site, paste one script tag and it
does: as an inline form, or as a floating button in the corner. Restyle it from
Settings (accent color, light or dark, the headline, which questions to ask)
and **every widget you have already published updates**, without anybody
touching the code again.

The form follows the visitor's browser language, English or Spanish. A
stranger's language is something only their browser knows, so it is the only
sensible place to get it from.

Visitors can attach up to five photos. On a plan with
[AI assists](/docs/ai-assists), those photos and the visitor's message are read
to pre-fill the draft quote's rooms and tasks from your own library: you review
and price every line before anything is sent.

## Requests

Open **Requests** for form submissions and photo quotes in one inbox. Use **Show** and **From** to filter it. The main action turns a request into a customer and quote; **More actions** holds secondary options.

![Web app: Quote requests, with synthetic records.](/images/docs/requests-en-20261019.webp)

New requests badge the navigation and email the office. Each one can be:

- **Converted**: into a customer, a property and a draft quote, in a single
  step, landing you in [the quote editor](/docs/building-a-quote); or
- **Dismissed**, for the ones that are not real work.

The same inbox is on the phone, badged with the number still waiting, because
the person most likely to see a new lead first is the one already out working.
See [Leads and customers on your phone](/docs/leads-and-customers-on-your-phone).

## Photos instead of a form

The same link can take photos. A customer who sends photos of the home from
`/r/your-link/photos` arrives in this inbox marked **Photo quote**, with the
photos on the card; on Pro the photos are also read and priced for you, ready
to send as a firm price or a range. See [Photo quotes](/docs/photo-quotes).

## How quickly you answer is the whole game

The Inquiries report counts what happens to requests after they arrive (see
[The dashboard and reports](/docs/the-dashboard-and-reports)), and the
needs-attention list on the dashboard puts new requests where nobody can miss
them.

## Empty lists, recovery and safe retries

An empty inbox describes the selected filters: it may mean nothing is waiting,
or nothing matches that source. **Clear filters** restores the wider inbox.
If loading fails, use **Retry**; your current filters and page stay in place.

Converting, sending or dismissing requires the relevant quote permissions.
If an action’s outcome is uncertain, follow its recovery message and inspect
the resulting request or quote before repeating it. A disabled action is not
confirmation that it succeeded. Native Requests is accessed from Quotes in
versions that include it; photo room correction remains a web action.

![Web app: Empty requests inbox, with synthetic records.](/images/docs/requests-empty-en-20261019.webp)

![Web app: Requests read failure and Retry, with synthetic records.](/images/docs/requests-error-en-20261019.webp)

![Native UI preview: Empty requests inbox with synthetic records.](/images/docs/mobile-requests-empty-en-20261019.webp)

![Native UI preview: Requests read failure and Retry with synthetic records.](/images/docs/mobile-requests-error-en-20261019.webp)

---

---
title: "Sending a quote · BlastoClean docs"
description: "The Send quote button, a private link, email, text for customers who opted in, and a PDF, plus what happens when the customer opens it and says yes."
url: "https://www.blastoclean.com/docs/sending-a-quote"
---

# Sending a quote

Winning work · Web and mobile · 2 min read · Updated October 18, 2026

**Send quote emails the quote. On Pro and Business it can text the quote when there is no email and the customer agreed to texts. You can also hand over a private link or a PDF. When they open it, say yes, or say no, the status changes and your team is emailed.**

A finished quote is not a sent quote. On the Send step, **Send quote** is the
button. If there is an email address, it emails the quote and marks it sent.
On Pro and Business, if there is no email and the customer has agreed to texts,
that same button texts it. **Text instead** sends a text on purpose, on those
plans. Free and Starter send by email, link, or PDF. Here is every way out, and
what each one does.

![Web app: Quote list and paging, with synthetic records.](/images/docs/quotes-list-en-20261019.webp)

## The link

Every quote gets a **private share link**. Anyone who has it can open the quote,
so share it only with the intended customer and treat it as a password. It opens
instantly on any device and works without JavaScript, which matters more than it
sounds: the person reading it is on a phone, on a train, on whatever browser
came with the device.

If a link gets somewhere it should not, regenerate it. The old one stops working
immediately.

## Email

Send the quote by email with a personal note. On a connected mailbox it leaves
from **your own address**, so the customer's reply lands in the inbox you
already watch rather than in a no-reply void. See
[Your own mailbox and calendar](/docs/your-own-mailbox-and-calendar).

## Text

Customers who have opted in can be texted the quote. The quote number, the total
and the link always arrive intact; if your note runs long it is trimmed **and
you are told**, rather than silently cut off mid-sentence. Consent, quiet hours
and what happens on a STOP reply are covered in
[Text messages and consent](/docs/text-messages-and-consent).

## PDF

In the web app, users with PDF permission can download a quote PDF with your
company details and logo, generated in the cloud. Native quote screens support
email, eligible texts and private links; they do not offer a PDF action. Use
the web when you need the PDF. Read-only users cannot generate one.

## In the customer's language

Quote pages, PDFs, emails, texts and the customer portal are all written in
English or Spanish, whichever your company is set to. **A quote keeps the
language it was written in, forever**, so changing your company language later
never rewrites something a customer has already been sent.

## What happens next

The moment a customer opens the quote, says yes, or says no, the status changes
and your team is emailed. No more "did you get my email?" calls.

On Starter and above, the customer accepts the quote and requests a preferred time for your approval. Tomorrow at 9:00 AM is pre-filled and can be changed. Optional instant booking respects working hours and existing bookings. On Free, **Yes, I accept** accepts the quote without booking; you book the job yourself from the quote, one at a time.

- Saying yes is covered in
  [Online acceptance and signatures](/docs/online-acceptance-and-signatures).
- Chasing the ones that go quiet is
  [Follow-ups and expiry](/docs/follow-ups-and-expiry).
- The visit is covered in [Scheduling a visit](/docs/scheduling-a-visit).

---

---
title: "Online acceptance and signatures · BlastoClean docs"
description: "How a customer accepts a quote and requests a visit for approval with no account, how they pick a schedule when the quote offers one, what an optional signature adds, and why a no asks for a reason."
url: "https://www.blastoclean.com/docs/online-acceptance-and-signatures"
---

# Online acceptance and signatures

Winning work · Web app · 4 min read · Updated October 18, 2026

**Customers accept the quote and request their preferred date and time. The business approves the visit before it is booked. Optional instant booking only confirms visits that fit working hours and avoid current bookings.**

A customer can accept a BlastoClean quote on any device, with no account or app.
Accepting the price and confirming a visit are separate decisions.

## Accepting and requesting a time

On Starter and above, the public quote asks for a **Requested first visit**
and **Requested time**. Tomorrow at 9:00 AM is filled in; customers can change
both. The business location's timezone appears beside the request. If that timezone
changes while the page is open, the customer is asked to review the refreshed form. They tap
**Accept quote and request this time**. The form works without JavaScript.

![Customer browser page: Requested date and time, with synthetic records.](/images/docs/quote-request-time.webp)

By default, this accepts the quote and saves their request. It does **not**
reserve a slot. The confirmation says **Request received**, shows the requested
time, and explains that approval is required. Your team receives the request
in its acceptance notification. From the quote in the web app, choose
**Review requested time**, review or change the date and time, then book to approve.
The public quote only says **You're booked** once a schedule exists.
Approval keeps the timezone shown with the request, even if the location setting
has changed. Once booked, the request is fulfilled; canceling that booking does
not turn it back into a pending request.

![Customer browser page: Visit request awaiting approval, with synthetic records.](/images/docs/quote-request-pending.webp)

The request review and settings controls are also in the mobile app.

The Free plan keeps the public button **Yes, I accept**, without a date picker.
On Free, you then book the job yourself from the quote's job card. See
[Scheduling a visit](/docs/scheduling-a-visit).

## Optional instant booking

In the web app's **Settings > Pricing**, enable
**Let customers book instantly when accepting a quote** to opt in. It is off
by default and needs a plan with scheduling to create a booking.

Instant booking uses the quote location's timezone and working hours, falling
back to company settings. The entire visit must fit an open shift, start at
least one hour ahead, and avoid existing bookings. Overnight shifts and daylight
saving are respected. The quote's duration is rounded up to the next 15 minutes.
Repeating visits are checked across the booking horizon too.

If a time cannot be booked, the quote still becomes accepted and the time stays
a request for your approval. A request does not hold calendar space. A repeated
submission does not book the work again. Staff can still deliberately approve
out-of-hours work; public instant booking cannot bypass those hours.

## Choosing how often

A quote can offer its price at more than one schedule: just once, every week,
every two weeks, or once a month. Each has its own price per visit. See
[Pricing a quote](/docs/pricing-a-quote). When it does, the page lists the
choices with their prices. Saying yes asks the customer to pick one. The choice
is the price, so it is required. A no does not ask.

The choice they make becomes the deal. The quote is reworked to it. The saving
prints as its own line. The email your team gets names the schedule. The first
visit, when approved or instantly booked, follows it. If the customer says yes on the phone instead,
**Accept and book** asks you the same question, so the office records the
choice they actually made.

## Requiring a signature

Some jobs want more than a click. Switch signatures on and accepting asks the
customer to:

1. **Type their name**,
2. **Tick that they agree** to the quote, and
3. **Sign** with a finger or a mouse.

The mark is kept with the acceptance and printed on the quote page and the PDF
beside the date it was given.

One deliberate detail: **drawing is the optional part**. It is the step most
likely to fail on an old phone or a stiff trackpad, so the typed name and the
tick accept the quote on their own. Nobody is ever stuck staring at a canvas
that will not draw.

## Accepting on the customer's behalf

When the customer says yes while you are standing in their hallway, asking them
to go back to a desk and tap a link is silly. Office accounts that can edit
quotes and schedule visits, including Estimators, can record that yes from the
web app or phone. The button is
**Accept and book**. If the quote is already accepted, it is **Book this job**.

A customer request fills in its date and time; otherwise the box starts with tomorrow at 9:00 AM. Review the day and time, then confirm.
That books the first visit. If the day is taken, the quote stays accepted and
you pick another day. A quote that is already on the calendar is not booked
again.

The yes is recorded against the name of the person who pressed the button,
because it was not the customer who tapped it. They will not be asked to accept
it online. See [Quoting from your phone](/docs/quoting-from-your-phone).

## When the answer is no

A customer who says no can say why in one tap: **The price was higher than
expected**, **The dates or times did not work**, **We went with someone else**,
**We no longer need the work done**, or **Something else**. They can also skip
it.

Nobody has to fill anything in, which is why most of the time you get an answer
at all. The five answers are fixed taps, including **Something else**, not a
blank box, so they can be counted. Skipping the question counts as not given. They are, on the Quotes to jobs report in
[The dashboard and reports](/docs/the-dashboard-and-reports). "We lose on price"
and "we lose on speed" are different problems with different fixes, and this is
how you find out which one you have.

## Editing after acceptance

Editing an accepted quote creates a **revision**, so the version the customer
agreed to is never lost. See [Pricing a quote](/docs/pricing-a-quote).

---

---
title: "Follow-ups and quote expiry · BlastoClean docs"
description: "Automatic, polite nudges for quotes nobody has answered, a warning before a quote expires, and the rules that stop a customer being chased after they have replied."
url: "https://www.blastoclean.com/docs/follow-ups-and-expiry"
---

# Follow-ups and quote expiry

Winning work · Web app · 1 min read · Updated October 18, 2026

**Switch follow-ups on and unanswered quotes get a nudge after the number of days you choose plus a warning before they expire: each sent at most once for its current send or expiry date, and never after the customer has answered.**

Most quotes are not lost. They are forgotten by a customer who meant to reply,
on a day that got away from them. Follow-ups are the part of the job nobody has
time to do by hand.

## What gets sent

Switch follow-ups on and two things happen on their own:

- **A nudge**, after the number of days you choose, to a customer who has not
  answered.
- **A warning** before the quote expires, so "I was going to say yes" does not
  arrive the week after the price stopped being valid.

Three rules keep this from becoming nagging:

1. **Each is sent at most once for the current send or expiry date.** Sending
   the quote again can re-arm its nudge; changing its expiry date can re-arm
   the expiry warning.
2. **Neither is ever sent after the customer has answered**: accepted, declined
   or asked a question.
3. **Nothing is sent outside quiet hours** where the follow-up goes by text. See
   [Text messages and consent](/docs/text-messages-and-consent).

If you would rather write the nudge yourself, a plan with
[AI assists](/docs/ai-assists) will draft a personalized follow-up for you to
edit: the link and the subject line stay put.

## Expiry

Quotes expire on your schedule: thirty days by default, set in
[Settings](/docs/setting-up-your-company). An expired quote can no longer be
accepted online, which is the whole reason it exists: a price you gave in
February should not be binding in October.

Expiring quotes surface in two places before they lapse:

- The **needs-attention list** on the dashboard shows quotes expiring within the
  week.
- The quotes list has an **Expiring soon** filter of its own.

Both are covered in
[The dashboard and reports](/docs/the-dashboard-and-reports).

## Knowing what actually went out

Every email and every text the system sends is logged with its outcome (see
[Exporting your data](/docs/exporting-your-data)), so "did that follow-up
actually send?" has an answer rather than a shrug.

---

---
title: "Scheduling a visit · BlastoClean docs"
description: "Customers request a time for approval by default. Review the request on the web, or opt into instant booking within working hours and existing availability."
url: "https://www.blastoclean.com/docs/scheduling-a-visit"
---

# Scheduling a visit

Scheduling · Web and mobile · 7 min read · Updated October 20, 2026

**Customers request a time for approval by default. Review the request on the web, or opt into instant booking within working hours and existing availability.**

On Starter and above, an accepted quote is not the end of anything. It is a job
that now has to happen on a particular Tuesday, with particular people. On
Free, saying yes does not book a visit: you book the job yourself, one at a
time, as the section on Free below explains.

![Web app: Schedule and visit filters, with synthetic records.](/images/docs/release-schedule-week-en-20261019.webp)

## Customer requests

Customers accepting a public quote request a preferred time by default. It stays
unbooked until you approve it. **Review requested time** opens the request in
the web booking dialog and in the mobile app. You can approve that time or choose another.
Optional instant booking checks the full visit against working hours and current
bookings.

![Web app: Requested visit review, with synthetic records.](/images/docs/quote-request-review-en-20261019.webp)

See [Online acceptance and signatures](/docs/online-acceptance-and-signatures).

## Booking

From a quote, **Accept and book** records the yes and puts the first visit on
the calendar. If the quote is already accepted, the button is **Book this
job**. A customer request pre-fills the date and time; otherwise the box starts with tomorrow at 9:00 AM. Change the day or the time, then
confirm.

The length is the quote's task minutes divided across the crew size. A
six-hour job quoted for a crew of three books the two hours the crew is
actually there.

Later visits follow how often the quote says. A weekly job that comes more
than once a week is one schedule with those days, not several schedules. Once
a month books that day of the month. See
[Recurring schedules](/docs/recurring-schedules).

**Nothing can be booked on top of anything else.** If that first day overlaps
another visit, the quote stays accepted and you pick another day. A quote that
is already on the calendar is not booked again. Back-to-back visits are fine.
The check is for overlap, not for a gap between jobs.

## On Free: one job at a time

Free has no calendar. An approved one-time quote shows a job card instead,
with three steps:

- **Book it.** Pick the day and the start time, and a length if you want one.
  Your customer gets a confirmation email when they have an address. **Change**
  and **Cancel job** work until the job is done, and your customer hears about
  each by email.
- **Do the work.** Tap **Mark completed** when it is done.
- **Get paid.** Send a payment link from your own Stripe account, or record
  cash, a check or another type. Either one takes the whole balance.

A quote that repeats is not a single job: repeat visits come with Starter. When
a job is done, **Book again** copies it for one more visit, with the next quote
number. If nothing was added, the price did not go up and the approval is under
a year old, booking the copy carries that approval. Otherwise the copy goes to
your customer to approve. Every booked job is on the **Booked jobs** list on
the quotes page, soonest first.

A few things worth knowing about the job card:

- **Customer emails.** Booking, moving or canceling the job emails your
  customer. When the visit has a site contact, the email goes to that person
  instead. If the email did not go out, the card says so, for example
  "Booked, but the confirmation email did not go out. Let your customer know
  yourself."
- **The length.** Clear the length on **Change** and the visit goes back to
  the quote's estimate.
- **Nothing to pay.** A job priced at nothing says **Nothing to pay on this
  job.** It has no payment link and no payment to record.
- **Money paid before booking.** A payment recorded on the quote before you
  booked counts toward the job, and the card shows what is left. With the job
  booked or done, the quote's **Payments** card shows that money as paid toward
  the job, and the job takes the rest.
- **Refunds.** To give a payment back, refund it on the job card. That works
  whether the job is booked, done or canceled. A canceled job that still holds
  money keeps its card, and its refund, even after you revise the quote.
- **Permissions.** **Book again** needs permission to edit quotes. Booking the
  copy needs permission to schedule.

## The week

The schedule shows a week at a time, with each visit's status and payment status
on the row. You can filter it to one person's week, or to work nobody has been
assigned yet.

## What you can do to a visit

Opening a visit gives you the work checklist, the money panel and every action:

| Action | What it means |
| --- | --- |
| **Confirm** | The customer has confirmed they will be there |
| **Reschedule** | Move it, against the crew's free/busy week |
| **Complete** | Done, and this is where you record the actual minutes. If your company requires clock-ins, everyone assigned clocks in first |
| **No-show** | Nobody was there |
| **Cancel** | It is not happening. The late fee, the office alert and the open time are in [Handling cancellations](/docs/cancellations) |
| **Reassign** | Change who is going; the first person listed is the lead. On a repeating schedule it asks whether the change is for this visit or [all future visits](/docs/recurring-schedules) |

**Recording the actual minutes when you complete a visit is worth the five
seconds.** It is what feeds the estimated-versus-actual comparison on the
dashboard, and what lets the app suggest better task times later. See
[Your room and task library](/docs/your-room-and-task-library).

**Your company can require clock-ins before a visit is completed.** It is off
by default and available on Starter and above. In **Settings → Appointment
reminders**, under **Time clock**, tick **Require assigned staff to clock in
before completing visits**. It applies company-wide: assign active staff to
each visit, and every assigned person needs a recorded clock-in before the
visit can be completed. A visit with nobody assigned is refused with "Assign
active staff to this visit and record their clock-ins before completing it." A
visit where someone has not clocked in is refused with "Every active staff
member assigned to this visit must have a recorded clock-in before it can be
completed." A deactivated or deleted account does not hold up a visit. The
setting does not send reminders to staff or change payroll, and clocking in is
still never refused for distance from the property. The crew sees the
requirement on the visit in **My jobs** and on the phone's visit clock.

A visit where the customer has asked for a different time shows their message
directly on it, so the office is answering a person rather than a status. To
work through every open request at once, open **Change requests** from the
dashboard's needs-attention list (or go to `/schedule/change-requests`). Each
request there can be moved to the customer's time (when they picked one), kept
as booked, or moved to another time.

**The address on a visit is a link.** Clicking it opens the address in a map (Apple Maps on an iPhone, iPad or Mac, Google Maps everywhere else) so getting
directions to a job is one click rather than a copy and a paste. The same holds
for the address on a quote, on a customer's property and on a lead, in the
browser and on the phone alike; see
[The schedule on your phone](/docs/the-schedule-on-your-phone).

## From the phone

![Native UI preview: Visit details and time clock with synthetic records.](/images/docs/mobile-visit-detail-en-20261019.webp)

Every one of those actions is on the phone too, along with the customer's
confirmation link to copy and the money panel for taking payment at the door.
See [The schedule on your phone](/docs/the-schedule-on-your-phone) and
[Taking payment in person](/docs/taking-payment-in-person).

## It looks after itself

The scheduler runs every fifteen minutes, and every step it takes is safe to
repeat. A hiccup delays something; it never drops a visit.

## Calendar views and filters

On the web, use **List**, **Week**, **Month** or **Map** in the Schedule view
selector. List, Week and Month can be remembered on this browser; Map opens
when you choose it. A visit link opens its requested visit instead.

Person, unassigned, flexible-team and color filters narrow the loaded dates.
An active color stays visible even when the legend is collapsed.
**Clear filters** resets the active person, flexible-team and color choices
together. When no visits match, check the filters and date range before adding
a booking. A temporary load failure offers Retry without changing those choices.

![Web app: Schedule and visit filters, with synthetic records.](/images/docs/schedule-filter-desktop-en-20261019.webp)

![Web app: Schedule and visit filters, with synthetic records.](/images/docs/schedule-filter-phone-en-20261019.webp)

![Native UI preview: Schedule and visit filters with synthetic records.](/images/docs/mobile-schedule-filter-en-20261019.webp)

---

---
title: "Recurring schedules · BlastoClean docs"
description: "Weekly, biweekly and monthly cleans that keep themselves booked 3, 6 or 9 months ahead, including \"the second Tuesday\", a different price or checklist on some weekdays, pausing, ending, and raising the price from a date you choose."
url: "https://www.blastoclean.com/docs/recurring-schedules"
---

# Recurring schedules

Scheduling · Web and mobile · 7 min read · Updated October 19, 2026

**A series books one-time, weekly, biweekly or monthly work, by date or by rule like the second Tuesday, and keeps itself scheduled 3, 6 or 9 months ahead until you pause or end it.**

Regular work is where a cleaning company makes its money, and where a
spreadsheet stops coping first.

![Web app: New recurring schedule form, with synthetic records.](/images/docs/schedule-new-series-en-20261019.webp)

## The patterns

A **series** can be one-time, weekly, every two weeks, or monthly. Monthly comes
in two flavors, and the difference matters:

- **By date**: the 15th, every month.
- **By rule**: "the second Tuesday", which stays the second Tuesday whatever
  the calendar does that month.

A weekly series can cover more than one day. A quote that comes three times a
week books as one schedule with those days.

A series keeps itself scheduled ahead, about **three months** unless you choose
a longer window. You do not generate visits; they are simply there.

## Choose how far ahead to book

On Starter, Pro and Business, the owner chooses how far ahead ongoing schedules
are booked. Open **Settings**, then **Book recurring visits ahead**, choose
**3 months**, **6 months** or **9 months**, and select **Save recurring
horizon**. The 3 month choice books 84 days ahead. When you lengthen the
window, existing schedules fill in the extra visits in the background, and the
card shows the progress.

Each schedule can also set its own **How far ahead**: **Company default**,
**Until a date** or **For N visits**. A date can be up to nine calendar months after
today, or after the first visit if that is later, and a visit count must fit within nine months of the first visit. A
schedule's own choice wins over the company setting.

Before a shorter window removes visits, BlastoClean shows how many unchanged
future visits will go. Visits you edited by hand or already told the customer
about are kept. Scheduled price changes still start on their dates, and
reminders keep their usual timing.

Longer windows show in upcoming visits, the customer portal and the crew's
schedule. On the schedule's page, select **Load more visits** to see the rest.
Crew members still see only the visits they are assigned to.

## Booking one

The booking form draws the week as a free/busy calendar and suggests slots. Pick
the crew and you see their calendars; pick nobody and you see the whole
company's. Click an open slot and that becomes the visit's date and time. See
[Crews and availability](/docs/crews-and-availability).

The availability grid is drawn in the **location's** time zone, not the device's,
so a dispatcher on the road in another state sees the same calendar the
company keeps.

## Running a series

A series has a page of its own with the upcoming visits and three things you can
do to it:

- **Pause** stops generating more visits. Visits already booked stay on the calendar. The confirmation explains this before you proceed.
- **Resume** starts generating visits again.
- **End schedule** stops the series and cancels future booked visits under the existing cancellation and invoice rules. Review its confirmation first.

To cancel just one clean, open that visit and cancel it. Pausing a series does not cancel that visit for you. Canceling the Pause dialog makes no change; if Pause fails, the dialog lets you retry.

![Web app: Pause schedule confirmation, with synthetic records.](/images/docs/recurring-pause-en-20261019.webp)

Editing the rule (a different day, a different frequency) **replaces only the
future visits nobody has touched**. A visit somebody has already moved,
reassigned or confirmed keeps what was done to it. That is the difference
between an edit and a reset.

Changing the crew on the **series** flows to every future visit. Changing it on
**one** visit from the schedule asks first: "This visit is part of a repeating
schedule. Change the crew for this visit only, or for all future visits?"

- **This visit only** changes that visit and nothing else.
- **All future visits** changes the schedule's crew and saved team, so every
  visit still ahead gets them, and this visit too. If the schedule change
  skips this visit, for example because it is already underway, BlastoClean
  assigns it directly so it matches.
- **Keep as is** puts the pick back without saving.

If the schedule changes but this visit cannot be updated, the visit says "The
crew was changed for all future visits, but not for this one," with the
reason. Check that visit's crew and pick again. The phone asks the same
question.

## A different price or checklist on some weekdays

One schedule can charge a different price on some days, for example Monday at
$180 and Wednesday and Friday at $120. It can also hand the crew a different
checklist on a day, such as a deep list on Mondays only.

On the web app, when a schedule visits more than one day, each day in the form
has its own **Price on** and **Checklist on** fields next to its start time
and crew. Leave them on **Same as schedule** to use the schedule's price and
checklist. The schedule's page then sums up the prices, like
**Mon $180 · Wed, Fri $120**, and each visit and its invoice carry its day's
price.

- **Changing a day's price** updates the upcoming visits on that day in place.
  The visits are not replaced, so confirmations and calendar events stay.
- **A visit priced on its own is never overwritten.** If you changed the price
  on one visit, or the customer has been sent its invoice or has paid, that
  visit keeps its price. Completed and canceled visits keep theirs too.
- **A moved visit keeps its day's price.** A Monday visit moved to Tuesday is
  still priced as Monday's visit.
- **On a monthly schedule** such as the first and third Tuesday, the price
  and the checklist belong to Tuesday, so both Tuesdays share them.
- **A day's checklist** replaces the schedule's checklist on that day. The
  rules inside it still apply, so a task set to every other clean still comes
  up on every other visit. A canceled visit does not shift that count. Changing or clearing it updates that day's upcoming
  visits that have no recorded work or one-visit checklist edits. See
  [Digital checklists](/docs/digital-checklists).

If a price change is waiting for its date, changing a day's price cancels it,
the same as editing the schedule's price does.

## Raising the price from a date

Every cleaning company puts its prices up, and until now that meant editing each
schedule by hand on the morning it took effect.

Set the new price and the date it starts instead. Visits from that date carry
the new amount; everything before it keeps the old one. Three, five and ten per
cent are one tap away, but **what is stored is the resulting amount, never the
percentage**, so there is no compounding surprise later.

The customer can be emailed the change in advance: the current price, the new
price and the date it starts. Change your mind before the date arrives and
canceling puts every repriced visit back the way it was.

When some days have their own price, the change raises every day together.
Choose **+ an amount to each day** or **+ a percentage to each day**, and the
form shows each day's new price before you save, for example
**Mon: $180.00 → $190.00** and **Wed, Fri: $120.00 → $130.00**. A $10 rise from
March 1 makes Monday $190 and Wednesday and Friday $130 from that date. The
email to the customer lists the prices by day. A yearly increase written into
a contract raises each day by the same percentage.

## On the phone

![Native UI preview: New recurring schedule form with synthetic records.](/images/docs/mobile-new-series-en-20261019.webp)

Series can be booked, paused, resumed, ended and edited from the phone, with the
same slot suggestions and the same availability grid. Prices and checklists by
day are set on the web app for now. Editing a schedule on the phone keeps them. The phone also explains the scope before you confirm Pause.

![Native UI preview: Pause schedule confirmation with synthetic records.](/images/docs/mobile-recurring-pause-en-20261019.webp)

## Open the recurring editor

Open a schedule’s detail page and choose **Edit schedule**. On the web, the
editor heading is brought into view and receives focus; Tab moves into the form.
**Cancel** returns to the detail action without saving. A failed save keeps your
draft in the editor for correction or retry. Changing the browser width does
not discard it. On native, Edit opens a separate schedule-edit screen.

Before saving a new rule or horizon, review which future visits change. Pause,
End schedule and a single visit’s Cancel have different effects; use the
confirmation for the action you intend.

![Web app: Recurring schedule editor, with synthetic records.](/images/docs/recurring-edit-en-20261019.webp)

![Native UI preview: Recurring schedule editor with synthetic records.](/images/docs/mobile-recurring-edit-en-20261019.webp)

---

---
title: "Crews and availability · BlastoClean docs"
description: "Assigning one cleaner or a whole crew, seeing who is free before you book, and how personal calendars block bookings without revealing what is on them."
url: "https://www.blastoclean.com/docs/crews-and-availability"
---

# Crews and availability

Scheduling · Web and mobile · 4 min read · Updated October 19, 2026

**Put one person or several on a visit or a series, every one of them holds the hour and gets it on their own calendar, and book against a free/busy week drawn from their schedules and their connected calendars.**

## Who is going

A visit or a series can carry one cleaner or a whole crew. Every person on it
**holds that hour**: the visit blocks their availability and appears on their
own calendar feed. The first person listed is the lead, so the order is not
decorative.

Changing the crew on a series flows to every future visit. On a single visit
that belongs to a repeating schedule, picking a person or a saved team asks
first: "This visit is part of a repeating schedule. Change the crew for this
visit only, or for all future visits?" Choose **This visit only**, **All future
visits** to change the schedule's crew for every visit still ahead, or **Keep as
is** to put the pick back. A one-time visit saves as soon as you pick. The phone
asks the same question; see [Recurring schedules](/docs/recurring-schedules).

Move a visit or hand it to somebody else and the connected calendars follow, **including taking it off the calendar of whoever
is no longer going**, which is the half that usually gets forgotten.

## Seeing who is free

The booking form draws the week as a free/busy calendar before you commit to
anything. Pick the crew and you see their calendars; pick nobody and you see the
whole company's. Click an open slot and it becomes the visit's date and time.

Two things feed that picture:

1. **Work already booked** in BlastoClean.
2. **Connected personal calendars**, if the person has connected one.

## Busy, without saying why

A dentist appointment is a dentist appointment. Someone can connect a personal
calendar so that it blocks bookings **without showing anyone what is on it** ;
the office sees "busy 2 to 3pm" and never the title. That is the default, and it is
set per calendar, so a work calendar can be readable while a personal one is
not. See [Calendars and feeds](/docs/calendars-and-feeds).

## Nothing gets booked twice

A clash is refused before it is written, and the refusal names the visit in the
way. Back-to-back visits are allowed, the check is for genuine overlap.

## Knowing whether you have enough people

Two reports answer the questions this raises, both covered in
[The dashboard and reports](/docs/the-dashboard-and-reports):

- **How full you are**, one to twelve weeks out: booked minutes against available
  minutes, per person, so you find out you are overbooked before a customer
  does.
- **Crew**: completed visits, hours, revenue and no-shows per team
  member.

Office roles with schedule access can open **My week** on paid plans, including
Estimator and Read-only. Crew members use **My jobs** for assigned visits;
the Crew role cannot open My week.

![Native UI preview: My week with synthetic records.](/images/docs/mobile-my-week-en-20261019.webp)

## Availability and conflicts

On Starter, Pro and Business, open **Schedule** and select **Availability and
conflicts** to manage when people can work and to catch problems before the
day arrives. Anyone who can edit the schedule can make changes; others can look.

**Weekly availability.** Choose a **Person or saved team** and set the hours
they work each weekday with **Add window**. Windows can run overnight. Select
**Save availability**, or **Use existing working hours** to go back to the
company hours. A saved team is available only when everyone on the visit is
available. You can give a saved team its own weekly pattern. It is used only
when the people on the visit are exactly that team. If someone fills in for a
single visit, everyone on that visit is checked against their own hours.

**Days off and extra days.** Use **Add unavailable block** for a day or a few
hours off, such as a training morning. Use **Add available interval** to open
time outside the usual hours. Approved [staff time off](/docs/staff-time-off) shows
here as **Approved time off**, without the reason.

**Upcoming conflicts.** Choose a date range to see visits with **Overlapping
visits**, an **Assignee unavailable**, or **Approved time off**. For each one
you can **Move** it to a suggested time for the same people, **Reassign** it,
or **Ignore** it. Ignoring only hides that warning for you; if the visit
changes, the warning comes back. Long ranges are shown a page at a time, so use
**Next** to go through every page. If you see **This result is incomplete**,
choose a smaller date range to review every visit. Two every-other-week visits at the same time
do not count as a conflict when they fall on alternating weeks.

When you book a visit at a time someone is unavailable, BlastoClean warns you
first. An office scheduler can confirm the exception and save; customers
booking online cannot. The booking form also shows **Suggested teams** with
clear times for simple weekly schedules.

---

---
title: "Calendars and feeds · BlastoClean docs"
description: "Subscribe Google Calendar, Outlook or Apple Calendar to your schedule, give every cleaner a personal feed of their own visits, and let connected calendars decide when people are free."
url: "https://www.blastoclean.com/docs/calendars-and-feeds"
---

# Calendars and feeds

Scheduling · Web and mobile · 2 min read · Updated October 18, 2026

**Mint an iCal feed for the whole company or for one person and subscribe to it from Google, Outlook or Apple Calendar; connecting a calendar the other way lets what is already in someone’s day block bookings.**

Calendars point in two directions here, and they are separate features:
**feeds out** put your BlastoClean schedule into the calendar app somebody
already lives in, and **connected calendars in** stop the office booking over
what is already in their day.

## Feeds out

![Web app: Calendar link settings, with synthetic records.](/images/docs/settings-calendar-en-20261019.webp)

Mint a feed and subscribe to it from Google Calendar, Outlook or Office 365, or
Apple iCloud. Two kinds exist:

- **A whole-company feed**, for the office.
- **A personal feed per team member**: just their own visits, for their own
  phone.

Two things about the URL are worth knowing before you mint one:

- **It is shown once.** Copy it when it appears. If you lose it, revoke it and
  mint another, which is a feature, not an inconvenience, because the URL is
  the credential.
- **It can be revoked** at any time, from the same place, which immediately
  stops the calendar that was using it.

![Native UI preview: Calendar feeds with synthetic records.](/images/docs/mobile-calendar-feeds-en-20261019.webp)

Feeds can be minted, listed and revoked from the phone too.

## Connected calendars in

Connecting a Google, Outlook or iCloud calendar does not turn on blocking or
calendar display. Both start off for each discovered calendar. Choose which
calendars may block bookings and which may be shown. The owner must also enable
external-calendar blocking for the company. Assigned-visit writing is a separate
choice on calendars that allow it.

**When blocking is enabled, it helps decide when you are free.** Busy events block bookings, so
the free/busy week the booking form draws is the real one. See
[Crews and availability](/docs/crews-and-availability).

**It can stay private while doing that.** A personal calendar blocks bookings
without showing anyone what is on it: the office sees "busy 2–3pm" and never the
title. That is the default, and it is set per calendar.

You also choose **which** calendar assigned work lands in. Move a visit or hand
it to somebody else and the calendars follow, including removing it from the
calendar of whoever is no longer going.

## Signing in and connecting are not the same thing

This is the detail that saves the most confusion. Signing in with Google asks
only to know who you are. **Connect Gmail** asks to send email as you, and only
then, when you switch it on. You are never shown a wall of permissions for a
feature you have not asked for.

That also means the three roles can be three different accounts: sign in with
the Google account work gave you, send from the iCloud address customers have
always used, and take availability from an Outlook calendar. See
[Your own mailbox and calendar](/docs/your-own-mailbox-and-calendar).

## When a calendar stops answering

It never blocks the work. If Google, Outlook, or Apple Calendar stops answering,
the office is warned and the day continues.

---

---
title: "Reminders and confirmations · BlastoClean docs"
description: "Automatic confirmation requests and reminders by email and text, with add-to-calendar files attached, quiet hours respected, and a customer link that works on any device."
url: "https://www.blastoclean.com/docs/reminders-and-confirmations"
---

# Reminders and confirmations

Scheduling · Web app · 2 min read · Updated October 16, 2026

**Confirmation requests and reminders go out automatically on the schedule you set, by email and, for customers who opted in, by text, each with an add-to-calendar file and a confirm link that needs no account. A customer who cannot make the time can pick an open one, and the office moves the visit in a click.**

The visit nobody confirmed is the visit nobody is there to let you in for.

![Web app: Visit reminder settings, with synthetic records.](/images/docs/settings-reminders-en-20261019.webp)

## What goes out, and when

Two different messages, on the schedule you set in Settings:

- **A confirmation request**, asking the customer to confirm they will be there.
- **A reminder**, closer to the visit.

Each carries an **add-to-calendar file**, so the customer's own calendar knows
about it too. The confirm link works on any device and needs no account.

## Fewer overlapping emails

When an upcoming visit reminder and the opening Job Chat invitation are due together for the same confirmed visit and recipient, the chat link can travel in the reminder. It keeps the reminder's sender and calendar attachment. Different notification windows, closing notices and unread-message notices remain separate.

Combining is best effort within each chat-processing batch; overflow visits may still receive separate messages. This does not change when a message becomes due or guarantee one email for every visit.

## Two channels, independent of each other

Reminders go out by email and, for customers who have opted in, by text.
The two do not depend on each other:

- A customer with **no email address** still gets texts.
- A customer who **never opted in** to texts still gets email.

Text messaging is part of the Pro and Business plans, and it behaves the way the
rules require: consent per phone number, quiet hours between 9pm and 8am in the
visit's own time zone, and an instant opt-out on a STOP reply. All of that is in
[Text messages and consent](/docs/text-messages-and-consent).

## When the customer asks to move

The confirm page offers a few **open times** as well as a message box. They are
the same slots your own booking form would suggest (ranked against the crew's
diary, their personal calendars where you have those switched on, and your
travel buffer) so a customer who cannot make Friday can tap a time that
already works instead of describing one.

A tap is a **request, not a move**. The visit is marked as having a change
request, the time they asked for is shown on it, and it appears in the
**needs-attention** list on the dashboard. What the pick buys you is the
answer: the visit panel shows a button that moves it to the hour they chose,
and every check a normal reschedule runs still runs: double-booking, the
crew's calendars, the confirmation reset. **Nothing is moved automatically.**

A customer who needs something a list cannot say still writes a message, and
that works exactly as it always has.

On a plan with [AI assists](/docs/ai-assists), an inbound text is filed and
labeled (confirming, reschedule, cancel or question) so the office can see at
a glance what needs doing. There are still no auto-replies and no automatic
rescheduling.

## Everything in one thread

Emails, texts and replies appear as a single conversation on the customer's
page, newest at the top, so nobody sends the same reminder twice because
they were looking at a different list.

## Did it actually send?

Every email and every text is logged with its outcome. See
[Exporting your data](/docs/exporting-your-data).

---

---
title: "Work checklists and visit photos · BlastoClean docs"
description: "The printable work order every visit carries (the rooms, the exact accepted tasks and the property’s access notes) and plan-limited before-and-after photos attached from the phone."
url: "https://www.blastoclean.com/docs/work-orders-and-visit-photos"
---

# Work checklists and visit photos

Scheduling · Web and mobile · 3 min read · Updated October 18, 2026

**Every visit created from a quote carries a printable checklist of the rooms, the exact tasks the customer accepted and the property’s access notes, plus before-and-after photos within the plan limits, taken from the phone.**

## The work checklist

Every visit created from a quote carries a worksheet, ready to print or read
from a phone. It contains:

- **The access notes**: the lockbox code, where to park, that the golden
  retriever is crated during visits.
- **The rooms**, and within each one **the exact tasks the customer accepted**,
  with their times.
- **Your crew notes**: the ones written on the quote's tasks that the customer
  never sees.

![Native UI preview: Visit details and time clock with synthetic records.](/images/docs/mobile-visit-detail-en-20261019.webp)

This is what makes a quote and a clean the same object rather than two documents
that drift apart. The cleaner is working from what the customer agreed to, not
from a general idea of what a deep clean involves.

On a plan with [AI assists](/docs/ai-assists), the work order can also carry a
short "before you arrive" briefing generated from the job's access, parking,
pets and internal notes when that assist is enabled. It is stored and displayed
on the work order; there is no separate briefing editor or discard control.

## Before-and-after photos

Plans with capped storage allow up to **25 photos** on a visit. Business has
no visit photo-count cap; file-size and upload rules still apply. Use photos for proof of the deep clean, the
state of the oven, the scratch that was already there before anyone arrived.

The camera is on the phone, so the photos start there. On the visit screen you
can take one with the camera or pick several at once from the library, and they
attach to the visit the office already sees: the same record, not a second
place to look.

Three details are deliberate:

- **A limited number can wait on the phone when the signal drops.** They remain
  saved after you leave the visit screen or reopen the app, and BlastoClean
  retries automatically when a connection returns. One failed upload does not
  abandon the rest, and a retry does not attach the same photo twice.
- **A waiting copy stays until the upload is confirmed or you remove it.** If a
  visit cannot accept a photo, the app keeps it listed and offers Retry and
  Remove. Only a limited number of photos wait on the phone, so they do not pile
  up.
- **Photos open only for someone signed in**, never from a public link. There
  is no address for one of these that would be safe to hand to something that
  does not know who is asking.

## Recording how long it really took

Completing a visit asks for the actual minutes. It takes five seconds and it is
the number that tunes every future quote: it drives the estimated-versus-actual
comparison on [the dashboard](/docs/the-dashboard-and-reports), and the task-time
suggestions described in
[Your room and task library](/docs/your-room-and-task-library).

## Instructions for one visit

On Starter, Pro and Business, you can give the crew instructions that apply to
a single visit, such as "Use the side gate today" or "Skip the conference room
this week." Anyone who can edit the schedule can add them.

1. Open the visit from the **Schedule**.
2. Under **Add instructions for this visit**, type the instruction.
3. Select **Save instructions**.

Each person on the visit reads the instructions and selects **Got it** before
they clock in. The office sees who has **Acknowledged** and who is still
**Waiting for acknowledgment**. If the instructions change, everyone confirms
again. Someone who already clocked in is not stopped by new or changed
instructions, so contact anyone already working at the visit.

You can also start from a customer's message. In **Messages**, select **Add to
a visit** on the message, choose the visit, edit **Text to share with the
crew**, and select **Save instructions**. The crew sees only that text, never
the customer's message. On Pro and Business, BlastoClean can also suggest the
text for today's visit. See [Suggested instructions for today](/docs/suggested-visit-instructions).

When a customer asks for something through their customer portal, the visit
shows **Customer request awaiting approval**. Edit the text if needed, then
select **Approve instructions** or **Decline**. Nothing reaches the crew until
you approve it.

The property's access and parking notes still apply to every visit.

---

---
title: "Handling cancellations · BlastoClean docs"
description: "Set a notice window and a late fee, charge the card or waive it, hear when a visit is canceled, and offer the open time to customers who asked."
url: "https://www.blastoclean.com/docs/cancellations"
---

# Handling cancellations

Scheduling · Web and mobile · 6 min read · Updated October 19, 2026

**You set the notice window and the late fee. A person charges the card on file or waives the fee, and the app never charges on its own. Owners and managers hear when a visit is canceled. Customers who asked can take the open time in one tap.**

When a visit is not going to happen, three things can follow. You can charge a
late fee or waive it. Owners and managers hear about the cancel. Customers who
asked for an earlier time can take the open spot in one tap.

The late fee and the open-spot offer each stay off until you turn them on. The
message to the office starts on. All three need Starter or above.

On Free, you cancel a booked job yourself with **Cancel job** on its job card.
Your customer gets an email about it when they have an address, or the
visit's site contact does when it has one. If that email did not go out, the
card says so, so you can tell your customer yourself. You can book the job
again later. A canceled job that still holds money keeps its card and its
refund, even after you revise the quote. Refund that money before you book the
job again, so your customer is not asked to pay twice. See
[Scheduling a visit](/docs/scheduling-a-visit).

## The notice window and the late fee

Open **Settings**, then **Late cancellation fee**. The switch is **Charge a
late cancellation fee**. It stays off until you turn it on. Each location can
set its own answer. Leave a location blank and it follows the company.

The starting numbers are 24 hours and 50.00, which is $50.00 when you bill in US dollars. Change
**Notice window (hours)** and **Fee** to whatever you actually charge. The
window can be from 1 hour to 336 hours.

The fee applies when the cancel has less notice than that window. Cancel with
exactly that much notice, or more, and no fee applies. An existing unpaid visit
invoice is voided. A paid invoice and its payment history remain; canceling does
not refund a payment. Handle any eligible refund separately. If you charge the
fee, it is a separate invoice labeled **Late cancellation fee**.

## Charge it, or waive it

A person always chooses. The app never charges the fee on its own, on the web
or on the phone.

When the fee applies, the cancel box offers three choices:

- **Charge** the amount to the card on file.
- **Waive the fee**.
- Cancel and leave the fee waiting.

Someone who can take payments charges it or waives it. Owners, managers, and
estimators can cancel the visit and leave the fee waiting. Read-only users
cannot cancel.

If the customer has no card on file, use **Cancel and send a payment link**.
The link goes by email. On Pro and Business it also goes by text when texting is
set up and the customer agreed to texts.

A charge that does not go through leaves the visit canceled and the fee
waiting, so you can try **Charge** again. If the fee was recorded in a currency
your company no longer bills in, waive it or send a new invoice. The app will
not charge that one.

The phone has the same choices: charge the card, waive the fee, or cancel and
leave the fee waiting. With no card, cancel and send a payment link. An
estimator can cancel without charging, and the fee stays waiting.

The customer gets their own email. The subject starts with "Your cleaning visit
was canceled." The note says they canceled it, that your company canceled it,
or that the visit was canceled, matching **Who initiated the cancellation?**
(Customer, Our company, or Unknown or not sure). The fee amount is in that
email only when you charged it in the same step. A charge you make later sends
its own receipt. On Pro and Business, a text goes out too when text reminders
are on, texting is set up, and the customer can receive texts. That customer note goes out even when
no fee applies. It is separate from the office alert below.

## Tell the office

Open **Settings**, then **When a visit is canceled**. **Tell me when a visit is
canceled** starts on.

Owners and managers get an email and a bell notice titled **Visit canceled** (or
**Visits canceled** when several go at once). On Pro and Business, the same
switch also sends a text when texting is set up. The cleaner assigned to the
visit is not on that list. The customer is not told again from this switch, and
nothing from it is filed on their conversation.

When a person cancels, the notice names them. When the system cancels a visit,
it does not name a person.

## Offer the open time

Open **Settings**, then **Fill open spots**. The switch is **Offer canceled
times automatically**. It stays off until you turn it on. Each location can set
its own answer. Available on all paid plans (Starter, Pro and Business). On
Free, the time from a canceled job is not offered.

When it is on, that time is offered to customers who asked to hear about an
earlier one. The offer says their next visit moves to that day and time, and
the rest of their schedule stays the same. The first person to tap **Take this
spot** gets it. The cleaning has to fit in the open time. The time that move
frees is not offered again. Moving into the open time is not a cancellation, so
it does not charge a late fee.

**Approve the move first** starts off. Leave it off and the first tap moves the
visit. Turn it on and the visit does not move until you approve it. The
customer is told the office will confirm the move before anything changes. You
get a bell notice, **Approve an earlier visit**. If you decline, their usual
time still stands.

The offer stays open until your notice cutoff. That cutoff starts at 12 hours
before the visit. People hear in groups. The starting group is 5, and the next
group hears 2 hours later only if nobody has taken the spot. New groups wait
during quiet hours, which start at 9pm to 8am in the visit's time zone. Set
both hours the same if a new group can go out any time.

The offer goes by email on every paid plan, Starter included. On Pro and
Business it also goes by text when text reminders are on, texting is set up,
and the customer agreed to texts on that number. Quiet hours
and the daily text limit match your other customer texts.

If nobody takes it, owners and managers get a bell notice and an email titled
**Slot still open**, with the day and time. That notice is not a text. It says
everyone on the list was asked and nobody took it, or that nobody took it
before the offer closed.

When someone does take it, owners and managers, and the crew on that visit, get
a bell notice and an email: **Visit moved earlier**.

## How customers opt in and opt out

Customers start off. Nobody is offered a time until the tick is on.

On the customer, in the office, tick **Let them know if an earlier time opens
up**. It stays off until you turn it on. You email them about open spots. On Pro
and Business you also text them, when text reminders are on, texting is set up,
and they agreed to texts on that number. They can turn it off from any offer.

The customer can tick **Let me know if an earlier time opens up** when they
book or confirm, and on their own page under **Earlier times**.

To opt out, clear that tick. On any offer they can also press **Stop offers
about open spots**. After that they are turned off, and they are not told when
an earlier time opens up.

If they reply STOP to your texts, offers stop coming by text. They still come
by email, and each email has its own link to turn them off.

## Related

- [Scheduling a visit](/docs/scheduling-a-visit)
- [Reminders and confirmations](/docs/reminders-and-confirmations)
- [Notifications and the bell](/docs/notifications)
- [The schedule on your phone](/docs/the-schedule-on-your-phone)

---

---
title: "Digital checklists · BlastoClean docs"
description: "Save a task list for each property, copy it onto every visit, and let cleaners tick tasks from the phone with notes, photos, and offline sync."
url: "https://www.blastoclean.com/docs/digital-checklists"
---

# Digital checklists

Scheduling · Web and mobile · 11 min read · Updated October 18, 2026

**On Starter and above, the office builds a checklist per property; each visit gets its own copy; cleaners tick, untick, note and photograph tasks on the phone, even offline; the printable work order shows the same list; Pro adds tasks that require a photo and the checklist report.**

Every property can carry its own checklist: areas (Kitchen, Restrooms, Third
floor) and the tasks under each one. When a visit starts, that list is copied
once onto the visit. Cleaners work from the copy on the phone. The office sees
progress on the schedule and inside the visit. The printable work order shows
the same tasks when a visit copy exists.

This works for home cleaning and for commercial work (office suites, restrooms,
tasks that run every visit or once a month on the first visit of the month).
It sits alongside the quote worksheet described in
[Work checklists and visit photos](/docs/work-orders-and-visit-photos). When a
property checklist exists, the visit uses it instead of falling back to the
quote alone.

## Which plan includes what

**Starter, Pro and Business** include digital checklists as part of
**scheduling**. Save a checklist on each property, copy it onto every visit,
tick tasks from the phone, and let the office see progress on the schedule and
inside the visit.

**Pro and Business** add **Requires photo** when you edit a property list,
require a linked visit photo before a photo-required task counts as done, and
the **checklist report** for a finished visit.

The **Free** plan does not include scheduling or digital property checklists.
Accepted quotes still produce the printable quote worksheet described in
[Work checklists and visit photos](/docs/work-orders-and-visit-photos).

See [Pricing](/pricing) for the full plan list.

## Build the list on the property

On the web app, open the property and go to the **Checklist** tab. This tab
needs **Starter** or a higher paid plan.

You can:

- **Start from an accepted quote**, pulling the rooms and tasks the customer
  already agreed to.
- **Start from your room and service templates**, copying the tasks you already
  maintain in [Your room and task library](/docs/your-room-and-task-library).
- **Add areas and tasks by hand**, in any order you want.

Each task can carry a **frequency**: every visit, weekly, every two weeks,
monthly, or quarterly. On a commercial contract, different tasks can run on
different rhythms. See [Commercial cleaning mode](/docs/commercial-cleaning-mode)
for how frequencies show up on quotes and work orders.

You can mark a task **Requires photo** when the crew should attach proof.
Setting that flag needs the **Pro** plan (or Business). On **Starter**, you can
still build the full list and tick tasks on visits; you just cannot turn on
required photos when you edit the property list.

The list can hold up to **300 tasks**. There is no separate limit on how many
tasks can ask for a photo, but checklist and other visit photos share the
plan's visit-photo limit. Capped plans allow **25 photos** per visit; Business
has no photo-count cap. File-size and upload rules still apply. The server can link one photo to multiple tasks, but the current editors do
not offer a picker to reuse an existing visit photo. Edits on the property change future
visits, not visits that already copied the list.

## What happens on each visit

The first time someone opens the checklist for a visit (on the web or on the
phone), BlastoClean **copies** the property list onto that visit. Later edits
to the property do not rewrite visits that already started.

Tasks that are not due on this visit still appear, marked as not due today, so
the crew can see the full picture without being asked to do monthly work every
week.

**7 of 12 done**

    Kitchen
    [x] Wipe counters
    [ ] Scrub the oven

    Main restrooms
    [x] Restock paper

## On the phone

Open a visit from [The schedule on your phone](/docs/the-schedule-on-your-phone).
The checklist appears with the areas and tasks for that visit.

- **Tap once** to tick a task. **Tap again** to untick.
- **Add a note** on a task when something needs explaining ("Oven was already
  clean").
- **Attach a photo** by taking or choosing an image for the task (the same
  plan limit as other visit photos). The current editor does not offer
  a picker for photos already attached to the visit.
- **Progress** reads like **7 of 12 done**. The app counts on the phone, so the
  number moves as soon as you tick, even before the save finishes.

If the visit has no checklist yet (nothing on the property and nothing to copy
from the quote), the phone keeps the older quote worksheet. That covers older
visits and accounts that have not turned the checklist on yet.

## Offline and sync

Ticks, notes and photo links are **saved on the phone first**. When the
connection returns, they upload automatically. Each tap is kept in order, so a
retry cannot apply the same change twice, and a newer tap cannot be overwritten
by an older one that was waiting offline.

Photo uploads use the same visit photos described in
[Work checklists and visit photos](/docs/work-orders-and-visit-photos).
Attaching a photo to a checklist task counts toward the plan's visit-photo limit.

## Tasks that require a photo

On **Pro** and **Business**, when a task requires a photo, the crew must link
at least one visit photo to **that task** before that task can count as done.
A photo must be linked to the task it proves; the current editors do not offer
a picker to reuse an existing visit photo on another task. Optional photos on tasks that do not require one still count
toward the plan's visit-photo limit.

The phone may show the box ticked before the upload finishes; the progress line
stays honest until a photo is linked and the task counts as done.

On **Starter**, you can mark done on tasks that were marked requires photo on
the property before you downgraded; the app does not block done without a photo.

## Ordered checklist layers and visit edits

On Starter and above, office roles with customer-read access can open the
**Checklist library** card in Settings and choose **Open the checklist library**.
Native versions with this entry open the same existing library from Settings.
See [The mobile app](/docs/the-mobile-app) for native availability.

Starter and higher plans include checklist templates, sections, ordered property layers and edits to a single visit or all upcoming visits. Required photos and task ordering remain Pro and Business features.

The checklist library supports residential base, deep clean, short-term rental add-on, commercial and custom lists. Each section and task can have English and Spanish text, an estimated duration and its own frequency, selected weekdays or every-Nth visit rule. Section and task rules both apply. With N=3, the task is due on occurrences 3, 6 and 9. Frequency chooses the first eligible occurrence in its period. Cancellation and rescheduling keep the original occurrence number; a new schedule starts counting again.

On the property, open **Ordered checklists**. Add reusable templates and editable property-only tasks, then use the move buttons to arrange layers, sections and tasks. On the web you can also drag layers. Repeated tasks stay separate. **Copy existing property tasks** takes an editable copy when the stack is saved; later changes in the older property-task editor do not change that copy. A layer can apply to every visit or only Standard, Deep clean, Turnover, Common area, Touch-up or Custom visits. Visits without a type keep the legacy value.

Choose a date and a schedule to preview what its rules select. Without a schedule, preview assumes a single visit and the occurrence number you enter. Save the stack before previewing. Up to 20 layers and 300 combined tasks can apply to a visit.

New visits receive a saved checklist before work begins. Saving a template or stack refreshes future visits with no recorded work or individual checklist edits. A note that was later cleared, a tick that was undone, or a removed time entry still counts as started work. Started, completed and individually edited visits keep their text, type, order and history. Visit snapshots also retain their due decisions: canceling or moving another occurrence does not transfer a saved weekly or monthly task to a different visit. A later eligible source refresh or explicit scoped edit evaluates the new revision again. Preview evaluates the selected rules and does not rewrite an existing snapshot. Automatically refreshed visits are retained during later schedule rule replacement, so review those retained dates when changing a recurring schedule.

Owners and managers with scheduling write permission can choose **Just this visit** or **This and all upcoming visits** in an eligible visit. Upcoming edits preserve later started, closed and individually edited visits, supersede later schedule defaults, and apply to new occurrences in the same schedule. A newer checklist or moved visit rejects an old editor without erasing its draft. The phone retains rejected offline work and photo bytes for review instead of attaching them to another revision. An interrupted checklist creation offers an explicit **Prepare checklist** action. Merely opening a visit does not prepare a pending stack or complete work.

## Deep tasks every other clean

Some work only needs doing now and then, like deep baseboards. In a checklist
template or on the property's ordered checklist, open the rule on a section or
a task and select **Every other clean**. The task is then due on visits 2, 4, 6
and so on, and shows as not due today on the visits in between. Select it again
to turn it off. For another rhythm, type a number in **Every Nth visit**: 3
means visits 3, 6 and 9.

The count follows each visit's place in its schedule. A canceled visit does
not count as done and does not shift the count: if visit 4 is canceled, the
task does not move to visit 5, and it comes back on visit 6. Moving a visit to
another day keeps its place.

## A different checklist on some weekdays

A schedule that visits more than one day can use another checklist on some of
them. In the schedule form on the web app, each day has a **Checklist on**
field. Leave it on **Same as schedule**, or pick a checklist from your library,
such as a deep list for Mondays. Monday visits then show that checklist, and
the other days keep the schedule's checklist. The rules inside the chosen
checklist still apply. See [Recurring schedules](/docs/recurring-schedules).

Changing or clearing a day's checklist updates that day's upcoming visits that
have no recorded work or one-visit checklist edits. A visit moved to another
day keeps the checklist of the day it was planned on.

## Deleting a checklist from the library

In the checklist library, select **Delete** on a checklist you no longer use.
A checklist that a property still uses, or that a schedule uses on one of its
days, cannot be deleted: choose another checklist there first. Visits that
already have the checklist keep their tasks.

## Required photos and tasks in order

On Pro and Business, **Block completing a visit until required photos are in** is on by default in company settings. Before a visit is completed or billed automatically, BlastoClean checks that every task due that day has its required photo. A photo still waiting to upload from a phone that is offline does not count until it arrives. Tasks that are not due that day are left out.

Owners and managers can select **Complete anyway** and enter a reason. The visit keeps who approved it, the reason, the time and how many photos were missing. The schedule and the visit panel flag the exception, and the owner's weekly summary counts visits completed with missing photos.

Only an owner or manager can mark a required-photo task **Not applicable**, and they must give a reason. A crew note does not count as approval, and **Skipped** cannot be used to get around a required photo.

On the property checklist, turn on **Lock tasks in order** to make the crew work through tasks in sequence. A due required-photo task must have its photo and be done, or be approved as not applicable, before later tasks open. Tasks that are not due that day do not hold up later work. On the phone, the camera opens for required photos and ticks the task after the photo is taken. Work done offline counts once it syncs. If an upload is refused, the task goes back to not done, later tasks stay locked, and the photo stays on the phone until you retry or discard it. Choosing the camera is only a capture setting and does not prove when a photo was taken.

Once a visit is completed, its checklist and linked photos are read-only. Checklists already copied onto visits keep their task text and schedule. Starter can still tick tasks without required photos. The company setting controls whether a visit can be completed; required photos on each task and the task order are separate choices.

## Finishing the visit

You can **complete a visit** even when tasks are still open. The app shows a
**warning** that the checklist is incomplete. On Pro and Business, missing
required photos block completion as described above.

On the schedule, a completed visit with open tasks can show a **Checklist
incomplete** badge so the office can follow up.

## What the office can do on a visit

In the visit panel on the web app, the office sees the same checklist, who
ticked what, notes and photos, and progress for that visit.

From there you can mark a task **Skipped** or **Not applicable** when the work
did not need doing that day. The native app also lets an owner or manager mark a due required-photo task
**Not applicable**, with a reason. This approval is not available to Crew.

## History on the property

The property **Checklist** tab also lists **completed visit checklists** (up to
the twenty most recent visits that have a copy), newest first, so you can answer
"what did they do last Tuesday?" without opening each visit.

## Printable work order

The visit work order still prints access notes and crew-facing tasks. When a
visit checklist copy exists, the work order shows those tickable items instead
of only the quote worksheet.

## Checklist report (Pro)

**Pro** and **Business** can open a **checklist report** for a visit: the full
list with ticks, notes, photos, customer name and visit date. It is separate
from the analytics reports in
[The dashboard and reports](/docs/the-dashboard-and-reports). Sharing that
report with the customer by email or portal is planned; today it is for the
office.

Digital property checklists come with **scheduling** on **Starter** and above.
**Requires photo** on the property list and the **checklist report** come with
**Pro**, the same plan tier as texting, Magic Quote walkthroughs, the analytics
reports and the API. See [Pricing](/pricing) for plan details.

Questions? Email [hello@blastoclean.com](mailto:hello@blastoclean.com).

---

---
title: "Saved teams and client preferences · BlastoClean docs"
description: "Save the people who work together, assign the whole team in one step, and keep the same team for each client."
url: "https://www.blastoclean.com/docs/saved-teams"
---

# Saved teams and client preferences

Scheduling · Web and mobile · 3 min read · Updated October 19, 2026

**Create saved teams such as "Team A" or "Night crew", assign the whole team to a visit or schedule in one step, and set which team each client usually gets. Available on Starter, Pro and Business.**

Most cleaning businesses send the same people out together. A saved team lets
you assign them in one step, and lets each client keep the team they know.
Saved teams are available on **Starter, Pro and Business**.

## Create a team

1. Open **Settings**, then **Employees & Teams** on the web.
2. In **Teams**, select **Create team**.
3. Enter the **Team name**, choose the members, and optionally pick a **Team
   lead** and a **Team color**.
4. Select **Save team**.

A team can have one person, and a person can be on several teams. Each team
belongs to one location. The owner manages saved teams.

## Team colors on the calendar and map

The **Team color** you pick shows on the **Schedule** and the day map once you
turn on coloring by team. Open [Calendar and map colors](/docs/calendar-colors),
add a rule, and choose **Team**. Every team with a **Team color** then uses it. A team without one is not
colored until you give it a color. To change
the color for one team there, pick it from the team list in that rule.

## Assign a team

When you book a visit or a recurring schedule, saved teams appear first in the
people picker. Choose a team and its members are filled in. Select **Clear
saved team** to pick people one by one instead.

For a one-time substitute, change the people on that visit. If the visit is
part of a repeating schedule, choose **This visit only** when asked; **All future
visits** changes the schedule's crew instead. The visit keeps its team name, and
BlastoClean records who actually went.

## Set a client's usual team

On the customer's page, choose a **Recurring team**. New schedules for that
customer start with that team. You can still pick a different team for any
schedule.

Tick **Flexible about team** when a client is happy with any crew. This is a
note for your schedulers; it does not move visits on its own. On the
**Schedule**, tick **Flexible about team** to show only those clients' visits,
so you know which ones are easiest to rearrange.

After a client's first completed clean, the visit may ask **Keep this team** if
the client has no usual team yet. Confirming saves it.

## Change a team

Edit the team and change its members. Tick **Update future visits for this
team** to give visits that have not started the new members. Visits with a
substitute or work already started keep their crew. Leave it unticked to change
only new bookings. If a new member is already busy or unavailable during one of
those visits, BlastoClean shows the conflict and does not save the change until
you sort it out.

Select **Archive** when you no longer need a team. Past visits keep its name.

## Open spots and saved teams

When a canceled time is offered to other customers, you can choose who hears
about it. In **Settings**, then **Fill open spots**, set **Saved team
eligibility**:

- **Same saved team or exact crew**, the default, offers the time only to
  clients served by the same team, or by exactly the same people when the
  visit has no saved team. If the canceled visit had no team and nobody
  assigned, it goes to every eligible client.
- **All saved teams and crews** offers it to every eligible client.

Offers go by email on every paid plan. On Pro and Business they can also go by
text to customers who agreed to texts. See [Cancellations](/docs/cancellations).

See also [Offer an assigned visit](/docs/staff-visit-offers),
[Shift swaps](/docs/staff-shift-swaps), which can approve swaps between
members of the same team automatically, and
[Crews and availability](/docs/crews-and-availability).

## On the phone and after a loading error

In the mobile app, the owner opens **Settings → Teams**
and selects **Create team** or **Edit**. Choose active people assigned to the
current location. Employee accounts are created separately in **Employees**.

On either client, use Retry if teams or members fail to load. A loading failure
does not mean a team has no members. The app keeps an open team draft while you
retry a read. If the account or location changes, reopen the editor in the new
location.

---

---
title: "Job chats · BlastoClean docs"
description: "Private chats for individual cleaning visits, with text and photos."
url: "https://www.blastoclean.com/docs/job-chats"
---

# Job chats

Scheduling · Web and mobile · 5 min read · Updated October 19, 2026

**Private chats for each clean: who can use them, and how long they stay open.**

Job chat is enabled by default on Starter, Pro and Business. Plan entitlements and visit permissions still apply. The office can disable new chats; an administrator can switch the feature off in an emergency.

A confirmed visit gets its own chat 24 hours before its start, unless you change the timing in Settings. A new chat is an internal conversation for the assigned crew and your office. It shows **Internal chat · Staff only**: the customer cannot access this chat or receive chat notifications.

When an upcoming visit reminder and the opening Job Chat invitation are due together for the same confirmed visit and recipient, the chat link can travel in the reminder. It keeps the reminder's sender and calendar attachment. Different notification windows, closing notices and unread-message notices remain separate.

Combining is best effort within each chat-processing batch; overflow visits may still receive separate messages. This does not change when a message becomes due or guarantee one email for every visit.

Mark the visit complete using the existing visit completion screen. The chat then accepts replies for 24 hours, or the time you set, stays read-only for seven days, and becomes hidden from customers and crew. The office can inspect archived history. A removed assignee loses access immediately.

Text and photos are supported. Starter includes 150 new chats per calendar month in the company timezone and 30 photos per chat. Pro has no monthly chat cap and allows 60 photos per chat. Business has no chat photo-count cap. File-size and upload-rate limits still apply. Free has a sample with no message writes.

Office staff can copy photos into the visit's saved photos before archive. Archiving is not immediate deletion. Archived photos are not deleted on a timer yet. Do not tell a customer those photos are already gone.

All ratings receive the same public review invitation, once you have set your review link. Private feedback is optional. There is no rating-based suppression of public reviews.

Texts, tips, AI summaries, replies from a notification, and live updates are not part of job chat yet. Job chat does not send texts or collect payments. The chat refreshes every five seconds while you are looking at it, and about once a minute when it is in the background. The office and the crew keep a message on the phone to send again after reopening, and access is checked again before it sends. Signing out clears those waiting messages. The customer's link page only retries while it stays open. Customer email notices apply only to chats where an owner or manager has included the customer. They are on by default and follow your company's notification setting. An owner or manager can turn these emails off in Settings. Saving the setting does not send a message.

## Include the customer

An owner or manager can include the customer for an individual visit. Open the
visit's chat and select **Include customer for this job**. The visit needs a
customer or site-contact email first; otherwise you see "Add a customer or
site-contact email before including the customer."

BlastoClean asks you to confirm chat access for that person and email address.
The customer will see only messages and photos sent after this approval.
Earlier internal history stays private. A chat invitation email and further chat
notifications may then be sent according to your email settings. Crew members
cannot include the customer.

Once access is approved, the chat shows **The customer has access to this chat**
and who it is shared with. Each message is marked **Shared with customer** or
**Staff only**. The customer opens a private email link without needing an
account. Treat the link as a password and do not forward it. If the visit's
customer or contact email changes, the earlier link stops working and an owner
or manager must approve access again.

Chats created before customer approval existed kept access for the visit's
current customer, but customer email is paused until an owner or manager selects
**Review customer access**. Other older chats became internal.

## Job chat settings

Owners and managers can change job chat in **Settings > Job chat**. Job chats
start as internal staff conversations; these settings do not include the
customer in any chat.

- **Create chats for confirmed visits**: turning this off stops new chats.
  Existing chats stay available.
- **Email customers after per-job approval**: after customer access is approved
  for a visit, email invitations, visit completion notices and unread
  shared-message notifications may be sent.
- **Chat timing**: **Open chat before the visit** (12, 24 or 48 hours) and
  **Allow replies after completion (hours)** (6 to 72). New timing applies to new
  chats only.
- **Public review link (optional)**: leave it blank to use your company's review
  link.

Select **Save job chat settings**. Saving does not send any message.

In the mobile app, owners and managers can open **Job chat settings** on the
**Job chats** screen to turn new chats and customer emails on or off. Change the
timing and the review link on the web. The app's job chat also has **Include
customer for this job** and **Review customer access** for owners and managers.

If a web chat refresh fails temporarily, the last loaded thread and your unsent reply stay on screen. Choose **Retry** to refresh. If a fresh access check says you no longer have permission, the protected thread and photos are removed from the screen.

![Web app: Job chat shared with the customer, with its Shared with customer and Staff only message labels, a temporary refresh failure and an unsent reply, with synthetic records.](/images/docs/release-chat-recovery-phone-en-20261019.webp)

Customer help: [About your cleaning chat](/help/job-chat). Ask the cleaning company about the visit; contact hello@blastoclean.com about BlastoClean.

On a narrow web screen, choose a chat to bring the conversation into view.
Use the conversation’s return control to go back to the chat list; it restores
focus to the selected chat. Opening the linked visit and returning keeps the
conversation context. Read older messages with the history control; an unsent
reply or selected photo is not a sent message.

![Native UI preview: Visit chat shared with the customer, with its Shared with customer and Staff only message labels, with synthetic records.](/images/docs/mobile-job-chat-en-20261019.webp)

---

---
title: "The day map · BlastoClean docs"
description: "See one day of visits on a map, fix missing pins, reassign visits and handle open time."
url: "https://www.blastoclean.com/docs/the-day-map"
---

# The day map

Scheduling · Web app · 3 min read · Updated October 17, 2026

**See one day of visits on a map, fix missing pins, reassign visits and handle open time.**

The day map shows one day of visits on a map. Choose **Map** in Schedule to open it intentionally when your plan includes it. Schedule opens List or your saved List, Week or Month view. Links to a visit still take priority.

## Plans and access

Free includes a read-only customer map. The fictional sample day is available only in the mobile app; the web app does not include a sample-day control. Real day-map visits, reassignment and openings require Starter or above.

Owners and managers can review the company day. Other team members see their assigned visits and their own available punch position. Being able to view the map does not grant permission to change the schedule.

## Open your day

In Schedule, choose **Map** and select a date. The web address is `/schedule?view=map&date=YYYY-MM-DD`. The map is an optional day view; the other schedule views remain available. Map is not saved as the default view; the next normal schedule entry uses List, Week or Month. Customers also has a read-only map at `/customers/map`.

The map shows the streets around your visits. Visits without a usable pin stay in the list. The map does not calculate driving routes or travel times. The planned-time control shows scheduled stops, not a live location.

Visits with a pin appear as pins. Their status and assignment are also available
in text. BlastoClean places a property on the map when you save its address,
whether you pick it from the address suggestions or type it in. A typed address
is looked up after saving, so it can take a moment, and the pin appears only if
the address is found. If you type a new address, the old pin is removed and the
new address is looked up. Properties added by a customer import are not placed
automatically.

Visits without a pin stay in the **Visits** list marked **Location missing**. To
fix one, open the property, correct the address or pick it from the address
suggestions, and save.

The customer map tells you when some properties could not be placed, for
example "We couldn't place 3 properties on the map." Those properties are in the
list below the map. Check their addresses there.

## Reassign a visit

Select a visit and choose its new assignee. On the web, focus a pin and press **R** to open the reassignment menu, use the arrow keys to choose an assignee, then press **Enter** to confirm. A drag has the same permission and conflict checks.

A change is saved only after it goes through. If another person changed the visit, or the assignee has a conflicting visit, review the refreshed schedule before trying again. Do not treat a rejected change as a booking.

## Handle an opening

A cancellation can leave an open time on the map. Choose a visit to move into that time, or dismiss the opening. Availability is checked again when you confirm. If someone else filled it first, refresh the day and review the result. Openings no longer remain available after their start time.

This is a manual workflow. The day map does not send waitlist offers or automatically choose a customer. Reduced motion keeps opening markers still.

## Read position age and connection status

Crew positions come from existing clock-in or clock-out punches, when a usable location is present. The timestamp is part of the position: it is not a live GPS dot. Missing and old positions are marked. Do not assume a person is still at a previous punch location.

The day refreshes every 15 seconds while online. When the connection fails, the last view can be out of date. Reconnect and check the latest state before relying on an assignment or an opening. The web app pauses changes while you are offline. If a response is interrupted, refresh and check whether the change was applied before making another change. The web app does not keep a list of map changes to send later.

## Privacy

The day map does not track people in the background, keep a continuous location trail, or send arrival-time messages to customers. It does not suggest routes or show more than one location at a time.

For mobile use, read [The day map on your phone](/docs/the-day-map-on-your-phone).

[Start free](/start)

---

---
title: "The day map on your phone · BlastoClean docs"
description: "Use the day map on your phone to review assigned visits and open your navigation app."
url: "https://www.blastoclean.com/docs/the-day-map-on-your-phone"
---

# The day map on your phone

Scheduling · Mobile app · 2 min read · Updated October 15, 2026

**Use the day map on your phone to review assigned visits and open your navigation app.**

The day map shows your visits for the day on a map. In the app, Schedule opens the week agenda and Map opens only when you choose it. Real visits require Starter or above. On the phone, the street map is in the app.

## Review visits

Open **Schedule > Day map** and choose Today or Tomorrow. **Customers > Customer map** opens the read-only customer view. Owners and managers can review the company day. Other team members see visits assigned to them. The map uses saved pins; visits without a pin remain visible in a separate list.

The phone shows the streets around the stops. Automatic route estimates are not included. The planned-time control shows scheduled crew stops from 6:00 AM to 9:00 PM, in 15-minute steps. It does not guess a live position between stops. A crew marker shows the last available clock punch location and its timestamp, not continuous GPS tracking. Positions older than ten minutes are marked stale.

## Navigate

Open a visit and choose **Navigate** to hand off to your phone's maps app. Navigation is an explicit action and uses the visit's saved destination. It does not enable background tracking in BlastoClean. If coordinates are missing, correct the property details before navigating.

## Changes and connection

The map refreshes every 15 seconds while online. Opening Today or Tomorrow also tries to save the neighboring day. A failed background save does not remove the day already shown. An older saved view can help you review the day, but it may not reflect recent changes. Check the connection and refresh before relying on it.

Assignment changes need permission, and they are checked against the latest schedule. If a change is still waiting to send, it has not been confirmed yet. Changes wait in order for your signed-in account, company and location. A conflict pauses that line so you can discard the failed change and refresh. Trying again does not override someone else's change. If the app cannot save a change on your phone, it does not keep it to send later. After you send a change, the app shows the latest schedule instead of the old assignment or opening.

To fill an opening, choose a scheduled or confirmed visit. The visit and the opening are checked again before the move goes through.

## Location privacy

The map uses the location saved when someone clocks in or out. It does not track anyone in the background or keep a continuous location trail, and it does not send arrival-time messages to customers.

Read [The day map](/docs/the-day-map) for plan access, opening handling and the web keyboard controls.

[Start free](/start)

---

---
title: "Add-ons and price changes for one visit · BlastoClean docs"
description: "Save your add-ons once, add one to a single visit with one tap, and put its checklist task on that visit, without changing the recurring price."
url: "https://www.blastoclean.com/docs/visit-add-ons"
---

# Add-ons and price changes for one visit

Scheduling · Web app · 4 min read · Updated October 17, 2026

**Save add-ons such as "Inside fridge" in Settings › Pricing & quotes, then add one to a single visit with one tap. The invoice lists it by name, its checklist task goes on that visit only, and the recurring rate and accepted quote stay the same.**

A regular customer asks for the inside of the fridge this week, or an office
manager asks you to skip the break room on Friday. **Price for this visit** lets
you change the price of that one visit, with a clear name for each change, while
the rest of the schedule keeps its usual price.

This is available on **Starter, Pro and Business** for owners and managers.

## Save your add-ons

Save the extras you sell often, so you do not type the name and price each time.

1. Go to **Settings › Pricing & quotes** and find **Saved add-ons**.
2. Select **Add a saved add-on**.
3. Enter the **Add-on name**, such as "Inside fridge", and the **Default price**.
   Enter the final amount with any tax already included.
4. To give the crew a task for it, turn on **Add a checklist task to the
   visit** and enter the **Checklist task**, such as "Empty, wipe and dry the
   fridge". You can add instructions.
5. Select **Save add-on**.

You can add a Spanish name for the add-on and its task, so staff who read the
app in Spanish see it in Spanish.

A new add-on belongs to the location you are working in. An owner can choose
**Offer this add-on at every location**. Use the arrows to set the order the
add-ons appear in.

To stop offering an add-on, select **Archive**. Archived add-ons are kept, not
deleted: visits that already have one still show it, and you can select
**Restore** later.

## Add an add-on to a visit

The quickest way is **Add extra work** on the visit's **Extra work** card: tap a
saved add-on, then add it now or ask the customer to approve it first. See
[Extra work](/docs/change-orders). To change the price lines yourself, including
discounts:

1. Open the visit from the **Schedule**.
2. In **Price for this visit**, select **Edit price or add-ons**.
3. Under **Add-ons & price changes**, tap a saved add-on. It adds a line with its
   name and default price. You can still change the amount on the line.
4. For anything else, select **Add an adjustment** and enter a name and an
   amount. Use a negative amount for a discount, such as -20.00 for "Skipped
   garage".
5. Fill in **Reason and customer agreement**, for example "Customer asked by
   text on Monday".
6. Check the **Final visit price** and select **Save this visit price**.

Enter final amounts with any tax already included. BlastoClean adds them to the
base price once and does not add tax again. To change the lines later, edit them
and save; the new list replaces the old one.

A saved add-on that is already on the visit is not offered again. An add-on
priced in a different currency from the visit cannot be added. Save its price
again in **Settings › Pricing & quotes** to use it.

## The add-on's checklist task

When the add-on has a checklist task, saving the price adds that task to this
visit's checklist, in an **Add-ons** section. The crew sees it on the visit like
any other task.

- The task goes on this visit only. The schedule's other visits and the
  property's checklist do not change.
- It is added once. Saving the price again does not add it a second time.
- If the crew has already started the checklist, the task is not added. The
  price card tells you which tasks to add to the visit checklist by hand.
- Removing the add-on line later does not remove the task. Edit the visit
  checklist if the crew should not do it.

## What the customer sees

The invoice lists the visit and then each add-on and price change by name, with
its amount, so the customer sees "Inside fridge $25.00" instead of one changed
total. This is the same on the invoice in the app, the PDF and the customer's
invoice page.

## What changes and what does not

- Only this visit's price changes. The recurring schedule rate and the accepted
  quote keep their prices.
- Saving does not message the customer or charge them. The new price is used
  when the visit is billed in the usual way.
- Renaming or archiving a saved add-on does not change visits that already have
  it. They keep the name they were sold with.
- **Reports › Add-on revenue** shows what your saved add-ons sold on completed
  visits, by name. See [The dashboard and reports](/docs/the-dashboard-and-reports).

## When you cannot edit the price here

The editor explains why when it is not available, for example when:

- the visit is closed, a payment has started, or the customer already has the
  invoice. Use the invoice or payment instead.
- the visit was booked from a price range. Set its final price when you complete
  it.
- the job is a one-time job booked from its approved quote. Its price follows
  the quote, so change the quote instead.

A one-time visit you booked straight on the schedule, without a quote, can take
add-ons like any other visit.

See also [Scheduling a visit](/docs/scheduling-a-visit),
[Digital checklists](/docs/digital-checklists) and
[Pricing a quote](/docs/pricing-a-quote).

---

---
title: "Calendar and map colors · BlastoClean docs"
description: "Color visits on the schedule and map by town, frequency, visit type, team, first visit or tag."
url: "https://www.blastoclean.com/docs/calendar-colors"
---

# Calendar and map colors

Scheduling · Web and mobile · 3 min read · Updated October 16, 2026

**Set up to three color rules so you can read the schedule at a glance: by town, frequency, visit type, team, first visit or your own tags. Filter the schedule and the day map by color.**

When the schedule is full, colors help you see the day at a glance: which
visits are in which town, which are deep cleans, which customers are new.
Calendar colors are available on **Starter, Pro and Business**.

## Set up your colors

1. Open **Settings**, then **Advanced**, then **Calendar links**.
2. In **Calendar colors**, select **Add rule**. You can add up to three.
3. Choose what the rule colors by: **City or town**, **Frequency**, **Visit
   type**, **Team**, **First visit** or **Tag**.
4. Select **Add value** for each one you want to color. Enter the **Value** (for
   example "Springfield"), a **Label**, and pick a **Color**. For **First
   visit**, the value is filled in for you, so just add a label and color. For
   **Team**, pick the team from the list instead of typing a value.
5. Use **Move rule up** and **Move rule down** to set the order.
6. Select **Save colors**.

## Color by team

Choose **Team** in step 3 and every visit takes the color saved on its team,
on the **Schedule** and on the day map. You do not have to add each team by
hand. Set each team's color once, as **Team color** in
[Saved teams](/docs/saved-teams).

To use a different color for one team, select **Add value**, pick the team from
the list, and choose a color. That color wins over the team's saved color for
your calendar and map. Teams you leave out keep their saved color. A team with no saved color is not
colored until you add it here or give it a **Team color**.

The first rule fills the visit with its color. The second and third rules add
small labeled dots, so a visit can show its town color plus a **New** dot and a
visit type dot at the same time. The owner sets the colors, and every office
user sees them.

Colors are hidden from crew unless you tick **Show colors to crew**. Even then,
crew see only the values you added colors for. Other towns, teams, tags and
details stay visible to the office only.

## Read and filter

The same colors appear on the **Schedule** and on the day map. Open **Color
legend and filters** to see what each color means and to show only visits
with one value, such as one town. Visits in a town you have not set up are
grouped under **Unassigned towns**.

**First visit** marks a customer's earliest visit that is booked or done.
Canceled and missed visits do not count, so once the first clean is completed,
later visits are not marked new.

## Tag visits

Open a visit and use **Visit tags** to add your own labels, separated by commas,
such as "keys", "VIP" or "post-construction". Select **Save tags**. Tags are
for your team; they do not change prices, crews or times.

## Good to know

- Filters apply to the dates the schedule has loaded. If the schedule says
  there are more visits than it can show, narrow the dates first.
- If someone else saved colors at the same time, select **Reload colors** and
  try again.
- Colors never change the schedule or send anything to customers.

See also [Saved teams and client preferences](/docs/saved-teams).

## On the phone and clearing a filter

In native versions with calendar colors, open **Settings → Calendar colors**.
The owner manages the rules; the schedule and day map use the same saved colors.
On the web schedule, an active color is shown while the legend is closed.
**Clear filters** clears color, person and flexible-team filters together.
Color choices change what you see, not the bookings themselves.

---

---
title: "Email me tomorrow’s cleans · BlastoClean docs"
description: "Set up a personal evening email for the next calendar day, with exceptions first and selected locations together."
url: "https://www.blastoclean.com/docs/tomorrows-cleans"
---

# Email me tomorrow’s cleans

Scheduling · Web and mobile · 3 min read · Updated October 14, 2026

**Owners and managers can opt into one personal evening email for tomorrow’s cleans. Choose the locations, send time and planning timezone; the email highlights work that needs attention before listing the day.**

**Email me tomorrow’s cleans** is a personal, optional evening email. It starts
off for everyone, including existing accounts. Each owner or manager turns it
on for themselves; nobody can enroll another staff member or enter an outside
email address.

## Turn it on

On the web, open **Settings → Notifications → Email me tomorrow’s cleans**.
On your phone, in an app version that includes this feature, open
**Settings → Email me tomorrow’s cleans**.

1. Turn on the switch.
2. Select the locations whose schedules you manage.
3. Choose the evening send time and digest timezone. The default is **6:00 PM**
   (**18:00** in the phone app, which takes 24-hour time).
4. Leave **Email me even when there are no cleans** off to skip empty days, or
   turn it on to receive a short no-jobs email.
5. Save your digest.

It goes only to your current account email. Turn the same switch off to stop
future digests. The feature uses the scheduling access already included in
your plan. Combining multiple locations requires Business. There is no plan
change, AI dependency or credit charge.

You can select up to 100 locations on Business; the selection count shows
which locations are included. If a plan change makes a saved selection too
large, the digest pauses. Choose locations within the displayed limit and
save to resume, or turn the digest off.

## What “tomorrow” means

The **digest timezone** determines both the evening send time and the planning
calendar date printed in the email. Selecting one location defaults to that
location’s timezone. Selecting several defaults to the company timezone. You
can choose another named timezone, such as `America/New_York`.

For example, an email sent on October 7 for **October 8** includes October 8’s
bookings at every selected branch. It does not look at a rolling next 24 hours.
Each visit shows its booked local time and timezone, so an east-coast and a
west-coast branch can share one email without implying their 9:00 AM visits
happen at the same instant. A pending reschedule stays at its current booked
time, with a warning, until the change is accepted.

The schedule is checked every 15 minutes. Choose a send time between 4:00 PM and
9:59 PM (16:00–21:59 in 24-hour time, as the field label shows). A delayed send can catch up during the following two hours, within the
same evening; an old digest is not sent the next morning. Named timezones
follow daylight-saving changes.

## What the email contains

Work that needs attention comes first: unassigned or unconfirmed visits,
pending schedule changes, and missing customer, site or time details. Then
come full counts and a compact list grouped by location, with local time,
customer/site, every assigned crew member and status.

Scheduled, confirmed and change-requested visits are included. Canceled,
completed and no-show visits are excluded. Long lists keep their full totals
and show how many more visits or exceptions remain, with links to the correct
location and planning date. Schedule links require sign-in and current access.

The email excludes access codes, private notes, customer contact details,
financial information and attachments. It includes an **as-of timestamp**.
Later edits appear in the live schedule and the existing event alerts; they
do not cause another full digest for that date.

## Access and delivery

Each included location requires an active membership and an effective owner
or manager role there. Being an owner does not add branches outside your
memberships. Access, your opt-in and plan availability are checked again before
dispatch and on a safe retry. Archived locations and deactivated users are
excluded.

There is one digest per person, company and planning date, rather than one
email per branch. Successful sends are not repeated. If the email provider
may have accepted a message but delivery cannot be confirmed, the system
leaves it unconfirmed instead of risking a duplicate. Continue to use the
[schedule](/docs/scheduling-a-visit) as the current source of truth.

The [notification bell](/docs/notifications), customer
[reminders and confirmations](/docs/reminders-and-confirmations), weekly owner
digest and follow-up alerts keep their existing behavior.

---

---
title: "Connecting Stripe and taking card payments · BlastoClean docs"
description: "Link your own Stripe account through Stripe Connect, save a card on file, bill automatically on completion. Also, what BlastoClean does and does not take a cut of."
url: "https://www.blastoclean.com/docs/connecting-stripe"
---

# Connecting Stripe and taking card payments

Getting paid · Web app · 2 min read · Updated October 18, 2026

**Link your company’s own Stripe account in a couple of clicks with no API keys to paste; payments settle directly to you, and BlastoClean adds no fee of its own on top of Stripe’s.**

![Web app: Payment provider settings, with synthetic records.](/images/docs/settings-payments-en-20261019.webp)

## Your Stripe account, your money

Card processing works through **Stripe Connect**: you link your company's own
Stripe account in a couple of clicks, with no API keys to paste anywhere.

Two things follow from that, and they are the whole design:

- **Payments settle directly into your own Stripe account.** Your money never
  passes through us.
- **BlastoClean adds no fee of its own.** You pay Stripe's processing fees and
  nothing on top. Card processing works on every plan. On Free, a connected
  account takes the payment link for a job you book from an approved quote,
  one job at a time; paid plans add card on file, automatic billing and links
  for any visit or amount.

If you would rather add a fee of your own for paying by card, you can. See
[Tips, fees and refunds](/docs/tips-fees-and-refunds), including the rule that
it has to be disclosed before the customer pays.

On the Business plan a location that banks separately can have its own payment
account. See [Setting up your company](/docs/setting-up-your-company).

## Card on file

A customer saves a card once, through **Stripe's own hosted page**. You never
see or store the card number, and neither do we: what comes back is a token
that can charge that card, nothing that could be read out over the phone.

## Billing when the visit is done

With a card on file, you choose per company how billing works:

- **Automatic**: mark the visit complete and the card is charged.
- **Manual**: charge it with one click when you are ready.

Per-visit prices stay under your control either way, including the
[price changes scheduled ahead of time](/docs/recurring-schedules) on a series.

When customer receipts are enabled, a successful charge produces a **branded
PDF receipt** with your logo, emailed to the customer and kept for re-sending.
The owner can turn customer receipts off in Settings.

## No Stripe account at all

You do not need one. Recording cash, checks, bank transfers and any method you
define works on every plan with nothing connected; on Free, you record them on
accepted quotes and booked jobs. See
[Invoices and payments](/docs/invoices-and-payments) and
[Taking payment in person](/docs/taking-payment-in-person). Connecting Stripe
adds cards; it is not the price of entry.

---

---
title: "Invoices and payments · BlastoClean docs"
description: "An invoice for every visit in your own numbering, a payment record of every charge and refund, payment links by email or text, and a private portal where each customer can pay, update their card and ask for another visit."
url: "https://www.blastoclean.com/docs/invoices-and-payments"
---

# Invoices and payments

Getting paid · Web and mobile · 6 min read · Updated October 19, 2026

**Each visit gets an invoice in your company’s own numbering a week before the visit, with a status that follows its payments, and every charge, refund and recorded cash payment lands in one payment record.**

## An invoice per visit

Invoices are on Starter and above. Each visit gets an invoice in your company's
own numbering a week before the visit, not when it goes on the calendar, so a
recurring schedule booked months ahead does not fill the list with bills for
cleanings far off. A visit booked inside that week is invoiced right away. The
invoice starts from what has already been paid for the visit, a quote deposit
included, and its status keeps itself in step with what is paid against it. A
visit canceled before its week without payment does not get an invoice. A paid
visit keeps its invoice even if canceled. Invoices that already
existed when this timing began are unchanged. Browse, search and filter them
all in one place.

One exception, chosen per customer: a customer on **consolidated monthly
billing** (commercial clients, typically) receives one invoice covering the
month's completed visits instead. The per-visit invoices still exist
underneath, as the ledger's backbone; the monthly invoice is what the customer
sees and pays. See
[Commercial cleaning mode](/docs/commercial-cleaning-mode).

## The payment record

One-off charges, partial refunds, and payments you recorded by hand all land in
a single **payment record**. Nothing is edited in place; a correction is a
new row. That record is what drives each visit's payment status, which is why
the status and the money can never quietly disagree.

## Getting paid without a card on file

- **A payment link** for any visit or any amount, sent by email, or by text to
  customers who have opted in.
- **Cash, checks, bank transfers**, or any method your company defines: the list
  is yours to edit. This needs no Stripe account at all.
- **Refunds**, including of payments that were recorded by hand.

On Free you get paid one job at a time: the payment link is for the whole
balance of a job you booked, and payments are recorded on an accepted quote or
a booked job. With a job booked or done, the quote's **Payments** card shows
what was paid before booking as money toward the job. See
[Scheduling a visit](/docs/scheduling-a-visit).

Money on a quote also keeps records in place. A customer who still owes money
on a completed quote cannot be deleted: record their payment first. A quote
cannot be deleted while it holds money that has not been refunded: refund it
first.

![Native UI preview: Payment methods with synthetic records.](/images/docs/mobile-payment-methods-en-20261019.webp)

## The customer portal

The customer portal is on Starter and above. Mint a private portal link from a customer's page and they get:

- Upcoming visits, with confirm buttons
- Their payment history and receipts
- The card on file, which they can update **without calling the office**
- **Book another visit**: open times to pick from, at the price of their last one

A booking made there is a **request**. It lands on your schedule unconfirmed,
with nobody assigned to it, and rings the bell, sends the office an email and
files itself in the customer's own conversation, so it is seen rather than
discovered. You confirm it and put a crew on it; nothing is dispatched by a
link. The times offered are the ones your branch is actually free, from the
same engine that suggests slots on your own booking form, and the price is
copied from the customer's last visit so the page cannot quote one figure and
bill another.

A customer with no visit behind them is offered the message form instead:
there is nothing to copy, and the page will not invent a length or quote a
price nobody agreed.

![Web app: Customer details, with synthetic records.](/images/docs/customer-detail-en-20261019.webp)

## Chasing what is owed

The **Money owed** report lists every open invoice by customer with its status
and how long it has been waiting, so nothing outstanding hides at the bottom of
an inbox. It is included on every paid plan. See
[The dashboard and reports](/docs/the-dashboard-and-reports).

Failed payments appear in the dashboard's **needs-attention** list rather than
waiting to be noticed.

## Find and manage invoices on the web

Open **Invoices**. It starts on **Visit invoices**; **Upcoming** shows later visits.
Search by invoice number, customer or address; filter by
status and use the date and sort controls when needed. Use the page arrows to
reach older invoices. **Details** shows the document’s dates, line items, totals,
balance and payment history. A credit memo has signed credit amounts; a void
document keeps its history and has nothing owed or returnable.

The page has tabs. **Visit invoices** shows visits through the end of this week
(Monday to Sunday, in the location's time zone), latest visit first, along with
invoices written by hand. **Upcoming** lists the visits after this week, soonest
first; when there are none it shows **Nothing upcoming** and "Invoices for
cleanings after this week show up here." **Monthly invoices** appears when your
company does commercial work or has monthly invoices. The form for a
hand-written invoice opens on **Visit invoices** only.

With payment-write permission, you can create a manual invoice from line items,
email an eligible invoice, record a payment or charge a saved card when offered.
Credit memos and voiding use the document’s eligibility checks. A credit memo
records a credit; it does not by itself return money. Refund an eligible payment
separately. **Download PDF** is a web action.

To email several invoices, select eligible rows on the current page, review the
selection and confirm the email action. Read the result for each invoice:
undelivered or refused items are not sent. Emailing does not charge a card.
For a commercial customer on consolidated billing, the monthly invoice view
shows included visits, approved [extra work](/docs/change-orders) that is not on
a visit, and billable restocks. Extra work on a visit is part of that visit's
price. Manage that monthly document on the web.

## Invoice access on the phone

The mobile app has **Settings → Invoices** and an Invoices entry
from **Reports → Money received**. Starter and above and permission to read
payments are required; Crew does not get this access.

1. Choose **Through this week** or **Upcoming**, which lists visits after this
   week, soonest first. Search, choose a status and use the page arrows to move
   through the list: further back on **Through this week**, further ahead on
   **Upcoming**.
2. Open an invoice to read dates, line items, server totals, balance and payment
   history. Returning keeps the list’s search, status and page.
3. With payment-write permission, use **Email invoice** and confirm **Send invoice**.
   An optional recipient applies to this email only; it does not edit the customer.

A failed read offers Retry. A delivery failure is not a successful email. If
the send outcome is unknown, check the customer’s message history before trying
again; the app avoids another send while that outcome is unresolved in the
current app session. Restarting the app does not prove the first email failed.

Native invoice details have read-only payment history. They do not create or
edit invoices, void documents, create credit memos, manage monthly invoices,
send bulk emails, download PDFs or take/refund payments from this screen. Use
the web for invoice management and the existing quote or visit payment panel
for supported mobile payments. See [Tips, card fees and refunds](/docs/tips-fees-and-refunds).

The customer portal is a browser page; managing portal
links remains a web task.

![Web app: invoices on the Visit invoices tab, beside Upcoming and Monthly invoices, left table view above and right-side actions below; two actual captures with synthetic records.](/images/docs/web-invoices-en-20261019.webp)

![Web app: invoice details opened on the Visit invoices tab, left table view above and right-side actions below; two actual captures with synthetic records.](/images/docs/web-invoice-detail-en-20261019.webp)

![Native UI preview: Invoices with synthetic records.](/images/docs/mobile-invoices-en-20261019.webp)

![Native UI preview: Invoice details with synthetic records.](/images/docs/mobile-invoice-detail-en-20261019.webp)

![Native UI preview: Invoice email confirmation with synthetic records.](/images/docs/mobile-invoice-email-en-20261019.webp)

---

---
title: "Payment options on invoices · BlastoClean docs"
description: "Configure invoice payment options: business links or Zelle instructions, with company defaults and explicit location choices."
url: "https://www.blastoclean.com/docs/invoice-payment-options"
---

# Payment options on invoices

Getting paid · Web and mobile · 4 min read · Updated October 7, 2026

**Owners can display business destinations for existing manual payment methods. Staff must verify receipt and use Record payment.**

**Availability:** Use the web settings once this release is available in your
environment. Mobile access also requires an app version that includes invoice
payment options.

## Choose what customers see

As an owner, open **Settings → Payment methods → Show payment options on
invoices** on the web or in the mobile app. Add any missing method to your
usual payment-method list first. Existing methods start with **Show on invoices**
off. Your internal methods and payment history remain available.

For each method you want to show:

1. Turn on **Show on invoices** and select **Venmo**, **Cash App**, **PayPal**,
   **Zelle**, or **Custom**.
2. Enter the recipient's display name and your actual HTTPS business payment
   link. For Custom, also confirm the exact business hostname. For Zelle,
   enter the recipient details supplied by your bank; you may attach a
   bank-issued PNG QR image, up to 100 KB.
3. Add short instructions if needed. Use **Move up** and **Move down** to put
   the options in order, inspect the **Customer preview**, then save.

Use only public payment destinations, never login links, private portal links,
API keys or other credentials. Names and instructions are plain text. If a save
fails, your edits stay in the form. If another owner has saved meanwhile,
reload and review the current settings before trying again.

![Web app: Invoice payment options, with synthetic records.](/images/docs/invoice-payment-options-web-en-20261019.webp)

![Native UI preview: Invoice payment options with synthetic records.](/images/docs/invoice-payment-options-mobile-en-20261019.webp)

## Company defaults and locations

Choose **Company defaults** for the company's destinations. The editor lists
the active locations that inherit those defaults, so you can see the impact
before saving. On Business, each location can choose:

| Choice | What customers see |
| --- | --- |
| Inherit company defaults | The current company options. Later company changes apply. |
| Use these options | Only that location's configured options, even if the list is empty. |
| Hide all manual options | No manual options; company defaults never fill the gap. |

If your plan stops including multiple locations, saved **Use these options**
settings pause and those locations use the company defaults. **Hide all manual
options** still applies, and archived locations remain blocked. Saved location
options return if your plan includes multiple locations again.

The location stored on the invoice determines its destinations. Switching your
own working location or moving a customer does not change that invoice's
location. Older invoices with no location use company defaults. Archived
locations cannot offer these payment destinations. Hiding manual options does
not disable an otherwise eligible Stripe checkout.

## The customer pays; staff verify

The invoice email and PDF point to the **hosted invoice**. Its **Payment options**
panel displays the current destinations and lets the customer copy the remaining
amount, currency and invoice number. Share that invoice, rather than copying a
provider destination into an email or PDF that could become outdated.

![Customer browser page: Invoice payment options, with synthetic records.](/images/docs/invoice-payment-options-customer-en.webp)

An external link does not fill the amount or invoice number for the customer.
They must confirm the recipient, amount and currency in the provider's app or
website, and include the invoice number where supported. A reusable link may
already contain a **fixed amount or currency** that does not match this invoice.
Check the preview carefully. Provider eligibility and account requirements
still apply; accountless checkout is not promised.

Opening a link, returning to the invoice, or telling you “I paid” does **not**
mark it paid. Check receipt in your business account, then use the existing
**Record payment** action and the correct method. The ledger determines the
balance. Do not ask the customer to pay a second time while you verify receipt.

Partially paid invoices show the remaining balance. Paid invoices, void
invoices, credit memos, and invoices with a card charge pending do not offer
these manual options. Clicking a link rechecks the invoice and current
destination; staff verification remains necessary for transfers outside the app.

## Provider details and scope

- **Venmo:** use your actual business-profile link. Venmo describes direct and
  QR payments in its [business-profile guidance](https://venmo.com/business/profiles).
- **Cash App:** use your business's actual shared `cash.app/$…` link. See
  [Cash App's explanation of $cashtags](https://cash.app/help/us/en-us/3123-cashtags).
- **PayPal:** use an actual PayPal.Me or supported PayPal business-payment
  link. PayPal.Me links can include an amount and currency; see
  [PayPal's official FAQ](https://www.paypal.com/us/cshelp/article/paypalme-frequently-asked-questions-help432).
- **Zelle:** use enrolled recipient instructions or a QR exported by your bank.
  Blasto Clean does not invent a universal Zelle payment URL. QR availability
  depends on the bank; see [Zelle's QR guidance](https://www.zelle.com/faq/how-do-i-use-zelle-qr-code).

This feature covers regular visit invoices and manually written invoices on
Starter and above. Location choices require Business. Free's existing payment
recording and job payment capabilities stay the same. **Monthly consolidated
invoice allocation is outside this release**, including visits billed through
a consolidated month. No new payment gateway is connected by these settings.

---

---
title: "Taking payment in person · BlastoClean docs"
description: "Tap to Pay on iPhone, contactless payments on supported NFC Android devices, the hosted card page on the phone, and recording cash or a check: all from the visit, at the customer’s door."
url: "https://www.blastoclean.com/docs/taking-payment-in-person"
---

# Taking payment in person

Getting paid · Mobile app · 2 min read · Updated October 16, 2026

**The phone is the card reader: Tap to Pay on iPhone, contactless payments on supported NFC Android devices, a hosted Stripe card page for everything else, and cash or checks recorded with no payment account connected at all.**

The money panel is on the visit, so taking payment is something that happens
where the work happened rather than back at the office three days later.

![Native UI preview: Visit details and time clock with synthetic records.](/images/docs/mobile-visit-detail-en-20261019.webp)

## Tap to Pay on iPhone

With your Stripe account linked, the phone **is** the terminal: Tap to Pay on
iPhone, and contactless payments on supported NFC Android devices. The customer
taps their card or their phone against yours.

The amount comes from the visit price. The phone collects the card, and the
payment record follows Stripe's answer, so a phone that dies mid-tap cannot
leave you with a payment that happened and a record that does not know about
it.

## The hosted card page

No tap: an older phone, a card that will not read, a customer who would rather
type it? Open the hosted **Stripe Checkout** card page on the phone. It is the
same page a payment link opens. The customer enters their card there, and **the
card number goes straight to Stripe**: it never touches this app.

Tap to Pay on iPhone, contactless payments on Android, and card entry are offered independently of each other. The app
shows each one the phone can actually do, rather than guessing and hiding an
option that would have worked.

## Cash, checks and everything else

**This needs no payment account at all**, and that is the point rather than a
consolation prize. Record cash, a check, a bank transfer, or any method your
company has defined, and refund them later if you need to.

## Tips

Where your company has switched tips on for the working location, every
in-person flow asks once, up front: preset percentages with their real amounts
shown, a typed amount, or no tip. The tip is added to that payment, and the
payment row afterwards says "includes … tip". See
[Tips, fees and refunds](/docs/tips-fees-and-refunds).

## The other two ways

From the same panel you can also **charge the card on file**, or **email a
payment link**, for the customer who wants to pay later, or who is not there.

## Plan, permissions and device availability

Visit payment controls require Starter or above and payment write permission,
which owners and managers have. Crew members do not take payments or read
customer billing. Free retains its quote and booked-job payment flows.

Tap to Pay additionally needs a supported device, Stripe setup and an eligible
country/account. The app shows available methods; a screenshot or browser
preview cannot demonstrate a working contactless reader. If a charge result is
unknown, check live payment history before asking the customer to pay again.
A saved offline visit is not enough to charge a card.

---

---
title: "Tips, card fees and refunds · BlastoClean docs"
description: "Switching tips on per location, adding an optional and fully disclosed card fee, and refunding any payment, including one recorded by hand."
url: "https://www.blastoclean.com/docs/tips-fees-and-refunds"
---

# Tips, card fees and refunds

Getting paid · Web and mobile · 2 min read · Updated October 16, 2026

**Tips and card fees are both off by default: tips can be switched on per location and are asked for wherever a customer pays, and a card fee (yours, never ours) is shown on the quote and again at checkout.**

## Tips

Tips are on Starter and above. They are off by default, and you switch them on
per location. Then customers can add one wherever they pay:

- On their invoice online
- At the door, with [Tap to Pay on iPhone, contactless payments on Android, or the hosted card page](/docs/taking-payment-in-person)
- Recorded alongside a cash payment

Every in-person flow asks once, up front, and offers preset percentages **with
their real amounts shown** rather than percentages alone, because "20%" and
"$67.80" are not equally easy to answer. A typed amount and "no tip" are always
there.

The tip is part of that payment. It shows on the payment row ("includes … tip")
and in your reports.

## The card fee

You may add a percentage fee of your own for paying online by card.

Two things about it:

- **It is your fee, not ours.** BlastoClean never adds one.
- **It is disclosed.** It is off by default, and where it is on it is shown to
  the customer on the quote and again at checkout: never a surprise that turns
  up on a statement.

## Refunds

Full and partial refunds work on card payments, and also
**on payments that were recorded by hand**, which people often do not expect. A cash refund is a real
event in your business, so it is a real row in the payment record.

On Free you can refund the card payment for a job you booked, and the payments
you recorded on a quote or a job. The job card offers the refund whether the
job is booked, done or canceled.

Everything lands in the same payment record described in
[Invoices and payments](/docs/invoices-and-payments): nothing is edited in
place, and each visit's payment status is derived from the rows rather than kept
alongside them.

## Job chat

Job chat does not send texts or accept tips. See [Job chats](/docs/job-chats).

## Refund status on the native app

An owner or manager with refund permission can refund an eligible payment from
its payment history, including a payment recorded by hand. The amount cannot
exceed the remaining refundable balance. Pending refunds reserve that amount;
only a succeeded refund counts as settled money returned.

If the response is interrupted, do not start a second refund. Use the status
check offered on that charge and wait for its result. A refresh with no matching
refund does not prove the first request failed. While the outcome is unknown,
the app keeps another refund on that charge unavailable. This protection is
scoped to the current account, company and location while the app is running;
review the live payment history after restarting it.

Native invoice details show history but do not start a refund. Open the
customer or visit payment history that provides the refund action.

---

---
title: "The dashboard and reports · BlastoClean docs"
description: "The owner’s dashboard, the needs-attention list, and every report (money per hour, who stays, quotes to jobs, money owed, crew, and how full you are) with complete CSV and Excel exports."
url: "https://www.blastoclean.com/docs/the-dashboard-and-reports"
---

# The dashboard and reports

Running the company · Web and mobile · 10 min read · Updated October 20, 2026

**The dashboard shows the pipeline, money collected, the week ahead and a needs-attention list, and every number opens the exact list it was counted from; the reports behind it export to CSV or Excel.**

![Web app: Home dashboard, with synthetic records.](/images/docs/dashboard-en-20261019.webp)

## The dashboard

Four numbers across the top: money collected in the last 30 days, accepted work
waiting to be done, your acceptance rate, and the visits and hours in the next
seven days, then the quote pipeline by status.

**Every number opens the exact list it was counted from.** A figure you cannot
drill into is a figure you end up not trusting.

### The needs-attention list

Beside the pipeline is the list of things that will quietly cost you money if
nobody looks:

- Quotes expiring within the week
- Visits where the customer asked for a different time
- Failed payments
- New quote requests

On the web, **Visits where the customer asked for a different time** opens
**Change requests**, one card per visit with what the customer wrote and the
time they picked, if they picked one. Each card answers the request in one
click: move the visit to the time they picked (when they picked one), keep the
booked time (which confirms the visit as it stands; the customer is not sent a
message, so let them know), or pick another time from the crew's week. An
answered request leaves the list. If a colleague answered it first, the page
says so instead of answering it twice.

### Estimated vs actual

Record how long visits really took when you complete them, and the dashboard
shows how your estimates compare with reality. It is the number that tunes every
future quote. See
[Your room and task library](/docs/your-room-and-task-library).

### Owed on accepted quotes

On every plan, Free included, the **Owed on accepted quotes** card lists what
customers still owe on accepted quotes and booked jobs. On Free it is on your
dashboard, beside your booked jobs, and it is also on each customer.

- A booked job stays on the list while its quote is out for re-approval, at the
  price last approved.
- With more than one location, the all-locations view opens each quote in its
  own location.

## Home for estimators and read-only viewers

Estimators and read-only users get their own **Home**, in the web app at the
same `/dashboard` address and in the phone app, and signing in lands them there. It is about quotes only: **Your
quotes and your location's, at a glance.** It works on every plan, and it shows
no money collected, payouts or profit.

**Whose quotes** switches between **Mine**, the quotes you created, and
**Everyone at** your location. It starts on **Mine**, and both cover the
location you are working in.

- **Sent this month**: how many quotes went out, their total and the average.
- **Win rate, 90 days**: accepted out of decided. On **Mine** it also shows the
  location's rate.
- **Expiring in 7 days**: the quotes about to lapse and what is at stake.
- **Accepted, ready to book**: always the whole location.
- **Waiting on the customer**: the quotes sent or viewed but not answered, split
  by how long they have waited (0–3, 4–7, 8–14 and 15+ days), with the five
  that have waited longest under **Waiting longest**.
- **To answer**: new quote requests, and viewed quotes with no answer for 3+
  days.

The expiring, accepted and waiting cards, and each line under **To answer**,
open the matching quotes or requests list. Read-only viewers see the same page
without the **New quote** button.

![Web app: the quotes Home an estimator lands on, showing Mine, with synthetic records.](/images/docs/sales-home-en-20261019.webp)

## The reports

![Web app: Reports and money received, with synthetic records.](/images/docs/reports-en-20261019.webp)

Open **Reports** in the web navigation. Reports starts on **Money received**.
On **Free**, this screen shows the **Payment ledger** and exports for your own company.
**Starter and above** add trends by date and payment method. You can choose another
report included in your plan and keep its selected date range.

On the web, reports are grouped under **Money**, **Customers**, **Team** and **Quality**. Choose the group, then the report. Reports from other plans sit under **More reports**. Direct links still open the selected report.

The mobile app opens on **Home** too, on every plan. Owners and managers on a
paid plan see the dashboard, estimators and read-only users see their
quotes-only Home, and Crew open on **My jobs**. On Free, owners and managers see
the app's version of the Free dashboard: the getting-started line, **New quote** and
**Customers** buttons, a **Booked jobs** card with your next jobs and **See all
booked jobs**, and, for people who can see payments, **Owed on accepted
quotes**.

In the app, owners and managers open **Reports** from the **Reports** icon at
the top of Home, or from **More** > **Settings** > **Reports**. Reports starts
on **Money received**, which on Free is the basic payment ledger. Choose **All
reports** to open the report chooser; returning keeps your ledger range and
page.

![Native UI preview: Reports and money received with synthetic records.](/images/docs/mobile-reports-all-en-20261019.webp)

Which reports you have depends on your plan. **Free** includes a basic ledger
of your own company's payments. **Every paid plan** includes the dashboard,
**Money owed**, **Money received trends**, the basic cancellation and fee ledger,
**Add-on revenue**, and **My week** for office roles. CSV and Excel are included at each report's tier.

| Report | What it answers | Plan |
| --- | --- | --- |
| **Payment ledger (inside Money received)** | Recorded charges and refunds, customer, reference, method and status | Free |
| **Money received trends** | Charges, refunds and net receipts by date and payment method | Starter |
| **Cancellation and fee ledger** | Notice, reason and assessed or collected cancellation fees | Starter |
| **Add-on revenue** | What each saved add-on sold on completed visits, by name | Starter |
| **Quality and response** | Inspection scores, actions, complaint acknowledgment and checklist completion | Pro; cross-location comparison on Business |
| **Cancellations and slot recovery** | Canceled time, notification attempts, filled hours and time to fill | Pro |
| **Money owed** | What is owed, by customer, and how long it has been waiting | Every paid plan |
| **My week** | My own visits and pay for the week | Every paid plan |
| **Money per hour** | Which customers run below my target hourly rate | Pro |
| **Quotes to jobs** | Sent, accepted and declined by week, including why people said no | Pro |
| **Crew** | Completed visits, hours, revenue and no-shows per person | Pro |
| **Inquiries** | What the request form is actually bringing in | Pro |
| **Who stays** | Who has not rebooked in 90 days, and what they used to spend | Business |
| **How full you are** | Booked minutes against available minutes, 1–12 weeks out | Business |
| **Profit by place** | Which standing contracts still make money, one building at a time | Business |

Two are worth calling out. **Money per hour** flags the customers running below
your target rate automatically rather than leaving you to notice, and the
hour it divides by is a *person*-hour, so a job you send two cleaners to is
rated on the two hours of labor it cost you, not the one hour it took.
**How full you are** tells you that you are overbooked before a customer finds out for
you.

**Profit by place** is on the Business plan, and on the web app for now. When
Team pay is set up, each visit uses the pay rate in effect for each person on
that date. W-2 workers include the extra payroll cost on those wages. 1099
workers do not. Your own time counts only if Count my time as a cost is on.
Unpaid time is left out. The price is the visit price with tax taken out. The
cost is wages and payroll only. It does not include insurance or a share of
the van, and there is no overhead figure in it. If Team pay is not set up, the
report uses one hourly crew cost. The Free plan has no Team pay. On Free,
that hourly number is the crew cost. A person with no pay set for the visit uses it too. Next to that
number, the app can suggest Use $X from Team pay: the average pay of hourly
and salaried people, weighted by hours, with the W-2 payroll extra added. That
suggestion is wages and payroll only.

Billing commercial clients on net terms? **Money owed** ages what is owed
into 0–7, 8–30, 31–60 and over-60 days, from the invoice's due date for
customers on payment terms. See
[Commercial cleaning mode](/docs/commercial-cleaning-mode).

**My week** is personal to the signed-in office user on a paid plan; it does
not require manager report permission. Crew has My jobs and does not have a
My week or Reports destination.

## Reading the new reports

**Money received** separates charges, refunds, net receipts, tips on charges and
customer-paid card fees by currency. Hosted payments use recorded settlement time. Historical timestamps may have
been backfilled from receipt or creation dates. Explicit manual payment dates
keep the calendar day entered; other manual payments use their recorded time.
Missing hosted settlement times are labeled as recorded-date fallbacks. These are recorded receipts, not bank payouts,
actual processor fees or a full profit-and-loss statement. Refunds do not record
how much came from tips or customer-paid fees, so that allocation stays blank.

**Quality and response** follows completed inspections, actions and customer
requests created in the range, and checklists on visits scheduled in the range.
Unscored inspection items stay unscored. Actions show their current resolved or
overdue state. Complaints have their recorded acknowledgment targets; ordinary
requests and questions stay separate. Checklist counts distinguish done,
skipped and not applicable. The report does not assign quality to individual
workers. Business adds a comparison across your authorized locations.

**Cancellations and slot recovery** follows visits canceled in the selected
range: notice, reasons, assessed fees, succeeded fee charges and refunds.
Pro adds notification attempts, filled hours and time to fill. Attempts count
recipients whose outreach started, not queued candidates or confirmed delivery.
Filled hours use the current replacement duration, capped to the opening. Missing,
canceled or subsequently moved replacements stay blank. Moving an existing visit into a
canceled slot is identified as a move; filled hours are not new revenue.

**Add-on revenue** adds up the saved add-ons on completed visits dated in the
range, using each visit's current price lines. It shows one row per add-on, under
its current name (archived add-ons included), and a list of every add-on line
with its visit. Lines typed by hand on a visit are not counted. See
[Add-ons and price changes for one visit](/docs/visit-add-ons).

## Getting the numbers out

Every report your plan includes exports to **CSV or Excel (.xlsx)**, with all
matching rows and report sections. Previous and Next browse independent tables;
headline totals still cover the full filter. Changing the range, location or
person resets the relevant pages. Downloads include range, filters, authorized
locations, timezone, currency, row counts and an as-of timestamp. Excel keeps
amounts numeric and IDs as text. Accountant exports separate visit totals from
worker cost lines, preserving missing and approximate values.

Dates use the selected location's calendar, or the company's calendar across
locations, including daylight-saving changes. Money owed is a current snapshot;
its payment-speed metric covers settled visits completed in the trailing 90
days. Quote and inquiry follow-up queues include older items still waiting,
even when the selected range is quiet. Timing metrics use every qualifying
record, not a limited sample. Six established report screens may briefly lag because they use cached reads;
the four new reports use uncached reads. Each download uses uncached reads
within one consistent snapshot.

On Pro and Business, API keys and OAuth apps can read data from the published
reports, including these four new reports, within their plan and authorized
location. My week, Job profit, contractor summaries and Profit by place are not
exposed through these API-key/OAuth integrations.

![Native UI preview: Reports and money received with synthetic records.](/images/docs/mobile-reports-en-20261019.webp)

The mobile app has report views, filters and paging,
with **CSV** and **Excel** downloads through the device's save/share sheet. This covers Money
per hour, Who stays, Quotes to jobs, Money owed, Crew, How full you are, Inquiries,
My week and the new reports except Add-on revenue, which stays on the web
for now. Full Job profit, contractor summaries and
Profit by place remain web views. See [The mobile app](/docs/the-mobile-app).

## Recover a report without changing its filters

If a web report read fails temporarily, select **Retry**. It repeats the read
with your dates, filters and page intact. A plan or permission refusal is not a
loading failure. Owners can use **Go to Billing** to reach the subscription
section of Settings; other roles ask the owner. Opening that link does not
change the plan.

Native reports retain their own filters and paging, with exports through the
device save/share flow in versions that include them. The native visit’s profit
card is a separate read-only view for permitted office users on Starter and
above; full Job profit, contractor summaries, Profit by place and Add-on
revenue remain web reports.

![Web app: Reports and money received, with synthetic records.](/images/docs/reports-phone-en-20261019.webp)

---

---
title: "Customer follow-ups · BlastoClean docs"
description: "A private work list for customers who have not booked in a while or have canceled repeatedly, with manual call, email and text outreach that respects their preferences."
url: "https://www.blastoclean.com/docs/customer-follow-ups"
---

# Customer follow-ups

Running the company · Web and mobile · 2 min read · Updated October 16, 2026

**Customer follow-ups put people who may need a personal check-in on one staff-only list; your team decides whether and how to reach out, and no win-back message is sent automatically.**

Some customers do not say they are done. They simply have not booked again, or
have had to cancel a few times. Customer follow-ups puts those observed signals
in one private work list, so a friendly check-in does not depend on somebody
remembering it.

## What appears on the list

One customer gets one card, even when more than one reason applies:

- They have had a completed clean but have not booked again within the number
  of days you choose: **90 days** by default.
- They have reached the number of **customer-initiated cancellations** you
  choose in your look-back period: **two cancellations in 90 days** by
  default.

The card says what BlastoClean observed, such as “It has been 96 days since the
last clean” or “2 customer cancellations in 90 days.” It does not decide what
the customer means or label anyone as a bad fit.

A future visit or an active recurring service keeps a customer out of the
time-away reason. One card can still show the cancellation history that the
office may want to discuss.

## Reach out your way

Open the list from **Customers** on the web app or mobile app. From each card,
your team can:

- Call, email or text the customer when that channel is available.
- Schedule a new visit while the conversation is fresh.
- Snooze the card until a better time.
- Mark the customer as contacted after you have actually reached out.
- Dismiss a card, including **Do not contact** when the customer asks not to
  hear from you.

Nothing happens just because a card exists. BlastoClean opens the call, email
or text for a person to review and send; it never sends a win-back message to a
customer automatically.

## Preferences always come first

A visit-reminder text permission is not permission to market to somebody.
Customer follow-ups uses separate email and SMS marketing preferences, and
only offers a text or email when the customer has the right current preference
and contact details. A STOP reply still opts a phone number out. A **Do not
contact** decision blocks future follow-up outreach.

See [Text messages and consent](/docs/text-messages-and-consent) for the text
messaging rules.

## Keep the office in the loop

Owners choose the inactivity and cancellation thresholds, then can turn on a
daily internal email reminder and optional staff text reminder for the people
who can work the list. Those reminders are off until an owner enables them,
and they remind your team to look: they do not contact customers.

The point is a timely, human follow-up: a reason to reach out, not an automatic
campaign.

---

---
title: "Team, roles and permissions · BlastoClean docs"
description: "What owners, managers, estimators and read-only users may do, how access is revoked the moment a role changes, and how company isolation works."
url: "https://www.blastoclean.com/docs/team-roles-and-permissions"
---

# Team, roles and permissions

Running the company · Web and mobile · 5 min read · Updated October 19, 2026

**Owners manage the company and managers run the work, with narrower roles for people who only estimate or only read; changing a role or deactivating someone revokes their access immediately.**

![Web app: Employees and Teams, with synthetic records.](/images/docs/settings-team-en-20261019.webp)

## The roles

- **Owner**: manages the company: settings, billing, the team, the payment
  account.
- **Manager**: runs the work: quotes, schedules, customers, payments.
- **Estimator**: quotes, customers and scheduling. Can read payment status,
  but cannot collect or refund payments or change the company library.
- **Read-only**: views permitted records; cannot change customer, quote,
  schedule or payment records. Feedback submissions and votes have separate access.
- **Crew**: assigned visits in the active location: work instructions, checklists, photos and clocking in or out. It does not grant access to quotes, payments, reports or site-vault secrets.

In the web app and the phone app, estimators and read-only users open on a
**Home** of their own
quotes and their location's, with no money collected, payouts or profit; see
[The dashboard and reports](/docs/the-dashboard-and-reports).

Some abilities depend on the role rather than simply being hidden. Overriding a
quote's final price is the clearest example, and what it records is described in
[Pricing a quote](/docs/pricing-a-quote).

**Changing a role or deactivating someone takes effect immediately**, on
sessions that are already open. Somebody who left this morning is not still
signed in this afternoon.

## The Crew view

The role is opt-in: nobody changes role automatically. The person lands on **My jobs** and opens an assigned visit. If a visit is reassigned while their clock is open, they can finish their own clock in that same location without regaining access to the job. If the company requires clock-ins before completion, an open visit says: "Your company requires every assigned staff member to record a clock-in before this visit can be completed." See [Scheduling a visit](/docs/scheduling-a-visit). The view shows up to 5000 visits for the day; contact the office if that limit is reached.

![Web app: My jobs and visit coverage, with synthetic records.](/images/docs/crew-jobs-en-20261019.webp)

On the web, Crew gets the same sidebar, tablet rail and phone bottom bar with
**More** as the office, holding only what a cleaner works with: **My jobs** as
Home, **Job chat**, **Staff** and **Visit coverage** under **Work**, and
**My account** at the foot. The top bar has the notification bell and, for
someone at two or more locations, the location switcher. The account menu has
the **Language** choice and **Sign out**, which asks first. The logo goes back
to **My jobs**.

## Locations

On the Business plan, people are assigned to locations, and what they can see
follows: the schedule, the search box and the reports show one location's work at
a time, with an "all my locations" view for people who work across several.
Search never becomes a way around this: it only ever returns what your role and
your locations already cover.

## ChatGPT and Claude

Office roles can connect their own ChatGPT or Claude to BlastoClean. Crew
accounts cannot connect these assistants. Each connection works as the person
who connected it: it sees and does only what their role allows, in that location. See
[Using BlastoClean in ChatGPT and Claude](/docs/chatgpt-and-claude).

## Company isolation

Your company's records stay separate. Another company's data is not there to
open.

## How people sign in

A password and any account you connect, such as Google or Apple, are credentials
on the same account and can be mixed freely. Disconnecting one that has been
compromised signs out every other session at the same time.
[Creating your account and signing in](/docs/creating-your-account) lists which
sign-in options are available and which of them can start an account rather
than only join one.

Sign-in stays with BlastoClean, in a way page scripts cannot read. To keep
recent work available offline, the browser may also keep a small working set on
the device. That offline information is separated by signed-in user, company
and location and cannot be used to sign in. On a shared computer, sign out and
clear BlastoClean's stored site data when you also want to remove the device
copy. Sign-in slows down after too many tries, passwords are stored so they
cannot be read back, and a bot check appears only after repeated failures. A
normal sign-in stays one click.

## The activity trail

![Web app: Activity log, with synthetic records.](/images/docs/logs-en-20261019.webp)

A company-wide record of who did what, when, to which record: pageable and
filterable. It is there for the week you have to reconstruct, and it exports
with the rest of your data. See
[Exporting your data](/docs/exporting-your-data).

## A second factor

A role decides what somebody may do; a second factor decides that it is really
them. Each person can turn one on for their own account, and it is asked for
however they sign in. See
[Two-factor authentication](/docs/two-factor-authentication).

## Add and manage employees

The owner manages employee accounts in **Settings → Employees & Teams** on the
web. **Employees** lists people; **Teams** stores groups you can assign together.
Staff announcements are a separate **Staff** feature on Pro and Business.

Use **Add employee** to create an account with a name, email, role and starting
password. Search the roster and filter by active status or location. A failed
read is not an empty roster: use **Retry** before deciding nobody is listed.

On the web, use the employee row’s role and active-status controls. Business
also supports location assignments and a different role at each assigned
location. Changing a role or deactivating an account signs that person out.
You cannot demote or deactivate yourself or remove the last active owner.
Reactivating someone is subject to the plan’s seat limit.

In the mobile app, open **Settings → Employees → Edit access**. Review the
account role, active status, locations and per-location roles, then save.
**Use account role** removes a location’s role override. Cancel or Back discards
unsaved access edits. A failed save keeps them. If your own saved access needs
confirmation, wait or use Retry for the access refresh before leaving; it does
not save the change twice. Employee working-hours and day overrides remain web
controls; use [Availability and conflicts](/docs/crews-and-availability) for
schedule planning.

![Native UI preview: Employees with synthetic records.](/images/docs/mobile-employees-en-20261019.webp)

![Native UI preview: Employee access editing with synthetic records.](/images/docs/mobile-employee-access-en-20261019.webp)

![Web app: Teams, with synthetic records.](/images/docs/web-teams-en-20261019.webp)

![Native UI preview: Teams with synthetic records.](/images/docs/mobile-teams-en-20261019.webp)

---

---
title: "Two-factor authentication · BlastoClean docs"
description: "Adding a second step to sign-in: authenticator apps, security keys and text codes, recovery codes, trusted browsers, and the actions that ask again."
url: "https://www.blastoclean.com/docs/two-factor-authentication"
---

# Two-factor authentication

Running the company · Web and mobile · 3 min read · Updated October 16, 2026

**Turn on a second step from Settings → Security and it is asked for however you sign in, social sign-in included, using an authenticator app, a security key or a text code. You also get recovery codes for the day the phone is lost.**

A password is one thing somebody can lose. A second factor is the difference
between losing it and losing the company's customer list, its schedule and its
payment settings.

Two-factor authentication is **optional by default and per person**. Each team
member enrolls their own factors. A deployment can require enrollment; if it
does, follow the setup screen before entering the app.

## Turning it on

Open **Settings → Security** in the web app. You can enroll:

- **An authenticator app**: Google Authenticator, 1Password, Authy or any
  other app that reads a standard six-digit code.
- **A security key or passkey**: a hardware key, or the fingerprint or face
  unlock built into the phone or laptop you already carry.
- **A text message**: a code sent to your phone.

Enroll more than one if you can. Two ways in means a lost phone is an
inconvenience rather than a lockout.

## Recovery codes

Enrolling gives you **ten single-use recovery codes**. Each one signs you in
once when you cannot reach any of your factors. Print them, or keep them
somewhere that is not the phone they are there to replace: a recovery code in
a note on the locked phone is not a recovery code.

You can regenerate them at any time, which invalidates the old set.

## It applies however you sign in

The second step is asked for on every way into your account: with a password,
and with **every connected account**: Google, Apple, Microsoft, Facebook,
LinkedIn, X, Instagram and TikTok alike. Signing in through a social provider is
not evidence that a second factor happened, so it does not count as one. See
[Sign-in and social accounts](/docs/creating-your-account) for how credentials
sit on one account.

Signing in on the mobile app asks for the same second step. Enrolling is done
on the web.

## Trusting a browser

You can let a browser you own skip the second step for **30 days**. It is a
convenience on your own laptop and a bad idea on a shared computer, and
clearing every trusted browser at once is one of the actions below.

## The actions that ask again

Security changes such as enrolling or removing a factor, regenerating recovery
codes and clearing trusted browsers can ask for a recently verified factor.
The default verification window is **five minutes**, including on a trusted
browser; follow the prompt shown for your account.

Changing an existing password verifies the current password. Adding a first
password can ask for a fresh factor when one is enrolled. Account deletion
uses its own signed-in confirmation; it does not always ask for a new factor.
Your sign-in email is read-only in Account settings.

## If somebody loses everything

An owner cannot reset a colleague's second factor from inside the app. That
would make the factor only as strong as the owner's own account. Contact
support, who can reset it after checking who is asking. See
[Getting help](/docs/getting-help).

## What it does not cover

Two-factor protects a sign-in. It is not a substitute for giving people the
role they actually need: somebody who should not be moving money should not
have the permission to, whether or not their account has a second factor. See
[Team roles and permissions](/docs/team-roles-and-permissions).

## From the native app

In versions that include **Settings → Account**, use the password, social
account, two-factor, passkey or trusted-browser option to open the matching
web security page. A browser sign-in may be needed separately. Device biometrics
protect opening the app; they do not enroll a server sign-in factor.

See [Your account](/docs/creating-your-account) and
[Native version availability](/docs/the-mobile-app).

---

---
title: "Finding anything: search and keyboard shortcuts · BlastoClean docs"
description: "One search box for office roles to find customers, properties, quotes and visits, opened with ⌘K or Ctrl+K from office pages and driven entirely from the keyboard."
url: "https://www.blastoclean.com/docs/search"
---

# Finding anything: search and keyboard shortcuts

Running the company · Web and mobile · 1 min read · Updated October 16, 2026

**Office roles can press ⌘K (Ctrl+K on Windows) from any office page and type the first letters of a name, a street, a unit number or a quote number; results come back grouped by what they are and open from the keyboard.**

![Web app: Search results, with synthetic records.](/images/docs/search-en-20261019.webp)

## One box

Office roles can use global search. Crew accounts do not have this search.

Type the first letters of a name, a street, a unit number or a quote number.
Matches come back **grouped by what they are** (customers, properties, quotes,
visits) and each row carries enough to tell two Johnsons apart: the email on a
customer, the total on a quote, the date on a visit.

The pages you are allowed to open are in the same list, so it navigates as much
as it searches.

## The keyboard

| Key | What it does |
| --- | --- |
| **⌘K** / **Ctrl+K** | Open search, from any office page |
| **↑ ↓** | Move the highlight |
| **Enter** | Open what it is on |
| **Esc** | Close, and go back exactly where you were |

The whole thing works without reaching for the mouse, which is the difference
between a search box you use and one you forget about.

## It is not a way around a permission

Search only ever shows what your role and your locations already cover. It
returns fewer results for a read-only user in one branch than for an owner
across all of them: quietly, without announcing the existence of what it is not
showing. See [Team, roles and permissions](/docs/team-roles-and-permissions).

## On the phone

![Native UI preview: Search results with synthetic records.](/images/docs/mobile-search-en-20261019.webp)

Office roles can use the same search in the phone app, over the same records.
Crew accounts do not have it, and a subscription lock prevents opening it.

---

---
title: "AI assists · BlastoClean docs"
description: "What AI does in BlastoClean (draft quotes from website leads, sort inbound texts, suggest task times, write the Monday digest and the copy you would rather not) and the line it never crosses."
url: "https://www.blastoclean.com/docs/ai-assists"
---

# AI assists

Running the company · Web app · 3 min read · Updated October 18, 2026

**AI drafts, sorts and summarizes while prices use your configured library. Proposed quotes and visit actions need review; enabled follow-up automation can send personalized email without per-message approval.**

![Web app: AI settings, with synthetic records.](/images/docs/settings-ai-en-20261019.webp)

AI assists are on every paid plan. Starter, Pro and Business differ in how many
**AI credits** a month you get; the Free plan has none. The one exception is
[Magic Quote](/docs/magic-quote), which is Pro and above because a walkthrough
uses far more of that allowance than anything here.

## The line

Before the list, the rule that shapes all of it:

Prices come from your configured library. Draft quotes and suggested replies,
visit moves and instructions still need the relevant person's review and action.

Enabled follow-up automation is different: it can send a personalized email
body without a separate approval for each message. The system supplies the
subject and quote link. If personalization is off, refused or fails, the
scheduled follow-up uses its normal template. See
[Follow-ups and expiry](/docs/follow-ups-and-expiry).

## What it does

**Draft quotes from your website leads.** Your public
[request-a-quote page and widget](/docs/quote-requests-from-your-website) accept
up to five photos. The visitor's message and photos are read, and a draft quote
is pre-filled with rooms and tasks **from your own library**, not from a
general idea of what a property needs. You review and price every line.

**An inbox that sorts itself.** When a customer writes back, *"can we move
Friday?"* the message is filed and labeled whether it arrived as a text or as
an email: confirming, reschedule, cancel or question, each with a one-line
summary. No auto-replies. No automatic rescheduling. A person still acts on
every message, in [the customer inbox](/docs/customer-conversations).

**Voicemails you can read.** On Pro and Business, a voicemail left on your
business number is turned into a transcript, then sorted like a text, with a
suggested reply under it and, when the caller asked to move a visit, a
suggested move to approve. Each transcript uses one credit. See
[Calls and voicemail](/docs/calls-and-voicemail).

**A suggested reply.** Ask for a draft and one is written from the thread and
from that customer's actual upcoming visits, so it can give the real date rather
than a vague promise. It lands in the box for a person to edit or delete.
Nothing is sent, and every consent and quiet-hours rule still applies to the
send they make afterwards.

**Estimates that learn.** The app already compares estimated with actual visit
time. From that comparison it suggests **bounded** adjustments to your task
times, which you accept or dismiss one at a time. Quotes you have already sent
never change; only the ones you send next get sharper.

**A Monday-morning digest.** A weekly email with the pipeline, money collected,
the week ahead and what needs attention: the same numbers as
[your dashboard](/docs/the-dashboard-and-reports), with a short summary on top.

**Copy that saves you the blank page.** Drafts of:

- a personalized quote follow-up email, which enabled follow-up automation can
  send without per-message review (the system keeps the link and subject)
- a "before you arrive" briefing on the printable work order
- a review request after a completed, paid visit: only once you have set your
  review link
- a reply to a review

Send any of them as drafted, or edit first.

**Answers to "how do I…", right where you are.** The
[help assistant](/docs/getting-help) answers support questions inside the app,
grounded in this documentation and linking the article with the longer answer.
Unlike everything above, it is on **every plan**, Free included, and uses no
credits. Help has separate request and provider spending safety limits.

## Switching it off

Turn AI assists on or off in Settings. With them off, those features are simply
not there. Nothing else in the product depends on them.

## Included usage and safety limits

These paired provider spending allowances and usage displays are proposed for a coordinated release. They are not live configuration changes; current deployed behavior stays in effect until that release.

AI includes 250/700/1,500 fixed action credits on Starter/Pro/Business and a separate $4/$6/$12 monthly provider spending allowance, pooled across the company. Credits measure actions, not dollars, and do not guarantee a number of walkthroughs. Both limits apply. Failed customer-credit refunds do not erase billed attempts or retries. Settings shows usage; exhaustion pauses the assist with no automatic overage charge. Help uses a separate $1 monthly company safety allowance. Shared deployment safety limits may also pause service.

---

---
title: "Text messages and consent · BlastoClean docs"
description: "How SMS works in BlastoClean: opt-in recorded per phone number, STOP and START handled instantly, quiet hours in the visit’s own time zone, and no texts to landlines."
url: "https://www.blastoclean.com/docs/text-messages-and-consent"
---

# Text messages and consent

Running the company · Web app · 6 min read · Updated October 18, 2026

**Texting is opt-in per phone number, STOP opts a number out of your company’s texts instantly, nothing is sent between 9pm and 8am in the visit’s own time zone, and the app checks a number is not a landline before texting it. Marketing texts need a separate permission, recorded after the customer agrees to everyday texts. In the pending release, every company will text and take calls from a number of its own, through its own Twilio account.**

Text messages are part of the **Pro and Business plans**, and they behave the
way the rules require rather than the way that would be convenient.

## Connect your Twilio account

The per-company-only sender model and verified Twilio connection described below are pending release. They do not change the live service or activate texting. Current deployed settings continue to apply; email remains available when texting is unavailable.

Texting and calls work through your company's own Twilio account. Every
company texts from a number of its own. There is no shared number, so your
texts never go out alongside another business's, a customer's reply always
reaches you, and **STOP** to your number only stops texts from your business.
Until your account is connected, reminders, quotes and invoices go by email.

You need:

- your Twilio **Account SID** and **Auth Token** (required);
- a number on that account that can send texts, entered as the **Sending
  number**;
- optionally, an API key and its secret for sending.

Leave **Messaging Service SID** empty: BlastoClean puts your number in a
Messaging Service of its own.

Open **Settings**, go to **Texting & calls**, and enter them under **Connect
your own Twilio account**. Before anything is saved, BlastoClean checks them
with Twilio. Nothing is sent and nothing is bought. Your Auth Token and API key
secret are stored encrypted and never shown again. A trial Twilio account
cannot be connected, and each Twilio account can be connected to only one
BlastoClean company, so replies and **STOP** always reach the right business.

BlastoClean then sets up your number in Twilio for you, so replies and **STOP**
reach your customer records. There is nothing to paste into Twilio. It puts
your number in a Messaging Service it creates on your Twilio account and texts
your customers through it, and that service answers **STOP** and **HELP** for
you. If replies to your number go to another app right now, Settings shows
where they go and asks before sending them to BlastoClean instead. BlastoClean
never changes a Messaging Service it did not create: if your number is already
in one of your own, Settings shows **Needs attention**. Remove the number from
that service in your Twilio console, then choose **Set up Twilio again**.

When it is done, Settings shows **Texting set up on** your number **✓**;
otherwise it shows **Needs attention** with the reason. If someone changes your
number in the Twilio console later, choose **Set up Twilio again**. Always
enter the Auth Token, even with an API key: Twilio signs incoming messages with
the Auth Token, so without it replies and **STOP** cannot be checked.

Your Twilio account must be upgraded (not a trial). To text US customers from a
local US number, register the Messaging Service BlastoClean created (Settings
names it) for A2P 10DLC, with a Brand and a Campaign, in your Twilio console. A
toll-free number needs toll-free verification instead, and a short code must be
an approved short code. Twilio bills you directly for those texts. If you
disconnect, BlastoClean deletes the service it created only when nothing else
is in it and no campaign is registered on it; otherwise it keeps the service
and just takes BlastoClean's addresses off it.

Connecting the account does not turn on calls. To take calls on your number,
also fill in **Calls and voicemail** under **Texting & calls** and choose
**Save call settings**. See [Calls and voicemail](/docs/calls-and-voicemail).
Calls come in on the number in **Sending number**, so it must be able to take
calls.

To stop texting through your account, untick **Use my own Twilio account**.
Your details stay saved, and reminders, quotes and invoices go by email until
you tick it again. Unticking it also stops new calls to your number, because
calls come in through the same account. A call already in progress still
finishes.

## Consent, recorded properly

Opt-in is tracked **per phone number**, and there are three ways to get it:

- Recorded by the office
- Chosen by the customer online
- Given by the customer replying to a text

A **STOP** reply opts that number out of your company's texts, instantly.
**START** opts it back in. Neither needs anyone in your office to do anything.
STOP is about texts only: a customer who asked for earlier-time offers still
gets them by email, and each email has its own link to turn them off.

Message frequency varies. Msg & data rates may apply. Reply **HELP** for help.
Mobile numbers and opt-in data are not shared or sold to third parties for
marketing.

## Marketing texts need their own permission

Agreeing to texts about visits is not agreeing to promotional texts. Each
customer has a separate **Customer agrees to marketing texts** box, under
**Marketing permissions** on the customer's form. It is what
[customer follow-ups](/docs/customer-follow-ups) check before offering a
win-back text.

The box stays grayed out until three things are true:

1. **Your company can text.** **Send text reminders** is ticked in
   **Settings**. If that box is missing, texting is not set up for your
   company yet, and Settings says so. The customer form tells you which of the
   two it is and points you to Settings.
2. **The customer has a mobile number.** Add it in the **Phone** field. A
   landline cannot get texts.
3. **The customer agreed to everyday texts first.** Tick **Texts about visits,
   quotes, invoices, payment links, and saving a card**, just above the
   marketing box. A customer who replied **STOP** is opted out and needs to
   reply **START** or agree again first.

To turn on marketing texts for a customer:

1. Open the customer and choose **Edit details**.
2. Tick **Texts about visits, quotes, invoices, payment links, and saving a
   card**, if it is not ticked already.
3. Tick **Customer agrees to marketing texts**.
4. Save.

Only tick these when the customer has really agreed. Both choices belong to
the phone number. If you change the number, both boxes clear and you record
the customer's choice again for the new number. Unticking everyday texts also
clears marketing texts.

Email marketing works the same way, with its own **Customer agrees to
marketing emails** box. It needs only a valid email address.

## Quiet hours

Nothing is texted between **9pm and 8am in the visit's own time zone**, not the
office's clock and not one company-wide clock. A reminder that falls due at 3am
waits until 8am.

Eligible operational texts can wait in a queue until quiet hours end. Before
retrying, the app checks consent and current eligibility again. Queued messages
expire after 24 hours, and stale or no-longer-eligible messages are not sent.
A queued message is not a delivery guarantee.

## No texts to landlines

Before texting a number, the app checks what kind of line it is, and says so
right beside the phone field. You never pay for a message a landline would
silently swallow, and you never wonder why a customer "never got the reminder".

## Two channels that do not depend on each other

Reminders go out by email and, for customers who opted in, by text:

- A customer with **no email address** still gets texts.
- A customer who **never opted in** still gets email.

See [Reminders and confirmations](/docs/reminders-and-confirmations).

## What can be sent by text

Quotes, reminders and confirmation requests, and
[payment links](/docs/invoices-and-payments). Where a note runs longer than a
message allows, it is trimmed **and you are told**. The quote number, the total
and the link always arrive intact.

## Replies

Inbound messages land in the customer's single conversation thread alongside
emails, newest at the top. On a plan with
[AI assists](/docs/ai-assists) they are also labeled by what they are asking
for. A person still answers them.

They are answered from [the customer inbox](/docs/customer-conversations),
where texting a customer back is one of the three things the same box can do.

## Did it send?

Every text is logged with its outcome, alongside every email. See
[Exporting your data](/docs/exporting-your-data).

## Job chat

Job chat does not send texts or accept tips. See [Job chats](/docs/job-chats).

## Texting costs

Texts are sent through your own Twilio account, so Twilio bills you directly at its own rates. BlastoClean adds no per-text charge and no monthly texting allowance; a daily safety limit stops runaway sending. Long texts, emoji and accents may use several segments on your Twilio bill. Twilio bills calls, call recordings and the phone numbers themselves to your account the same way.

---

---
title: "Calls and voicemail · BlastoClean docs"
description: "Clients call your business number: it rings your phone, a missed call goes to voicemail, and the recording and a transcript land on the client’s thread in Messages."
url: "https://www.blastoclean.com/docs/calls-and-voicemail"
---

# Calls and voicemail

Running the company · Web and mobile · 8 min read · Updated October 19, 2026

**On Pro and Business, calls to your business number ring the phone you choose. A missed call plays your greeting and takes a voicemail, which arrives in Messages and in the client’s history with the recording, a transcript, a suggested reply and, when they asked to move a visit, a move to approve.**

Clients call the number they know. With calls set up, a call to your
business number rings your cell or the office line, and a call nobody picks
up goes to voicemail. The voicemail lands on the client's thread in
[the customer inbox](/docs/customer-conversations), with the recording, what
they said in writing, and a suggested reply.

Calls are part of the **Pro and Business plans**. They come in on the number in
**Sending number** in your Twilio settings, so connect your Twilio account first. See
[Text messages and consent](/docs/text-messages-and-consent).

## Set up call forwarding and voicemail

Open **Settings** and go to **Texting & calls**. In **Calls and voicemail**:

1. **Forward calls to**: your cell or the office line. Leave it empty to send
   every call straight to voicemail. It cannot be one of your own numbers: your
   call number or your own Twilio number.
   The call would only ring back into BlastoClean instead of a person, so
   saving tells you to enter a different phone.
2. **Ring for**: how long that phone rings before the caller goes to
   voicemail, from 15 to 40 seconds. The default is 20.
3. **Voicemail greeting**: type a greeting to be read out loud, or upload a
   recording of your own (an MP3 or WAV file, up to 5 MB). Leave the box empty
   to use the standard greeting: "Sorry we missed your call. Please leave a
   message after the tone." Uploading or removing a recording keeps your other
   changes in the form, and it does not turn calls on by itself: press **Save
   call settings** for that.
4. **Transcribe voicemails**: on by default. Each voicemail is turned into
   text so you can read it.
5. **Record answered calls**: off by default. Read "Recording and consent"
   below before you turn it on.

Press **Save call settings**.

Saving sets up your own Twilio number to take calls, so there is nothing to
paste. The card shows the two addresses it uses, for reference only. If
BlastoClean cannot set up the number, saving says so: your settings are kept,
and the number takes calls once a later save sets it up.

### Calls on your Twilio number

- Calls come in on the number in **Sending number**.
- The number must be able to receive voice calls. If Twilio says it cannot,
  saving tells you to choose a voice-capable number in Twilio.
- Switching your Twilio account off in Settings stops new calls. A call that is
  already in progress still finishes, and its voicemail is saved.
- Disconnecting the account frees the number, so another BlastoClean company
  that connects the same account can take calls on it.
- When you disconnect the account or calls move to a different number,
  BlastoClean takes its address off the old number in Twilio, but only if that
  number still sends its calls to BlastoClean.
- When you disconnect your Twilio account or connect a different one,
  BlastoClean deletes your call recordings from the old account. If some
  cannot be deleted, the **Calls and voicemail** card tells you how many to
  delete in your Twilio console. It still shows the count after your plan no
  longer includes calls.
- If the number is still set up to take calls for another BlastoClean company,
  saving says so and asks you to contact support.

### If you change your Sending number

Calls follow the number in **Sending number**. If the new number cannot be used for calls,
for example because it cannot receive them, the **Calls and voicemail** card
says why and what to do. Until a save sets up a number that can take calls,
calls keep ringing on your previous number.

## What callers hear

A caller hears "Thank you for calling" and your company name, and the phone you
chose starts ringing. Your phone shows your business number as the caller, so
you know it is a business call.

If nobody answers before the ring time runs out, the caller hears your
greeting and a beep, and can leave a message of up to three minutes. When your
company's language is Spanish, callers hear Spanish.

## Read and play voicemails

A new voicemail moves the client's thread to the top of **Messages** and marks
it unread, with a **Voicemail** label in the list. It shows as the newest
message on the thread, even if the client texted while they were leaving it. Open the thread to see:

- the voicemail with a player, so you can listen to it;
- the transcript, marked **Transcript by AI**. Transcripts can contain
  mistakes, so listen to the recording when it matters. If the caller spoke
  another language, the transcript says which. Use **Hide transcript** to fold
  it away;
- how long the message is, and the caller's number.

The same entries appear in the client's history on their customer page, along
with every other call: answered, missed or left as a voicemail, each with its
time, length and status. Lengths show in minutes and seconds, such as 0:12 or
5:05. A voicemail shows how long the message is; any other call shows how long
the call lasted.

### Callers you do not know

A call from a number that is not on a customer, from a hidden number, or from a
number that cannot be read goes to **Unknown senders** in Messages. Attach the thread to the right customer once
you know who called. Until then the voicemail offers no reply, because the
thread has no number to text back. If two customers share a number, the call also waits
there: BlastoClean does not guess which of them called.

If the call came from a wrong number or nobody you need, **Dismiss** it from the
**Texts from numbers we do not recognize** card on the Customers page, if you
can edit customers. It asks
you to confirm, then the thread leaves Messages and its counts. A new call,
voicemail or text from that number brings it back. See
[The customer inbox](/docs/customer-conversations).

## AI help with a voicemail

Once a voicemail has a transcript, BlastoClean treats it like a text from that
client:

- it is sorted (confirming, reschedule, cancel or question) with a one-line
  summary in the inbox list;
- a **Suggested reply** appears under the voicemail. Press **Use this reply**
  to put it in the box, edit it, and text it back yourself. Nothing is sent
  for you;
- if the caller asked to move a visit, a [suggested visit move](/docs/suggested-visit-moves)
  appears on the thread for you to approve or dismiss. The owner it was
  prepared for also gets the [email to review it](/docs/inbox-approval-emails).
  Approving it moves the visit once.

This needs an owner who has accepted the AI notice. Transcribing a voicemail
uses one AI credit, and the sorting, the reply and the suggested move use
credits the same way they do for a text. See [AI assists](/docs/ai-assists).

## If something did not work

- **Retry recording** appears if the recording could not be saved yet. It
  appears for a recorded answered call too, not only a voicemail. Retrying an
  answered call's recording does not ask you to accept the AI notice.
- If the phone provider could not record a voicemail at all, the thread says
  the recording could not be saved and offers **Retry recording**. You are
  still alerted, so you know the client tried to leave a message.
- **Retry transcript** appears if the transcript failed, or if it was not made
  (for example, before anyone accepted the AI notice, or while transcripts were
  off). The recording can be played either way.
- A voicemail shorter than two seconds is kept as a call, but it is not
  transcribed and nobody is alerted. It is usually a hang-up.
- A voicemail with no speech in it says so.

## Who hears about a voicemail

The owners and managers of that client's location get an email, "New voicemail
from" and the caller, with the transcript when it is ready and a link to the
thread. The email only quotes the transcript while your plan includes calls.
Everyone who looks after customers sees it in the
[notifications bell](/docs/notifications). The bell names the caller but does
not show what they said: open the conversation to listen and read it.

## Recording and consent

- **Voicemail** is the caller choosing to leave a message after your greeting
  and the beep.
- **Answered calls** are not recorded unless you turn on **Record answered
  calls**. When it is on, every caller first hears "This call may be recorded."
  Some states require everyone on a call to agree to it being recorded. Check
  the rules where you and your clients are before you turn it on. Recorded
  answered calls can be played from the thread; they are not transcribed.
- A call never gives you permission to text that number. Texting still follows
  [the consent rules](/docs/text-messages-and-consent).

## On the native app

Native versions with calls support can play recordings, show or hide transcripts
and retry failed recordings or transcripts in Messages and customer history.
The same plan and permission checks apply. Unknown callers still need to be
matched to a customer before a reply is offered.

Owners can open **Settings → Calls and voicemail**, where the deployment offers
calls, to change forwarding, ring time, a typed greeting, transcription and
answered-call recording. Upload or remove a recorded greeting on the web.
This is not evidence that an installed build has these controls; see
[Native version availability](/docs/the-mobile-app).

## Plans

Calls are on **Pro and Business**. On Starter and Free, the card in Settings
shows what upgrading adds, and a caller hears a short message that your company
cannot take calls at that number right now. Nothing is recorded.

If your plan changes after a voicemail was left, the voicemail is kept, but
playing it and reading its transcript need Pro again.

## Your recordings and your data

Recordings are stored with your BlastoClean account and deleted from the phone
provider once they are saved. [Your export](/docs/exporting-your-data) includes
your calls and voicemail transcripts. Deleting your account deletes your
recordings and your greeting, and the call recordings Twilio still holds.

---

---
title: "The customer inbox · BlastoClean docs"
description: "Every email with a customer, and on Pro and Business every text, in one shared thread: where replies land, how to answer by email, text or internal note, and what the office can see."
url: "https://www.blastoclean.com/docs/customer-conversations"
---

# The customer inbox

Running the company · Web and mobile · 6 min read · Updated October 19, 2026

**Customer emails arrive in one shared inbox, joined by texts on Pro and Business. A reply to anything BlastoClean sent comes back into the same thread instead of one person’s mailbox, and you answer by email or with an internal note from the same box, or by text on Pro and Business.**

BlastoClean has always sent the messages it writes itself: quotes, reminders,
receipts, portal links. The messages your company actually needs to send went
out of somebody's own phone and their own Gmail: "we're running an hour late",
"the side gate was locked", "thank you, see you next month". The office never
saw them, and the customer's history in BlastoClean had holes in it exactly
where the conversation was.

The inbox closes that. It is part of the **Starter, Pro and Business plans**.
On Starter it holds email; texts join it on **Pro and Business**, the plans
that text.

## Where it is

**Messages** in the web app, and **Messages** in the mobile app. Conversations
are listed newest first, with three filters:

- **All**: every conversation.
- **Unread**: what nobody has opened yet.
- **Unknown senders**: threads not attached to a customer, which in practice
  means a text from a number nobody recognizes (Pro and Business).

On the web, choosing a conversation records it in the page address. A selected
thread must be available in the loaded list; a link is not a guarantee that any
older conversation is fetched directly. Native opens a known customer’s thread
from their record and uses a reply sheet for unknown senders; it does not
restore conversation selection from a web inbox link.

## What a conversation holds

One thread per customer, holding both directions and, on Pro and Business,
both channels: what
BlastoClean sent automatically, what your team typed, and what the customer
replied: newest at the top, so what was said last is the first thing you
read. The same thread appears on the customer's own page, so you can answer
from wherever you were already looking, and the box to write in sits above the
history rather than below it.

## Answering

The composer offers three destinations, and the difference between them is a
question about who reads it:

- **Email**: the default, because it costs nothing and needs only an address.
- **Text**, on the **Pro and Business plans**. Every reason a text might be
  refused (no consent on that number, quiet hours, a landline) is shown before
  you send rather than after. See
  [Text messages and consent](/docs/text-messages-and-consent).
- **Internal note**: kept on the thread, never sent to anybody outside your
  company.

Open a thread and the box is already set the way the conversation was going:
the channel the customer last used, and their subject line carried over so an
emailed answer files under the message it answers.

## Where replies come back to

Every customer-facing email BlastoClean sends for you now carries a reply
address that belongs to the conversation rather than to whoever pressed send.
When your customer answers a quote, a reminder or a receipt, the answer lands
in the thread where the rest of the office can see it, including when they
answer from a different address than the one you wrote to.

The colleague who wrote last is still emailed the reply as well, so nothing
that used to reach a person's own mailbox stops reaching it. If your company
sends through its own mailbox, see
[Your own mailbox and calendar](/docs/your-own-mailbox-and-calendar).

## Threads that are not a customer yet

A text from an unknown number is a real person waiting on a real answer, and it
has no customer record to hang off. Those threads sit in the inbox like any
other, can be answered there, and are attached to a customer once you work out
who wrote.

If you can edit customers, the **Texts from numbers we do not recognize** card
on the Customers page lists them. Each row has **Attach**, to put the thread on
a customer you pick, and **Dismiss**, for a thread that belongs to nobody, such
as a wrong number. Dismiss asks first, with **Dismiss this conversation?** and
“It will leave this list and not be attached to any customer. If that number
texts or calls again, it comes back here.” The mobile app also asks before it
dismisses.

A dismissed thread leaves Messages, the counts and the unread badge. It can no
longer be answered or attached. A new text, call or voicemail from that number
brings it back. If a newer message arrived after you opened the list, or
someone else already handled the thread, the dismissal is refused with **That
could not be dismissed. It may have been handled, or a new message may have
arrived.** and the list reloads so you can look again.

## Claiming a thread

Assign a conversation to yourself or to a colleague so two people do not each
answer half of it. Assignment is a claim, not a restriction: anyone whose role
and locations cover the customer can still read and reply.

## Attachments

A customer can reply with photographs: the leak under the sink, the gate that
was padlocked. Up to **ten files of up to 8 MB each** arrive in the thread with
their message and download from the same page.

## A suggested reply

Ask for a draft and one is written from the thread and from that customer's
actual upcoming visits, so it can give the real date rather than a vague
promise. It lands in the box for you to edit or delete; nothing is sent, and
every consent and quiet-hours rule still applies to the send you make
afterwards. A draft spends an AI credit. Review and edit the suggestion, then
press Send yourself. If you start typing, change channel or close the box while
a draft is loading, the draft never replaces your work or sends anything. See
[AI assists](/docs/ai-assists).

Before your first draft, you are asked to accept the AI notice. The request
includes your company name, a few recent messages and a short summary of
upcoming visits, and messages can contain personal details. If you would rather
not, decline and write your reply yourself. Each person accepts the notice for
themselves.

## Suggested actions

In the web app on Pro and Business, the inbox can also turn a customer's message into a ready
change for you to approve. Nothing happens until a person approves it, and
nothing is sent to the customer:

- [Suggested visit moves](/docs/suggested-visit-moves): "Can you come Thursday
  instead?" becomes a proposed new time for one visit.
- [Suggested instructions for today](/docs/suggested-visit-instructions): "Please
  skip the guest room" becomes a short note for today's crew.
- [Suggested quote drafts](/docs/suggested-quote-drafts): a quote request becomes
  an empty quote draft with notes on what the customer asked for.

When a suggestion is ready, the person who asked for it gets an email with a
link to review it. See [Emails to review inbox suggestions](/docs/inbox-approval-emails).

## Calls and voicemail in the inbox

On Pro and Business, calls to your business number appear in the customer's
thread, with the call status, the caller's number and how long it lasted. A
missed call can leave a voicemail: it arrives unread with a player, a transcript
and a suggested reply you can text back. Native versions with calls support
can play recordings and read transcripts too. Calls from unknown numbers
wait with the other unknown senders until your office matches them to a
customer. See [Calls and voicemail](/docs/calls-and-voicemail) to set it up.

A call does not give permission to text that number.

## It is filed like everything else

A message somebody types is an ordinary record in the same place as every
reminder and receipt. It shows on the customer's timeline, in the email and
text delivery log, and in [your export](/docs/exporting-your-data). There is no
second place anybody has to remember to look.

Conversations are not part of the global
[search](/docs/search) yet. Global search covers customers, properties, quotes
and visits. Reach a thread from the inbox or from the customer.

New replies also raise a [notification](/docs/notifications) for the people
whose role covers the customer.

## Read older conversations

Use the page controls in Messages to reach older conversations on web or mobile.
Changing All, Unread or Unknown senders starts at the first page. On the web,
paging keeps an unsent reply draft; choosing another account or location changes
the access context. Browser Back exits Messages rather than stepping through
every inbox page. If the list fails to load, use Retry rather than treating it
as an empty inbox.

---

---
title: "Notifications and the bell · BlastoClean docs"
description: "The in-app feed of things that need a person: what raises one, who receives it, how it is scoped to a branch, and what happens to old ones."
url: "https://www.blastoclean.com/docs/notifications"
---

# Notifications and the bell

Running the company · Web and mobile · 6 min read · Updated October 19, 2026

**The bell in the header carries a personal feed of the things that need somebody (a declined card, a reply, a new lead, an accepted quote, an open visit) with an unread count, and who receives each one follows the roles and locations you already set.**

Everything the bell announces already happened somewhere nobody was watching:
a card declined overnight, a customer texted at 7am, a lead landed from the
website form, a quote was accepted from a phone in a car park. Each of those
also sends an email, and email is where news goes to be buried.

The bell is the in-app half of that: a feed of the things that need a person,
with a count of what you have not read. It is in the header of the web app and
on the app bar of the mobile app, and it needs no setting up.

## What raises one

| Notification         | Raised when                                                   |
| -------------------- | ------------------------------------------------------------- |
| Payment failed       | A customer's card payment does not go through                  |
| Subscription problem | The card on your own BlastoClean subscription is declined      |
| New text or email    | A customer writes to you                                       |
| New voicemail        | A caller leaves a voicemail on your number (Pro and Business). Owners and managers also get an email |
| New quote request    | Somebody asks for a quote through your intake form or widget   |
| Quote accepted       | A customer accepts a quote                                     |
| Quote declined       | A customer declines a quote                                    |
| Extra work approved or declined | A customer answers the approval link for [extra work](/docs/change-orders). It also says when approved work could not be added to its visit |
| Visit still open     | A visit has ended but is not marked completed                  |
| Visit canceled       | A visit is canceled. Owners and managers hear by email and in the bell, and that alert starts on. |
| Slot still open      | An offered time was not taken                                  |
| Visit moved earlier  | A customer took an open time                                   |
| Approve an earlier visit | A customer asked, and you approve the move before it happens |
| Reschedule requested | A customer asks to move a visit                                |
| Visit confirmed      | A customer confirms a visit from their confirmation page       |
| New service request  | A client raises a request or an issue in their portal          |
| Document expiring    | A compliance document is close to its renewal date             |
| New staff announcement | An owner or manager posts a staff announcement (Pro and Business) |
| Time-off request needs review | A team member asks for time off (Pro and Business) |
| Your time-off request has a decision | A manager approves or declines your time-off request |
| Visit offer available | A teammate offers a visit they are assigned to (Pro and Business) |
| Visit offer needs manager review | An offered visit starts within 24 hours |
| Visit offer awaiting approval | A teammate claims an offered visit |
| Visit replacement approved, or Visit offer declined | A manager decides on a claimed visit |
| A coworker asked you to take a visit | A teammate asks you, or anyone available, to take a visit (Pro and Business) |
| Shift swap waiting on approval | A coworker accepts a [shift swap](/docs/staff-shift-swaps) that needs approval from an owner or manager |
| Shift swap approved, not approved, canceled or expired | A swap is decided, withdrawn, overtaken by a schedule change or runs past its cutoff |

## Who receives each one

Who ought to hear about something is decided when it happens, from the roles
and permissions you have already set, so what you see is only ever your own.
Seeing a payment fail is not the same as being able to do anything about it:

- A **failed payment** goes to the people who can take payments.
- A **new lead** goes to the people who write quotes.
- A **customer's reply** goes to the people who look after customers.
- An **accepted or declined quote** goes to owners, managers and whoever wrote
  the quote.
- **Extra work approved or declined** goes to whoever added it and the people
  who write quotes at that location, in the bell. Clicking one about work on a
  visit opens that visit.
- An **open visit** goes to owners, managers and the crew assigned to it.
- A **canceled visit** goes to owners and managers. The assigned cleaner is not on that list, and the customer is not told again from it.
- A **slot still open** goes to owners and managers, by the bell and by email.
- A **visit moved earlier**, and a request to **approve an earlier visit**, go to owners, managers and the crew on that visit.
- A **confirmed visit** goes to owners, managers and the crew assigned to it.
- An **expiring document** goes to owners and managers.
- A **new staff announcement** goes to the people it is for.
- A **time-off request** goes to owners and managers of that location. The
  **decision** goes to the person who asked.
- A **visit offer** goes to owners, managers and the teammates who can take it.
  An offer for a visit starting within 24 hours goes to owners and managers
  only. A claim, approval or decline goes to owners, managers and the people
  involved.
- A **shift swap** request goes to the coworker asked or, for **Anyone available**, to every Crew member and Estimator at that location who is free then and has no approved time off. Once a coworker accepts, it goes to owners and managers of that
  location when the swap needs their approval. Under **Automatic between
  people on the same team**, a swap between members of one saved team is
  approved on accept, so owners and managers are not asked. Its outcome goes
  to the people on the swap. When one owner or manager approves or declines,
  the other owners and managers who were asked get the approved or not
  approved notice too.

See [Team roles and permissions](/docs/team-roles-and-permissions) for what each
role can do.

A confirmed visit shows in the bell only, with no email, and only when the
customer says yes on their own confirmation page. Confirming a visit yourself
from the app raises nothing. Staff time-off and visit offer notices also show in
the bell only. Shift swap notices do too, except that owners and managers also
get an email with a single-use approve link when a swap needs them, never for a swap they are part of. Announcement emails go only to people who turn them on in
[Staff notification preferences](/docs/staff-notifications).

If your company runs more than one location, a notification about one branch's
work only reaches people working in that branch. Company-wide news, billing and
compliance, reaches everybody entitled to it.

## Reading, and marking read

Opening the panel does not clear it. A notice is marked read when you click it,
which also takes you to the exact thing it is about: the failed payment, the
quote, the conversation. **Mark all as read** is there when you want the broom.

The count keeps itself current while you have the app open. The bell and email
notices are separate from phone push notifications.

In native builds configured for push, **Settings → Notification settings**
shows this phone's permission, the notification categories available to your
role and quiet hours. Phone permission and server configuration are both
required. A preview or a source change does not prove push delivery on a device;
see [Native version availability](/docs/the-mobile-app).

## The same event never says itself twice

You will not get the same notice twice, even if a payment comes through more
than once or the check runs again.

## Closing out a visit

A visit that ended hours ago and still says scheduled is unfinished paperwork:
completing it is what asks for the review (its invoice already exists
by then), and a calendar full of stale open visits quietly makes the reports
wrong. The person it was assigned to and the office are nudged once per
visit, not once every quarter of an hour. See
[Work orders and visit photos](/docs/work-orders-and-visit-photos) for closing
one out.

## Old notifications

The feed is a to-do surface, not an archive. Notices older than **60 days** are
removed. Nothing is lost by that: the record they point at (the payment, the
quote, the message) stays where it is, and
[the activity trail](/docs/team-roles-and-permissions) is the archive.

Customer replies also live in [the customer inbox](/docs/customer-conversations),
which is where you answer them.

---

---
title: "Suggested visit moves · BlastoClean docs"
description: "When a customer asks to move a visit, let BlastoClean suggest the new time, then approve it in one step."
url: "https://www.blastoclean.com/docs/suggested-visit-moves"
---

# Suggested visit moves

Running the company · Web and mobile · 2 min read · Updated October 17, 2026

**On Pro and Business, BlastoClean reads a customer message like "Can we do Thursday instead?" and proposes the move for one visit. Nothing changes until you approve it.**

Customers ask to move cleanings all the time: "Can you come Thursday morning
instead of Wednesday?" A suggested move turns that message into a ready-to-approve
change, so you do not have to retype the date and time.

Suggested visit moves are part of the [customer inbox](/docs/customer-conversations)
on **Pro and Business**. Office team members who can edit customers and the
schedule can use them. Crew members do not see them.

## Before you start

- AI assists must be on for your company. See [AI assists](/docs/ai-assists).
- The first time, you are asked to read and accept the AI notice. The
  suggestion reads the customer's recent message, which can include personal
  details. If you would rather not, decline and move the visit by hand.
- Each suggestion uses AI credits.

## Suggest and approve a move

1. Open **Messages** and select the customer's conversation.
2. In the **Suggested visit moves** box, choose the **Visit** the customer is
   asking about.
3. Select **Suggest a move**.
4. Check the original visit and the **Proposed move**, including the date, time
   and time zone.
5. Select **Approve move** to move that one visit, or **Dismiss** to leave it
   as it is.

If the message does not mention a clear new date and time, BlastoClean says so
and changes nothing.

## Days and times BlastoClean understands

Customers rarely write an exact date. BlastoClean understands:

- Day names, such as "Friday". "Move Thursday's clean to Friday" means the
  Friday right after that visit, and "move Friday's clean to Thursday" means the
  day before it.
- "Tomorrow".
- Parts of the day: morning (8 AM to 12 PM), afternoon (12 PM to 5 PM) and
  evening (5 PM to 8 PM). BlastoClean keeps the visit's current start time if it
  fits. If not, it suggests 9 AM in the morning, 1 PM in the afternoon or 5 PM in
  the evening, or else the first half hour that doesn't overlap the crew's other
  visits that day.

Spanish messages work the same way. Always check the proposed date and time
before you approve.

## What approval does

Approval moves only that visit. The crew stays the same and the rest of a
recurring schedule is unchanged. No message goes to the customer, so reply in
the conversation to confirm the new time.

Before it moves anything, BlastoClean checks again that the time is still free
and that nothing has changed. If the customer sent a newer message, the visit
changed or the time was taken, you are asked to refresh and review a fresh
suggestion. Approving twice never moves the visit twice.

## Related

- [Suggested instructions for today](/docs/suggested-visit-instructions)
- [Suggested quote drafts](/docs/suggested-quote-drafts)
- [Emails to review inbox suggestions](/docs/inbox-approval-emails)

## On the native app

In versions with these controls, open the customer's conversation from their
customer page. The suggestion card uses the same review and approval steps,
permissions and Pro/Business requirement as the web. A suggestion is a draft;
review it before approval. If access or the conversation changes, reopen and
review the current record instead of approving an old draft.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "Suggested instructions for today · BlastoClean docs"
description: "Turn a customer message into clear instructions for today’s visit, edit them, and share them with the crew."
url: "https://www.blastoclean.com/docs/suggested-visit-instructions"
---

# Suggested instructions for today

Running the company · Web and mobile · 2 min read · Updated October 11, 2026

**On Pro and Business, BlastoClean turns a customer message such as "Please skip the guest room today" into a short instruction for today’s visit. You edit and approve it, and the crew sees only the approved text.**

A customer writes in the morning: "Please skip the guest room today and use the
side gate." A suggested instruction turns that message into a short, clear note
for the crew on today's visit, without forwarding the customer's whole message.

Suggested instructions are part of the [customer inbox](/docs/customer-conversations)
on **Pro and Business**. Office team members who can edit customers and the
schedule can use them.

## Before you start

- AI assists must be on for your company, and you accept the AI notice the first
  time. See [AI assists](/docs/ai-assists).
- Each suggestion uses AI credits.
- It works for a visit that is scheduled for today.

## Suggest and approve an instruction

1. Open **Messages** and select the customer's conversation.
2. In **Suggested instructions for today**, choose **Today's visit**.
3. Select **Suggest an instruction**.
4. Read and edit the text under **Instruction shown to the crew**. Keep only what
   the crew needs.
5. Select **Approve instruction**, or **Dismiss** to leave the visit as it is.

## What the crew sees

The crew assigned to that visit sees only the approved text, on the visit's
instructions. They do not see the customer's original message or your inbox.
Because the instructions changed, each person on the visit reads them and
selects **Got it** before they clock in. Someone who clocked in before you
approved is not stopped, so contact anyone already working at the visit.

Approval adds the instruction to today's visit only. It does not change future
visits in a recurring schedule and it does not send anything to the customer.

If the message, the visit or the crew changed, or the visit is no longer
today, BlastoClean asks you to refresh and review again. Approving twice never
adds the instruction twice.

## Related

- [Suggested visit moves](/docs/suggested-visit-moves)
- [Suggested quote drafts](/docs/suggested-quote-drafts)
- [Work orders and visit photos](/docs/work-orders-and-visit-photos)

## On the native app

In versions with these controls, open the customer's conversation from their
customer page. The suggestion card uses the same review and approval steps,
permissions and Pro/Business requirement as the web. A suggestion is a draft;
review it before approval. If access or the conversation changes, reopen and
review the current record instead of approving an old draft.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "Your own mailbox and calendar · BlastoClean docs"
description: "Connect Gmail, Microsoft 365 or iCloud so customer email leaves from your own address, and connect calendars so what is already in your day blocks bookings."
url: "https://www.blastoclean.com/docs/your-own-mailbox-and-calendar"
---

# Your own mailbox and calendar

Running the company · Web app · 2 min read · Updated October 18, 2026

**Connect Gmail, Microsoft 365 or iCloud Mail and quotes, reminders and invoices leave from your own address, so replies land in the inbox you already watch instead of a mailbox nobody reads.**

## Send as yourself, not as no-reply

Connect Gmail, Microsoft 365 or iCloud Mail and quotes, reminders and invoices
leave from **your own address**. The customer's reply is emailed to the inbox
you already watch, and, on a plan with the inbox, also files into the shared
conversation so the office is not the last to know. See
[The customer inbox](/docs/customer-conversations).

## Signing in, sending and availability are three separate things

This is the detail worth understanding before you connect anything.

- **Signing in** with a Google account asks only to know who you are.
- **Connect Gmail** asks for permission to send email as you, and only then,
  when you switch it on.
- **A connected calendar** is a third thing again.

You are never shown a wall of permissions for a feature you have not asked for,
and nothing forces one account to play all three roles. Sign in with the Google
account work gave you, send from the iCloud address customers have always used,
and take availability from an Outlook calendar.

## Your calendar decides when you are free

Connect Google, Outlook or iCloud, then choose which calendars block bookings.
New calendars start with blocking and display off. The owner must also enable
external-calendar blocking for the company. Once both are on, busy events count
in availability. Adding assigned visits to a calendar is a separate opt-in.

A personal calendar can block bookings **without showing anyone what is on it**.
The office sees "busy 2–3pm" and never the title. That is the default, per
calendar. And you choose which calendar assigned work lands in; move a visit or
hand it to somebody else and the calendars follow, including removing it from
the calendar of whoever is no longer going.

The full picture is in [Calendars and feeds](/docs/calendars-and-feeds) and
[Crews and availability](/docs/crews-and-availability).

## It never blocks the work

Connections fail; work does not stop.

- If a **mailbox** stops answering, the message still goes out from the company
  address. Where the reply comes back to is decided separately from which
  mailbox sent it, so the fallback does not strand a customer's answer.
- If **Google, Outlook, or Apple Calendar** stops answering, the office is warned
  and the day continues.

## One thread per customer

Emails, texts and replies appear as a single conversation on the customer's
page, newest at the top, so nobody sends the same reminder twice because
they were looking at the wrong list.

![Web app: Customer details, with synthetic records.](/images/docs/customer-detail-en-20261019.webp)

A customer's reply to anything sent for you comes back into that thread rather
than into the mailbox of whoever pressed send, and is still emailed on to them
as well, so nothing that used to arrive stops arriving. See
[The customer inbox](/docs/customer-conversations).

---

---
title: "Exporting your data · BlastoClean docs"
description: "A one-click JSON export of your whole company, an import to start a new one from it, and the log of every email and text the system has sent."
url: "https://www.blastoclean.com/docs/exporting-your-data"
---

# Exporting your data

Running the company · Web app · 2 min read · Updated October 17, 2026

**Download a portable JSON export of the whole company (settings, team, customers, properties, templates, saved add-ons, quotes and audit records) and learn the limits of server import and the customer spreadsheet importer.**

It is your business. You can always take it with you.

## The export

One click downloads a portable **JSON export** of your whole company:

- Settings
- Your team
- Customers and properties
- Room and task templates
- Saved add-ons, archived ones included
- Quotes
- Calls and voicemail transcripts (the recordings themselves are not in the file)
- Audit records

Not a screenshot, not a PDF, not a report: the records themselves, in a format
something else can read.

## The import

An export can be imported back: settings, templates, customers and properties
into a new company. That is useful in two situations that come up more often
than you would expect: starting fresh, and spinning up a second brand that
should begin with the library you have already spent a year tuning.

## The message log

![Web app: Activity log, with synthetic records.](/images/docs/logs-en-20261019.webp)

Every email and every text the system sends (confirmations, reminders,
quotes, pay-by-links) is logged with its **outcome**. "Did that actually
send?" has an answer.

Alongside it is the company-wide activity trail: who did what, when, to which
record, pageable and filterable. See
[Team, roles and permissions](/docs/team-roles-and-permissions).

## Reports

Every report your plan includes exports to CSV and Excel, including the Free
payment ledger. On Pro and Business, Zapier, Make, API keys and OAuth apps can
read data from supported published reports within the authorized plan and
location. My week, Job profit, contractor summaries and Profit by place are
not exposed through these integrations. See
[The dashboard and reports](/docs/the-dashboard-and-reports).

## Where to export and import

An owner can open web **Settings → Advanced → Export your data** and download
the company JSON. BlastoClean can import a company, but the current apps have
no screen for it; ask support before planning a company migration.

For a customer spreadsheet, use web **Customers → Import customers**. Upload
a supported spreadsheet/CSV or paste rows, check the sheet and column mapping,
then review valid and invalid rows. Choose how duplicates should be handled
and whether to create a property, use the duplicate check and review its
results, then import. Review the result before repeating an interrupted batch;
some rows may already have been saved. Customer write permission is required.
Customer CSV export and import are separate from the whole-company JSON.
The native app has no customer spreadsheet importer or company export screen.

On Pro and Business, owners can manage API credentials in web Settings and
open the API reference. Credentials and integrations remain limited by the
current role, authorized location and plan.

---

---
title: "Suggested quote drafts · BlastoClean docs"
description: "Start a quote draft from a customer message, with notes on what they asked for."
url: "https://www.blastoclean.com/docs/suggested-quote-drafts"
---

# Suggested quote drafts

Running the company · Web and mobile · 2 min read · Updated October 11, 2026

**On Pro and Business, when a customer asks for a quote by email or text, BlastoClean can write internal notes on what they need and start an empty quote draft for them. You add the rooms, tasks and prices.**

A customer writes: "We are moving out at the end of the month. Can you quote a
deep clean of a three-bedroom house with the oven and fridge?" A suggested quote
draft captures that request as notes on a new quote, so nothing gets lost
between the inbox and the quote editor.

Suggested quote drafts are part of the [customer inbox](/docs/customer-conversations)
on **Pro and Business**. Office team members who can edit customers and quotes
can use them.

## Before you start

- AI assists must be on for your company, and you accept the AI notice the first
  time. See [AI assists](/docs/ai-assists).
- Each suggestion uses AI credits.

## Create a draft from a message

1. Open **Messages** and select the customer's conversation.
2. In **Suggested quote draft**, select **Suggest quote draft notes**.
3. Read and edit the **Internal quote notes**.
4. Select **Create empty draft**, or **Dismiss** to skip it.
5. Select **Open quote draft** to continue in the quote editor.

## What the draft contains

The new quote is for that customer and uses your usual quote settings. It holds
the notes you approved and nothing else: no rooms, tasks or prices are made up.
Add rooms and tasks from your library and check the price before you send it.
The notes stay internal and are never shown to the customer.

Creating the draft does not send a quote, book a visit or take a payment.

If the customer's message changed or the suggestion expired, BlastoClean asks
you to refresh and review again. Approving twice opens the same draft rather
than making a second one.

## Related

- [Building a quote](/docs/building-a-quote)
- [Sending a quote](/docs/sending-a-quote)
- [Suggested visit moves](/docs/suggested-visit-moves)

## On the native app

In versions with these controls, open the customer's conversation from their
customer page. The suggestion card uses the same review and approval steps,
permissions and Pro/Business requirement as the web. A suggestion is a draft;
review it before approval. If access or the conversation changes, reopen and
review the current record instead of approving an old draft.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "Commercial cleaning mode · BlastoClean docs"
description: "Set what work your company does (residential, commercial, or both) and what business quotes unlock: common-job starting points, a frequency on every task, monthly pricing, the agreement, net terms, and GPS proof of service."
url: "https://www.blastoclean.com/docs/commercial-cleaning-mode"
---

# Commercial cleaning mode

Running the company · Web and mobile · 6 min read · Updated October 19, 2026

**Choose residential, commercial, or both in Settings. A business quote can start from a common job, then carry a frequency on every task, a monthly price, and an agreement. Customers can hold net terms, and crews clock in and out with GPS.**

BlastoClean serves residential and commercial cleaning companies, and the
difference between the two is not cosmetic: a janitorial contract has
frequencies, agreement terms and net-terms billing that a weekly house clean
never needs. So the commercial machinery is switched on where it applies rather
than cluttering every quote.

## Choosing what work you do

In **Settings → Company**, set what work your company does: **residential**,
**commercial**, or **both**. Commercial work unlocks everything below on
commercial quotes.

A company that does both chooses per quote. The choice is defaulted from the
property type (an office, a retail space or a medical suite starts as a
commercial quote) and you can override it on any quote. Company setup in
general is covered in
[Setting up your company](/docs/setting-up-your-company).

## Start from a common job

A business quote can start from a common job instead of a blank page. You can
change anything it fills in. The measured bid below is still there when the
building needs one.

In the web app the four are **Office**, **Medical office**, **Shop**, and
**Move-out**. Picking one fills the rooms, the tasks, how often you come, how
many visits a week, whether they pay by the month or by the visit, and the
agreement. If the quote already has rooms, the app asks before it replaces
them. See [Building a quote](/docs/building-a-quote).

On the phone the four are **Office**, **Clinic**, **Store**, and **After a
build or a move**. They show only while the quote has no rooms. Picking one
fills the areas, the tasks, how often, and the agreement. A second tap does not
add the rooms again. See
[Quoting from your phone](/docs/quoting-from-your-phone).

## Bidding by the square foot

A house is estimated room by room, from minutes somebody decided on: the
master bath takes twenty. A commercial building is not, and never has been. It
is **measured**, and priced from **production rates**: the arithmetic the ISSA
cleaning times tables publish, the arithmetic a facilities manager will check
your bid against, and the reason two estimators walking the same building land
within a few dollars of each other.

On a commercial quote, the areas step asks for what an estimator actually
carries back from a walk:

- **Square feet**, on the area itself. Twelve thousand square feet of open
  office is typed once. Every task measured over that floor inherits the
  figure, so correcting a mistyped measurement corrects the whole bid rather
  than eleven task lines one at a time.
- **Floor type**: carpet, resilient, hard, concrete or mixed. It picks the
  starting rates you are offered, it prints on the spec, and it tells the crew
  what to put in the van.

Each task then carries the rate it runs at: vacuuming open carpet at around
3,000 square feet an hour, emptying bins at 12,000. **The minutes are derived,
not typed.** Change the rate and the time follows, which is what stops a bid
disagreeing with itself, and you can still lower a rate where the job deserves
it, because detail vacuuming around furniture is roughly half the speed of an
upright over a cleared floor.

Restrooms are the exception the trade already knows, and the app follows it:
they are priced **per fixture**, not per square foot. A 400 square foot
restroom with twelve fixtures is not the same job as one with three, and no
floor-area rate can tell them apart. Count the toilets, urinals and sinks and
the restroom prices from that instead.

Areas the app cannot measure, anything you have not walked yet, simply price
at nothing until somebody types a real number. That is deliberate: an
unmeasured area is visibly different from an area that takes no time.

You can sketch one area in the browser before you open a quote. The
[free commercial cleaning bid calculator](/free-commercial-cleaning-bid-calculator)
uses one square footage, one speed, and what you pay per hour, and it labels its
starting numbers as examples you should change. The quote in the app is still
the spec sheet: every task has its own rate and its own frequency.

## Frequencies on the scope of work

On a commercial quote, every task line carries a **frequency**: every visit,
weekly, every two weeks, monthly, or quarterly. One contract can therefore say
trash and restrooms every visit, carpets weekly, high dusting monthly and
strip-and-wax quarterly, without splitting into separate quotes.

The quote prices this as a **monthly amount**: choose the visits per week, and
the month is worked out from the same
task times, multipliers and hourly rate as any other quote (see
[Pricing a quote](/docs/pricing-a-quote)). The customer-facing quote presents
the scope as a spec sheet **grouped by frequency**, so what happens every
visit, what happens weekly and what happens quarterly each read as their own
block.

When the quote is booked, each work order lists the every-visit tasks as
tonight's checklist and the periodic tasks (weekly, every two weeks, monthly,
quarterly) tagged with their frequency. These printable scope tags do not
choose a night for the crew. Digital checklists are different: their cadence
rules select due tasks and keep that decision on the visit. See
[Digital checklists](/docs/digital-checklists).

Booking uses the same scheduling as any other quote. A weekly job that comes
more than once a week is one [schedule](/docs/recurring-schedules) with those
days, not a separate schedule for each day. Each visit carries its share of
the month: the monthly total × 12 ÷ 52 ÷ visits per week. The consolidated
invoice then totals the month's actual completed visits, so a month with five
Mondays bills a little more than one with four. Over the year it averages out
to the quoted monthly amount.

## Contract terms

The commercial quote editor has a **contract terms card**: contract length in
months, auto-renewal, an annual price escalation percentage, and a cancellation
notice period. The terms print on the quote the customer accepts and follow the
schedule when the quote is booked.

Two of them keep working after the signature:

- **Renewal.** The dashboard warns you when a contract approaches its renewal
  date, so the conversation happens before the date rather than after it.
- **Escalation.** The annual increase is applied through the same dated
  price-change flow as any other raise: the new amount takes effect from its
  date and earlier visits keep the old price. One difference: for a contract
  escalation the customer is **always** emailed before the change takes effect.
  The choice of whether to notify the customer applies only to price changes
  you schedule by hand.

## Net terms, PO numbers and monthly invoices

On the **customer form**, a customer can carry **payment terms** (Net 30, for
example) and a **PO number**. Invoices for that customer then get due dates,
and the PO number rides along.

A customer can also be switched to **consolidated monthly invoicing**: one
invoice covering the month's completed visits, instead of an invoice per visit.
Other customers are unaffected: residential customers keep per-visit billing.
Invoicing in general is covered in
[Invoices and payments](/docs/invoices-and-payments).

To watch what all of this is doing to your cash, the **Money owed** report in
Reports ages everything owed into 0–7, 8–30, 31–60 and over-60 days: counted
from the invoice's due date when the customer has payment terms, and from
completion otherwise. It sits beside the other reports described in
[The dashboard and reports](/docs/the-dashboard-and-reports).

## Proof of service

Commercial work happens in empty buildings, so the visit record carries its own
evidence. Cleaners **clock in and clock out** of a visit from the mobile app,
with GPS: the office sees arrival and departure times and whether the crew was
on site, as a distance from the property.

If nobody has clocked in by a set number of minutes after a visit's scheduled
start, the owner gets a **missed-clean alert**, so a skipped visit is
found the same evening rather than when the client calls.

Clocking in is never refused for distance. If you also want every assigned
person to have clocked in before a visit closes, turn on **Require assigned
staff to clock in before completing visits**; see
[Scheduling a visit](/docs/scheduling-a-visit). It checks that a clock-in
exists, not where it was made: the distance badge is still how you see who was
on site.

Clocking out fills in the visit's actual minutes, which feed the
estimated-vs-actual report. The visit itself, and the app the crew does this
from, are covered in [The mobile app](/docs/the-mobile-app).

---

---
title: "Emails to review inbox suggestions · BlastoClean docs"
description: "Get an email when your inbox suggestion is ready, then sign in to approve or dismiss it."
url: "https://www.blastoclean.com/docs/inbox-approval-emails"
---

# Emails to review inbox suggestions

Running the company · Web app · 1 min read · Updated October 8, 2026

**On Pro and Business, when you ask for an inbox suggestion, BlastoClean emails you when it is ready to review. Opening the link changes nothing; you approve or dismiss after signing in.**

When you ask for a [suggested visit move](/docs/suggested-visit-moves),
[instruction for today](/docs/suggested-visit-instructions) or
[quote draft](/docs/suggested-quote-drafts), you do not have to wait on the page.
BlastoClean emails you when the suggestion is ready, so you can pick it up from
your phone or another computer. This is included with **Pro and Business**.

## Review from the email

1. Open the email titled **Review your inbox suggestion**.
2. Select the link and sign in with your own BlastoClean account.
3. Check the details. For instructions and quote drafts, you can edit the text
   first.
4. Approve it, for example with **Approve move** or **Create empty draft**,
   or select **Dismiss**.

Opening the link does not approve anything. Approval never sends a message to
the customer.

## Who gets the email

Only the person who asked for the suggestion gets the email. It does not go to
the customer, the crew or anyone else in the office. The link works only for
that person, and only while they still have access to the customer and the
inbox. To approve from the link, they also still need permission to edit the
customer and the visit or quote.

The email does not contain the customer's message, contact details, access
codes or prices. Those stay in the app.

## If something changed

If the customer sent a newer message, the visit changed or the suggestion
expired, BlastoClean asks you to refresh the conversation and review a fresh
suggestion. If an email does not arrive, open the conversation in **Messages**;
the suggestion is waiting there too.

See [The customer inbox](/docs/customer-conversations) and
[AI assists](/docs/ai-assists).

---

---
title: "Quality inspections · BlastoClean docs"
description: "Score a building on a walkthrough, photograph what is wrong, raise corrective actions with an owner and a date, and publish the scorecard to your client."
url: "https://www.blastoclean.com/docs/quality-inspections"
---

# Quality inspections

Running the company · Web app · 4 min read · Updated October 17, 2026

**Inspections are scored walkthroughs of one building on one day: each line carries an area, what was checked, a 1–5 rating, a comment and a photo. A walkthrough can start from a list of checks (the building’s own cleaning checklist, a checklist template or the built-in standard walkthrough) or start blank. Completing an inspection snapshots its score as a percentage and freezes the lines; areas that could not be accessed are excluded rather than scored zero. Bad lines become corrective actions with an owner and a due date, and an inspection you choose to share appears on the client’s portal beside their invoices.**

Commercial contracts are rarely lost over one bad night. They are lost over
**drift**: a facilities manager who has been mildly unhappy for four months,
has mentioned it twice, and renews with somebody else without ever having a
row about it.

The defense is documentation. A supervisor walks the building on a schedule,
scores each area, photographs what is wrong, and the client sees the same
scorecard you do.

## Scheduling a walkthrough

**Inspections → Schedule a walkthrough.** Pick the client and the building, the
date, and, if you already know, the person walking it.

Then choose **What to check**. This is the list the walkthrough is scored
against, and keeping it the same from one walkthrough to the next is what makes
two scores of one building comparable.

| Choice                                 | What it lists                                                                                                                                                                                                                                                         |
| -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **This building's cleaning checklist** | The tasks on the building's [digital checklist](/docs/digital-checklists), grouped by area: the work your crew is paid to do there. Chosen for you when the building has one. Starter and above.                                                                     |
| **Checklist template**                 | Any template from your checklist library. Starter and above.                                                                                                                                                                                                          |
| **Standard walkthrough**               | 25 checks across six areas of a typical commercial building: entrance and lobby, restrooms, break room, offices, hallways and stairs, and the building as a whole. Each is worded as the result you look for, such as "Floors mopped, no odor". Chosen for you when the building has no checklist. |
| **Start blank**                        | No lines. You add them on the walk.                                                                                                                                                                                                                                   |

Open **See all … checks** to read the list before you schedule. The lines arrive
unscored, and the inspection stays **Scheduled** until somebody scores one. You
can still add, rename or remove lines on the walk.

> **Already have an empty walkthrough?** Open it, choose a list under **Nothing
> scored yet**, press **Use this list**, then **Save lines**.

## Scoring it

Each line has four parts:

| Part          | What it is                                                       |
| ------------- | ---------------------------------------------------------------- |
| **Area**      | Where you are: "Third floor", "Loading dock", "Main restrooms"   |
| **Checked**   | What you looked at: "Restrooms", "Carpet edges", "Glass"         |
| **Rating**    | 1–5, the scale every janitorial inspection form already uses      |
| **Photo**     | Optional, and the single most useful thing on the line            |

Areas are free text rather than a list of the rooms on the quote. An
inspection walks the building **as it is today**, and you should not be
blocked from scoring a corridor nobody put on the spec.

> **Take the photo.** Six months from now, in a conversation about whether the
> third floor has "always been like that", the photograph is the entire
> argument. Nothing else in this feature is worth as much.

### An area you could not get into is not a zero

Leave the rating blank. A locked server room, a floor being refitted, a wing
the client had closed: none of those are bad cleaning, and scoring them zero
would punish you for somebody else's door and teach your supervisors to invent
a number rather than leave it blank.

Unscored lines stay on the inspection as evidence that access was refused, and
leave the score entirely.

## The score

Completing the inspection works out the score as a **percentage of what was
achievable**: the total awarded, over five times the number of lines you
actually scored. An inspection of eleven areas and one of forty are therefore
comparable, and the number your client sees is one they recognize.

Three things happen at completion, and they are deliberate:

- The score is **computed from the lines**, never typed.
- The score is **snapshotted**. It does not move afterwards.
- The scored lines **freeze**. A scorecard that no longer follows from its own
  evidence is worse than a low one.

Notes and sharing stay editable, because that is how a completed inspection
gets published, and neither changes the score.

If nothing could be scored, the inspection reports **no score** rather than
0%. Zero would read as the worst clean on record.

## Corrective actions

A bad line is only half the job. **We scored it a 2 and did nothing** is the
pattern clients actually leave over.

Raise a corrective action against the line: what needs doing, who is doing it,
and by when. Actions live past the inspection that raised them (**Inspections
→ Still outstanding** is every outstanding one across every building, oldest due
date first) and closing one asks for a note about what was actually done.

Two people closing the same action from two phones cannot overwrite each
other: the second is told it has already been resolved.

## Showing the client

An inspection is an internal management document until you say otherwise.
Switch **Share with client** on, and it appears on that customer's portal as a
percentage, a date and whatever you wrote in the client-facing note. The
line-by-line detail stays with you.

Sharing needs customer permissions, where scoring only needs schedule ones. A
supervisor scores a building; whether the facilities manager gets to read that
scorecard is the office's call.

## Access and platform

Use the web app, including a phone browser, for inspections and corrective
actions. The native app has no inspection screens in the audited version.
Scoring needs scheduling permission; sharing with a client needs customer
write permission. Crew members cannot open this management area. A native
visit checklist or photo is not an inspection scorecard.

While offline, the web editor can keep a draft of inspection lines, ratings
and notes. Reconnect to upload photos, complete the inspection or share it.
Review a newer server version before replacing it with an older draft.

---

---
title: "Staff communication · BlastoClean docs"
description: "Post announcements to your team, see who read them, and share quick updates and photos in a team feed."
url: "https://www.blastoclean.com/docs/staff-updates"
---

# Staff communication

Running the company · Web and mobile · 4 min read · Updated October 19, 2026

**On Pro and Business, Staff gives your team one place for announcements, a team feed and photo posts, with a report of who read and acknowledged each announcement.**

**Staff** is your team's own space in BlastoClean. Owners and managers post
announcements, and team members who can post share quick updates in the team
feed. It works
for a two-person home cleaning team and for a commercial crew spread across
several buildings.

Staff is included with **Pro and Business**. Everyone on your team with access
to a location sees that location's Staff page. Crew members only see Staff
content. They do not see customer messages, invoices, prices or visits they are not assigned to, except the few details a [shift swap](/docs/staff-shift-swaps) request shows them: a visit's date and time, the client's name and city, who is asking and their note.

## One Staff hub

Open **Staff** from the menu. **Updates** appear first, with no open draft in
front of them. **Request time off** is beside **New message**, with **Shift
swaps** next to it on the website, where [shift swaps](/docs/staff-shift-swaps)
are asked, answered and approved. The website also works in your phone's
browser. Documents and **Notification settings** are
secondary links in Staff.

Owners and managers can also use **People and teams** to open Settings. The
existing member, administrator and saved-team settings remain accessible on
the plans and roles that already include them.

## Send a message to everyone, a team or a person

1. Open **Staff**, then select **New message**. Owners and managers use this
   composer to send an announcement.
2. Enter a **Title** and a **Message**.
3. Choose **Send to**: **Everyone at this location**, **Person** or **Team**.
   **Team** uses saved teams and is offered to people who can view the schedule.
   Select at least one person or team when using those choices.
4. Open **More options** to **Pin announcement** or **Require acknowledgement**
   if each person must confirm they read it.
5. Select **Send**.

Everyone means the current location. Owners and managers at that location can
also see messages sent to a team or a person. These messages are not confidential
private chats.

The people who receive an announcement are set when you publish it. Adding
someone to a team later does not add them to an earlier announcement.

## Read and acknowledge

Open **Staff** to see **Announcements** for your current location. Select
**Mark as read** when you have read one. If it asks for acknowledgement, select
**Acknowledge** as well. Opening the page does not mark anything for you.

Owners and managers can open the **Read and acknowledgement report** on an
announcement to see who has read it and who has acknowledged it.

## The team feed

The **Team feed** on the Staff page is for everyday updates: "Front door code
changed at the Main Street office" or "Great job on the move-out today." Select
**Share an update**, type a
**Message** and select **Send**. Team members who can post can also start this
draft with **New message**. These updates go to **Everyone at this location**.
People can **Like** and **Comment** on posts.

Owners and managers can **Remove** a post; the team then sees that a manager
removed it. In **New message**, open **Posting access** to select
**Pause posting** for a person and **Allow posting** to turn it back on. A
person whose posting is paused can still read updates available to them. Read-only team
members can read the feed but cannot post.

## Photo posts

On the web **Team feed**, select **Add a photo update**. If you have typed an
update draft, the web app asks you to discard it before starting a separate
photo update. Cancel to keep your draft. On mobile, open an update draft and
select **Add a photo update**; returning from the photo screen keeps your draft.
Photo actions are unavailable while a send is busy or waiting for a retry.
Owners and managers can also select **Share a photo update with everyone at this
location** in **New message**. On web, this action also asks you to discard any
message draft before continuing. Cancel to keep its title, message and selected
recipients. Use it for pictures such as a finished job or a supply closet that
needs restocking. Add a **Message**, select
**Choose photos** (up to 4 JPEG or PNG photos, 5 MB each), then select
**Publish photo post**. Photos are visible to active staff at that location.
Removing a post also hides its photos. Photo updates always go to everyone at
that location, even if your separate announcement draft selects a team or person.
The photo draft does not carry that audience over.

Keep W-9s, IDs and certifications in **My documents** (or **Staff documents** for
managers, who can file them for any team member). Each private document is
visible only to the person it is about and the location's owners and managers.
They are separate from shared photo updates.
Ordinary file attachments to messages are not supported.

## Good to know

- Staff needs an internet connection. If a post or announcement cannot be
  confirmed, the app keeps your draft and offers to retry the same one.
- Nothing on the Staff page is sent to your customers.
- People can get an email notice when a new announcement is posted. See
  [Staff notification preferences](/docs/staff-notifications).
- Related: [Staff time-off requests](/docs/staff-time-off),
  [Shift swaps](/docs/staff-shift-swaps),
  [Offer an assigned visit](/docs/staff-visit-offers) and
  [Private staff documents](/docs/staff-private-documents).

Questions? Email hello@blastoclean.com.

## Refreshing and recovering photo posts

In **Staff photos**, use **Refresh** for new posts and **Load more** for older
ones. If a publish response cannot be confirmed, choose **Retry the same
post**. Photos and the draft remain available while that page stays open;
this is not the restart-safe offline visit-photo queue. Keep the page open
until the publish result is clear.

**Unused uploads** lists uploaded files that were not attached to a published
post. Use **Discard unused upload** to remove one you no longer need. These
shared photo posts are separate from visit evidence and private staff documents.

---

---
title: "Supplies, keys and compliance · BlastoClean docs"
description: "Par levels and restock requests for each building, an encrypted vault for alarm codes and keys with an audit trail on every read, and expiry reminders for your COI and W-9."
url: "https://www.blastoclean.com/docs/site-operations"
---

# Supplies, keys and compliance

Running the company · Mobile app · 1 min read · Updated October 17, 2026

**In native versions that include the commercial site card, eligible office roles can read recorded access instructions and supply levels on a visit, reveal an access code with permission, and flag a shortage. Site setup, restock management and compliance-document management do not yet have a product interface.**

For a commercial company, a visit with a linked property can show **Getting
in** and **Supplies** in the native app. The card reads records already set up
for that site. These instructions describe the audited native source; check
[version availability](/docs/the-mobile-app) for the installed release.

## Supplies and consumables

Open the commercial visit and find **Supplies**. Recorded items show their
par level. An owner, manager or estimator with scheduling write permission
can select **Running low** to request restocking. No quantity is required.
A successful request is marked on that card. Read-only users can read the
list; Crew cannot use this site card.

There is currently no site supply editor or **Supplies → Restocks** queue in
the web or native app. The server supports restock records and delivery
pricing, but this is not a set of actions the office can complete from the
current screens. Do not treat flagging a shortage as ordering, delivering or
billing it.

## Keys, codes and access

On the same visit, **Getting in** shows recorded labels and instructions.
If a record has a secret, an owner, manager or estimator with customer write
permission can select **Show code**. The reveal is logged before the secret
is returned. A failed reveal does not mean the code is blank. Read-only users
can read instructions but cannot reveal the secret; Crew has no access to
these site records.

The server stores secrets encrypted and supports rotation and retirement.
The current apps do not offer an editor for creating, rotating or retiring
these records. Ordinary property access notes are a separate feature.

## Compliance documents

The server supports company, customer and site compliance records with expiry
reminders. Neither app currently has a compliance-management screen for
uploading, renewing or reviewing them. This guide does not describe that as
available navigation.

For the separate, implemented staff upload flow, see
[Private staff documents](/docs/staff-private-documents). Those documents are
not a company or site compliance register.

---

---
title: "Extra work: adding it to a visit or a monthly invoice · BlastoClean docs"
description: "Add extra work a customer asked for to one of their visits, or to a commercial client’s monthly invoice. Record that they already agreed, or send them a one-page approval link with no login."
url: "https://www.blastoclean.com/docs/change-orders"
---

# Extra work: adding it to a visit or a monthly invoice

Running the company · Web and mobile · 5 min read · Updated October 17, 2026

**Extra work is one job at one price that a customer asked for beyond the usual: the fridge on Tuesday, the move-out clean, the carpet nobody planned for. Add it to one of their visits and it joins that visit’s price, its invoice and the crew’s checklist, for any customer and any kind of company. If the customer already said yes, record that and it goes on right away. Otherwise send them a one-page approval link and it goes on when they approve. Commercial clients on consolidated billing can also have extra work that is not on a visit, which goes on their monthly invoice. You can add extra work on the web and in the mobile app.**

Extra work is where cleaning money leaks. Not because it is not done. The crew
does it, usually the same day somebody asks. It leaks because nobody bills for
it. It gets agreed at the door or in a corridor, remembered by one person, and
absorbed.

Extra work is the smallest record that fixes that: one job, at one price, with
the customer's agreement attached to it. Until October 2026 this screen was
called **Change orders**. Extra work is on Starter and above, like invoices.

## What extra work is, and is not

It is a single piece of work beyond the usual. The inside of the fridge on the
next clean. The oven, just this once. The suite that has to be cleaned after a
tenant moves out. The strip and wax somebody wants over a weekend.

It is deliberately not a recurring thing. Work that happens every visit is not
extra work. It belongs on the schedule, the checklist and the quote.

It also only adds. Money going back the other way is a credit or a discount,
which has its own rules.

## Two places it can go

**On a visit.** This is the usual case, and it works for every company and
every customer. The extra work becomes one more line on that visit's price,
shows on the visit's invoice by name, and puts a task on the crew's checklist
for that visit. It is billed however the visit is billed: on its own invoice,
or on the monthly invoice for a customer on consolidated billing.

**Not on a visit.** For a commercial client on consolidated billing, extra work
can also go straight onto their monthly invoice without a visit, for example a
day porter for an event. This option only shows when your company does
commercial work, with service mode **commercial** or **both** in
[Commercial cleaning mode](/docs/commercial-cleaning-mode), and only works for
a client on monthly billing. To use it, start from the **Extra work** page and,
under **Which visit?**, choose **Not on a visit: bill on the monthly invoice**.
If you pick a client billed per visit, BlastoClean offers a **Switch to monthly
billing** button.

## Adding extra work

There are three ways in, and they all open the same form:

- **On the visit.** Open the visit from the schedule and select **Add extra
  work** on its **Extra work** card. In the mobile app, the same card is on the
  visit screen.
- **From the customer.** On a customer's page, next to each upcoming visit,
  select **Add extra work**.
- **From the Extra work page.** In the main navigation, select **Extra work**,
  then **Add extra work**. Choose the customer, then the visit under **Which
  visit?**. The next visit that can take extra work is already picked. For a
  commercial client on monthly billing, the last choice in that list is **Not
  on a visit: bill on the monthly invoice**.

Then fill in:

- **What the work is.** A name the customer will recognize on an invoice. On a
  visit, if you keep [saved add-ons](/docs/visit-add-ons) such as "Inside
  fridge", tap one to fill in the name and price, and its checklist task comes
  with it.
- **The price**, as one figure. On a visit this is the final price, tax
  included, like every price line on a visit. Not on a visit, it is before tax:
  the monthly invoice taxes it the same way it taxes the visits.
- **The service date**, for work that is not on a visit: when it is expected to
  happen.
- **Detail for the customer**, if it helps.

## The customer's approval is optional

Choose one:

- **The customer already agreed. Add it now.** For when they asked you for it on
  the phone, by text or at the door. It goes onto the visit's price and the
  crew's checklist right away. You can note who agreed. This choice changes a
  visit's price, so only people who can take payments see it.
- **Ask the customer to approve it.** BlastoClean emails them a link to a single
  page: what the work is, which visit, what it costs, and two buttons. No
  account, no password and no PDF to sign. It works on a phone. When they
  approve, the work goes onto the visit and you get a notification. The link is
  shown to you once, so you can copy it and send it yourself instead.

For work that is not on a visit, both choices end on the monthly invoice: it
goes on the client's next one once it is approved, by you or by them.

If the crew has already started the visit's checklist, approved work still goes
onto the visit's price but not onto the checklist. The extra work, and the
notification when a customer approves, say so: tell the crew yourself.

If you sent it and the customer then says yes on the phone, select **Customer
agreed** on it. That approves it without waiting for the link, and adds it to
the visit, or, for work not on a visit, to the client's next monthly invoice.

When a customer approves, their name and the moment they did it are recorded.
They can also decline, with a reason.

If the work is off after you sent it, select **Withdraw** on it. The link stops
working, so the customer can no longer approve it.

## Visits that cannot take extra work

A visit that is already paid or invoiced, closed, has no price yet, or gets its
price from a range or an approved quote cannot take extra work. The visit list
shows these with the reason, and you cannot pick them.

If a visit stops being able to take the work before the customer answers, their
approval still counts. The extra work shows **Approved, but it could not be
added to the visit**, you get a notification, and **Try adding it again** puts
it on once the visit is sorted out. For a client on monthly billing, it goes on
their monthly invoice instead.

## The list

The **Extra work** page shows all of it, newest first, with a filter by status:

| Status | What it means |
| --- | --- |
| Draft | Saved, not sent, not seen by anybody |
| Waiting on the client | Sent; the approval link is live |
| Approved | The customer said yes, or you recorded that they did |
| Declined | They said no, usually with a reason |
| Withdrawn | You pulled it before it was decided |

Each one also shows its visit, and whether it is on the visit and its
checklist. Each gets its own number, such as `CO-2026-000001`, separate from
your quote numbers.

A visit's own **Extra work** card shows just the extra work for that visit.

---

---
title: "Staff time-off requests · BlastoClean docs"
description: "Ask for time off, see which visits it affects, and approve or decline it as a manager."
url: "https://www.blastoclean.com/docs/staff-time-off"
---

# Staff time-off requests

Running the company · Web and mobile · 2 min read · Updated October 14, 2026

**On Pro and Business, team members request time off in the app. Managers see which visits are affected before they approve, and approved time off shows up when you schedule.**

Time-off requests keep vacations, appointments and sick days in one place, so
nobody has to remember a hallway conversation. Time off is included with
**Pro and Business**.

## Request time off

1. Open **Staff**, then select **Request time off**.
2. Under **Request time off**, choose the **Start date** and **End date**.
3. Leave **All day** on for full days. Turn it off to pick a **Start time**
   and **End time**.
4. Add a **Reason (optional)** if you like. Only you and your location's
   managers can see it.
5. Select **Submit request**.

Your request shows as **Pending** until a manager decides. Dates and times use
your location's time zone, and the end date is included for all-day requests.
If another request overlaps the same days, the screen tells you. Requests that
start within 24 hours are labeled **Starts within 24 hours** so managers notice
them.

To withdraw, select **Cancel request** on your own request.

## Approve or decline as a manager

Owners and managers see every request for their current location.

1. Select **Review affected visits** to see how many visits at this location
   fall in that time. Use **Review visit** to open one.
2. Add a **Decision note (optional)**.
3. Select **Approve** or **Decline**.

Approving does not move or reassign anyone's visits. Visits that fall in the
time off keep their crew, so reassign or reschedule them on the schedule. You
can see them on **Availability and conflicts**. See
[Crews and availability](/docs/crews-and-availability).

**Review affected visits** only lists visits at your current location, but
approved time off applies at every location where the person works. If they
also work at another location, check their visits there too.

## How approved time off is used

Approved time off is added to that person's availability. When you book or
reassign a visit during that time, BlastoClean warns you that the person is
off. The reason is never shown on the schedule.

A declined request stays declined. To ask again, submit a new request.

## Good to know

- Managers get a notice in the notification bell when a request comes in,
  and the person who asked gets one when it is decided.
- You need an internet connection to submit, cancel or decide on a request.
  If a submission cannot be confirmed, select **Retry submission**.
- Nothing is sent to your customers.

See also [Shift swaps](/docs/staff-shift-swaps),
[Offer an assigned visit](/docs/staff-visit-offers) and
[Staff communication](/docs/staff-updates).

## On the native app

Native versions with Staff include this workflow too. Open **Staff** for time
off, documents and notification preferences; **Visit offers** is also available
from native Settings or the Crew menu. The same Pro/Business, location and role
rules apply. These actions need an internet connection; keep a pending draft
open and use its offered retry if the result is unknown.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "Using BlastoClean in ChatGPT and Claude · BlastoClean docs"
description: "Connect BlastoClean to ChatGPT or Claude with one address and a sign-in, then ask about your schedule, customers and numbers, or have it draft a quote. Also, what it can never do."
url: "https://www.blastoclean.com/docs/chatgpt-and-claude"
---

# Using BlastoClean in ChatGPT and Claude

Running the company · Web app · 4 min read · Updated October 20, 2026

**Paste one address into ChatGPT or Claude and sign in, and you can ask about your schedule, customers, quotes and numbers or have it draft a quote, while it can never send, charge, book or delete anything.**

If you already use ChatGPT or Claude, you can bring BlastoClean into the
conversation. Ask what is on tomorrow, who still owes you money or which quotes
are waiting on a customer, and get the answer from your own account. Or describe
a job and have it draft the quote for you.

There is nothing to install and no key to copy. You paste one address into the
assistant, sign in to BlastoClean, and approve.

## What you can ask

- **"What's on the schedule tomorrow?"** You get visits, times, addresses, who asked
  to move.
- **"How did we do this month?"** You get the same figures as
  [your dashboard and reports](/docs/the-dashboard-and-reports): quotes won,
  money collected, the week ahead, what needs attention.
- **"Who owes us money?"** You get open balances and how long they have been owed.
- **"Which quotes are still waiting on a customer?"** You get quotes that are sent, viewed or expiring.
- **"Any new quote requests?"** You get the leads from
  [your website form](/docs/quote-requests-from-your-website), with their
  messages.
- **"Add a customer: Maria Lopez, 42 Pine Street…"** It checks for an
  existing customer with the same email or phone first.
- **"Draft a quote for Maria: three bedrooms, two bathrooms, kitchen, deep
  clean."** The quote is built from [your own rooms and tasks](/docs/your-room-and-task-library)
  and priced by BlastoClean, exactly as if you had
  [built it yourself](/docs/building-a-quote).
- **"When could we fit a three-hour clean next week?"** You get open times from your
  own schedule and working hours.

Every answer that points at a record comes with a link that opens it in
BlastoClean.

## What it can never do

The assistant **cannot send anything to your customers, take or refund a
payment, book a visit, or delete anything**. A quote it drafts stays a draft
until you open it and [send it yourself](/docs/sending-a-quote). Prices always
come from your own rates and task times: the assistant can choose rooms, never
prices.

That line is deliberate. An assistant reads text other people wrote, such as a
lead's message, and that text could try to tell it what to do. Because the most
it can ever do is add a record or a draft for you to check, nothing reaches a
customer without you.

The assistant may ask for approval according to its permissions and the action.
Review any customer or quote draft in BlastoClean before using it.

## Before you start

- **Any paid plan.** It comes with Starter, Pro and Business, and with your free
  trial. It isn't part of the Free plan.
- **Everyone connects their own.** Office roles can connect their own
  ChatGPT or Claude, and it works as them: it sees and does only what their
  role allows. An estimator's assistant doesn't see your reports, and a
  read-only team member's can't add or draft anything. See
  [team roles and permissions](/docs/team-roles-and-permissions).
- **One location at a time.** If you run more than one location, the connection
  works in the location you are in when you approve it.

## Connect Claude

1. Copy the address from BlastoClean **Settings → ChatGPT & Claude**.
2. In Claude, open **Customize → Connectors → Add custom connector**.
3. Name it **BlastoClean**, enter the address and follow the OAuth sign-in prompts.
4. Review access and connect. Enable the connector from the chat's **+ → Connectors** menu.

Team and Enterprise organizations need an authorized owner to add it first;
then each member connects individually. Follow
[Claude's current connector guidance](https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp)
if the setup screens differ.

## Connect ChatGPT

1. Copy the address from BlastoClean **Settings → ChatGPT & Claude**.
2. In ChatGPT web, open **Plugins → + → Add custom MCP server** where your account or workspace permits it.
3. Enter the address, choose **OAuth**, review the warning and create the plugin. Install it and sign in to BlastoClean when prompted.
4. Select it with **@** in a chat. A workspace administrator may need to approve or publish it first.

Some accounts still use **Apps → Create** and **Scan Tools** instead. Available
tools and setup permissions depend on your ChatGPT plan and workspace policy. See
[OpenAI's current setup guidance](https://help.openai.com/en/articles/12584461-developer-mode-and-mcp-apps-in-chatgpt).

## Disconnecting

Open **Settings**, then **ChatGPT & Claude**, and choose **Disconnect** next to
the assistant. It stops working immediately. An owner sees everyone's
connections there, with whose each one is, and can disconnect any of them.

You can also remove BlastoClean from the assistant's own settings, and reconnect
later the same way you connected the first time.

## Questions

**Does it use my AI credits?** No. The assistant's own AI does the work. The
[AI assists](/docs/ai-assists) built into BlastoClean are separate and keep
their own monthly allowance.

**Can my staff connect their own?** Yes. Each person connects their own
assistant, and it is limited to what their role allows. An owner can see and
disconnect everyone's in **Settings**.

**What does the assistant see?** Its permitted tools can return company records
within the scopes, role and location you approved. Those responses go to the
assistant's provider. What ChatGPT or Claude keeps is governed by your agreement
and settings with that provider, separately from BlastoClean's built-in AI
assists. See [Privacy](/privacy).

**It says the connection does not work anymore.** If your plan changed, the
assistant will say so, and an owner can change the plan in **Settings**.
Otherwise, disconnect and connect again.

---

---
title: "Offer an assigned visit · BlastoClean docs"
description: "Give up your place on a visit, let a teammate claim it, and have a manager approve the swap."
url: "https://www.blastoclean.com/docs/staff-visit-offers"
---

# Offer an assigned visit

Running the company · Web and mobile · 2 min read · Updated October 19, 2026

**On Pro and Business, a team member who cannot make a visit can offer their place. A teammate claims it and a manager approves the swap. The visit time and the rest of the crew stay the same.**

Sometimes a cleaner cannot make a visit they are booked on. Instead of a chain
of texts, they can offer their place in BlastoClean. A teammate claims it, and
a manager approves the replacement. Visit offers are included with **Pro and
Business**.

## Offer your place

1. Open **Visit coverage** from the navigation, under **Work**. In a phone's
   web browser it is in the bottom bar or under **More**; the phone app has its
   own entry, below.
2. Under **Assigned visit**, choose the upcoming visit.
3. Add an **Offer note** if it helps, for example "Dentist appointment, can
   swap for Friday."
4. Select **Offer this visit**.

You only offer your own place. The visit time and the other people on it stay
the same. You can select **Cancel offer** while it is still open or waiting
for approval. Your note is visible to the people who can claim the offer and
to the managers at that location.

## Who can claim it

The offer goes to teammates on the saved teams that already clean for that
customer at that location. A manager can also let other people claim it with
**Also allow these people to claim**. Someone already on the visit cannot claim
it.

To take an open offer, select **Claim**. Claiming does not change the visit
yet. It waits for a manager.

Visits that start within 24 hours go straight to managers instead of the team,
so a manager can pick someone quickly.

## Approve a replacement

Owners and managers see offers in **Visit coverage** and in the **Team feed** on
the Staff page.

1. Select **Review replacement people** to see who claimed it and who else is
   available.
2. Choose the **Replacement** and select **Approve replacement**, or select
   **Decline offer** to keep the visit as it is.

Approval swaps only the person who made the offer, on that one visit. The rest
of the crew, other visits and recurring schedules stay the same. If the new
person has a scheduling conflict, BlastoClean shows it, and you can confirm
the exception with **Confirm availability exception and approve**.

## Good to know

- Teammates get an in-app notice when a visit is offered to the team. Visits
  starting within 24 hours go to managers instead, so teammates are not told
  about those. The people
  involved get one when it is claimed, approved or declined. Notices do not
  include the customer's name or the note.
- Nothing is sent to the customer.
- You need an internet connection to offer, claim or approve.

See also [Shift swaps](/docs/staff-shift-swaps),
[Saved teams and client preferences](/docs/saved-teams) and
[Staff communication](/docs/staff-updates).

## On the native app

Native versions with Staff include this workflow too. Open **Staff** for time
off, documents and notification preferences; **Visit offers** is also available
from native Settings or the Crew menu. The same Pro/Business, location and role
rules apply. These actions need an internet connection; keep a pending draft
open and use its offered retry if the result is unknown.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "Private staff documents · BlastoClean docs"
description: "Keep W-9s, IDs, certifications and other paperwork in one private folder per team member."
url: "https://www.blastoclean.com/docs/staff-private-documents"
---

# Private staff documents

Running the company · Web and mobile · 3 min read · Updated October 19, 2026

**On Pro and Business, every document belongs to one team member. Owners and managers can file paperwork for anyone at the location and see at a glance who is missing a W-9 or ID or has a certification about to expire. Everyone else sees only their own documents.**

Collecting paperwork from a new cleaner usually means photos in a text thread.
**Private documents** gives each person a private folder instead. It is included
with **Pro and Business**.

Every document belongs to one team member: the person it is about. Documents
uploaded before folders existed belong to the person who uploaded them.

## Upload a document

Uploading, editing and removing require Staff write access. Read-only users can
view their own documents but cannot change them.

1. Open **Staff**, then select **My documents**. Owners and managers see the
   **Staff documents** link.
2. Owners and managers choose the **Team member** the document is about. Any
   active member of the location can be chosen. Everyone else files documents
   about themselves.
3. Choose the **Document type**: **W-9**, **ID**, **Certification** or
   **Other**.
4. If you like, fill in **Title (optional)**, for example OSHA 10, and
   **Expiration date (optional)**.
5. Choose the file or photo. PDF, JPEG, PNG and WebP files up to 10 MB work.
6. Select **Upload document** and wait for **Document saved**.

A person's folder groups files by type. The checklist shows paperwork on file,
missing W-9s or IDs, and documents that have expired or expire soon. These
labels describe the files recorded here; they do not certify their contents.

## Check the team (owners and managers)

**Staff documents** opens on the **Team checklist**: "Choose a person to see,
add or fix their documents." Each person shows:

- **W-9** and **ID**: **on file** or **missing**.
- **Certifications**: how many are on file.
- **Expired** and **Expires soon** (within 30 days), when any document has an
  expiration date that has passed or is close.

Select **View documents** to open one person's folder. Their documents are
grouped under **W-9**, **ID**, **Certifications** and **Other documents**, and
the upload form files for that person. Select **All team** to go back to the
checklist. Below the checklist, **Recently added** lists the newest documents
for the whole location.

## Fix or remove a document

Select **Edit** on a document to change its **Document type**, title or
expiration date, then select **Save**. Owners and managers can also choose a
different **Team member** to refile a document that went to the wrong person.

Select **Remove** to delete a document. The app asks "Remove this document?"
and warns that the file is deleted for everyone who can see it. This cannot be
undone.

Owners and managers can edit or remove any document at the location. Everyone
else can edit or remove only documents they uploaded about themselves, not ones
a manager filed for them.

## Who can see it

Team members see **Your documents**, grouped by type: everything about them at
the location, whoever uploaded it. Only the person and the owners and managers
of their location can open their documents. Other team members cannot see them.
Owners and managers see the documents for everyone at the location they are
working in.

To open a document, select **Download**.

Uploading a W-9 does not mark it as received. The owner still records that
separately in **Settings**, under **Team pay**.

## Good to know

- You need an internet connection. If an upload cannot be confirmed, select
  **Retry upload**. It sends the same file, so you will not end up with two
  copies. Keep the page open: the selected file and pending retry are not saved
  across closing or reloading it.
- Uploading, editing or removing a document does not notify anyone.
- Documents of someone who has left the team stay in their folder, shown as
  **Former team member**, so you can still download, refile or remove them.

See also [Staff communication](/docs/staff-updates).

## On the native app

Native versions with Staff include this workflow too, including the team
checklist, filing for a team member, editing and removing. Open **Staff** for
time off, documents and notification preferences; **Visit offers** is also
available from native Settings or the Crew menu. The same Pro/Business, location
and role rules apply. These actions need an internet connection; keep a pending
draft open and use its offered retry if the result is unknown.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "Shift swaps · BlastoClean docs"
description: "Ask a coworker to take one of your visits or trade it for one of theirs, and approve swaps as an owner or manager."
url: "https://www.blastoclean.com/docs/staff-shift-swaps"
---

# Shift swaps

Running the company · Web and mobile · 5 min read · Updated October 18, 2026

**On Pro and Business, team members ask a coworker to take a visit or trade visits. The coworker accepts and, by default, an owner or manager approves before any crew changes; swaps within the same team can approve automatically.**

Shift swaps let your team sort out "can you take my Tuesday?" in the app
instead of by text message. A team member asks, a coworker accepts, and by
default you approve before anyone's schedule changes. You can instead let swaps
between members of the same team approve themselves. Shift swaps are included
with **Pro and Business**.

## Ask for a swap

Asking is for team members with the **Crew** role, from **My jobs**. Owners,
managers and other office roles see their visits in **My week**, which has no
**Ask for swap**; reassign those visits on the schedule instead.

1. Open **My jobs** and select the visit you cannot make.
2. Select **Ask for swap**.
3. Under **Who should take it?**, pick a coworker or **Anyone available**.
   The list only shows people at the same location who are free at that time
   and have no approved time off.
4. Under **Swap type**, choose **Give it away**, or **Trade for one of their
   visits** and pick the visit of theirs you would take. Trades need a named
   coworker.
5. Add a **Note (optional)** and select **Send request**.

Follow your request in **Staff** › **Shift swaps**, under **Your requests**. To
withdraw it, select **Cancel request**.

Swaps close a set number of hours before the visit starts (the earlier visit, in
a trade; 24 hours unless your owner changed it). After that, ask the office
instead.

## Answer a swap request

Swaps go to team members at the same location with the **Crew** or **Estimator**
role. When a coworker asks you, you get a notice in the notification bell. Open
**Staff** › **Shift swaps** and look under **Asked of you**. You see what you need to decide: the visit's date and time, the client's name and the area (the city, never the street address), who is asking and their note, and the same details for the visit you would give in return for a trade. Nothing else about the visit is shown until it is yours.

- Select **Accept** to take it. BlastoClean checks again that you are free and
  not on time off.
- Select **Decline** if you cannot.

A request to **Anyone available** goes to every Crew member and Estimator at the
location who is free then and has no approved time off. The first person to
accept takes it, and anyone else who tries is told it has already been taken. If
you cannot take it, you can ignore it.

What happens next depends on your company's swap setting:

- **You approve every swap** (the default): accepting does not change your
  schedule yet. The swap shows **Waiting on owner** until an owner or manager decides.
- **Automatic between people on the same team**: if you and the person asking
  are on the same [saved team](/docs/saved-teams), the swap is approved as
  soon as you accept and shows **Approved**. Otherwise it waits on an owner or manager as above.

## Approve or decline as an owner or manager

Owners and managers get a notice and an email with an approve link when a swap
needs them, except on a swap they are part of: nobody decides their own swap, so
another owner or manager does. Swaps waiting on you also show on **Home** under
**Needs attention**, and as a **Swap requested** badge on the visit in
**Schedule**.

The approval card shows, for each visit:

- the crew **Before** and **After** the swap,
- the result of the conflict check: whether everyone is still free and nobody
  has approved time off, and
- a warning when the swap breaks a recurring client's usual crew.

Add a **Note (optional)** and select **Approve** or **Decline swap**. You can do
this from **Staff** › **Shift swaps**, under **Waiting on you**, or from the
visit in **Schedule**.

When you approve a give-away, only that visit changes. When you approve a trade,
both visits change together, in one step, or neither does. The person swapping
in takes the same place on the crew, so the lead position stays the lead: if the person leaving led the visit, the coworker coming in leads it. Helpers keep their places. Both people see the change the next time their visits load: in
**My jobs** for the Crew role, in **My week** for an Estimator, and pay and
hours reports count whoever ends up doing the visit. If the check finds a
conflict or time off, **Approve** is not available and the card tells you why.
Declining changes nothing.

The approve link in the email works once. It asks you to sign in and shows the
same card, even if you are working in another location today. After the swap is
decided, the link shows that it was already decided.

## Swap settings

Owners choose how swaps work in **Settings** › **Employees & Teams** › **Shift
swaps**:

- **Who approves swaps**: **You approve every swap** (the default),
  **Automatic between people on the same team**, or **Off**. With the
  automatic option, a swap between two members of the same
  [saved team](/docs/saved-teams) is approved as soon as the coworker accepts.
  BlastoClean still records who swapped and when.
- **No swaps within this many hours of a visit**: from 0 to 168 hours, 24 by
  default. Swaps nobody decided by then expire.

## When a swap is canceled or expires

- If the office reschedules, reassigns or cancels one of the visits, open
  swaps on it are canceled and everyone involved gets a notice.
- If nobody decides before the cutoff, the swap shows **Expired**.
- Either way, the visits keep their current crews.

## Good to know

- Each visit can have one open swap at a time.
- Swaps stay within one location. To let someone from another location take
  swaps here, add them to this location in **Settings** › **Employees &
  Teams**.
- Owners and managers approve swaps, so they are not offered visits through
  them. A swap is refused when no owner or manager at the location could approve it, for example when nobody with that role works at the location, or the only one left it before the coworker accepted.
- Nothing is sent to your customers.

See also [Staff time-off requests](/docs/staff-time-off),
[Offer an assigned visit](/docs/staff-visit-offers) and
[Staff communication](/docs/staff-updates).

## Where swaps work

The website supports asking, answering and approving swaps and also works in
your phone's browser. Native versions with shift swaps support the same workflow:
Crew ask from **My jobs**, Crew and Estimators respond, owners and managers
approve, and owners manage the approval policy. Plan and location rules still
apply. See [Native version availability](/docs/the-mobile-app).

---

---
title: "Staff notification preferences · BlastoClean docs"
description: "Choose whether you get an email when a new staff announcement is posted."
url: "https://www.blastoclean.com/docs/staff-notifications"
---

# Staff notification preferences

Running the company · Web and mobile · 2 min read · Updated October 18, 2026

**On Pro and Business, each person chooses whether to get an email notice when a new staff announcement is posted. New announcements also appear in the notification bell.**

When an owner or manager publishes a staff announcement, the people it is for
see it in **Staff** and in their notification bell. Each person can also choose
to get an email when a new announcement is posted. Staff notifications are
included with **Pro and Business**.

## Turn on email copies

1. Open **Staff**, then select **Notification settings**.
2. Tick **Email me a copy of new staff announcements**.
3. Select **Save preferences** and wait for **Preferences saved**.

To stop the emails, clear the tick and save again.

This choice is yours alone and applies at every location you work at. A
manager cannot turn it on for you. Email copies start turned off, and turning
them on does not send announcements that were posted before.

## What the email contains

The email is a short notice with a link to sign in. The announcement itself
stays in Staff, so private details never sit in an inbox. Time-off reasons and
private documents are never included.

Getting a notification does not mark an announcement as read or acknowledged.
Open Staff and use **Mark as read** or **Acknowledge** for that.

## Good to know

- People who leave the team or lose access to a location stop getting these
  emails.
- Push notifications are separate from these email preferences. In native builds
  configured for push, delivery also requires the server setup and this phone's
  permission. See [Notification settings](/docs/notifications) and
  [Native version availability](/docs/the-mobile-app).
- If your preferences do not load, select **Refresh**. If saving cannot be
  confirmed, select **Retry saving**.

See [Staff communication](/docs/staff-updates) for how
announcements work.

## On the native app

Native versions with Staff include this workflow too. Open **Staff** for time
off, documents and notification preferences; **Visit offers** is also available
from native Settings or the Crew menu. The same Pro/Business, location and role
rules apply. These actions need an internet connection; keep a pending draft
open and use its offered retry if the result is unknown.

See [Native version availability](/docs/the-mobile-app).

---

---
title: "All feature details · BlastoClean docs"
description: "Full details on every feature, in one place."
url: "https://www.blastoclean.com/docs/feature-notes"
---

# All feature details

Running the company · Web and mobile · 53 min read · Updated October 19, 2026

**Full details on every feature, in one place.**

The features page is a short tour. This page has the full details on every feature. Nothing here was dropped. Where a guide already walks through the steps, that guide is linked. Free quotes the job, books it and gets paid, one job at a time: it records and refunds payments, sends receipts, and shows what you are owed.

## Built for commercial contracts too

Tell BlastoClean what work your company does, residential, commercial or both, in Settings, and commercial quotes unlock what a janitorial contract actually needs.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

A sample monthly bid for an office. The company is not a real customer.

- Sol Brillo, Building cleaning, Oak Street offices
- Trash and restrooms: Every visit
- Carpets: Weekly
- High dusting: Monthly

Per month: $2,400. Net 30

### Start from a common job

All plans. On the web, a business quote can start as an office, a medical office, a shop, or a move-out. On the phone, the same idea is an office, a clinic, a store, or a clean after a build or a move.

- One tap fills the rooms, the tasks, how often you come, and the agreement.
- Change anything that is not right.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### A frequency on every task

All plans. One contract can say trash and restrooms every visit, carpets weekly, high dusting monthly, strip and wax quarterly. Every task on a commercial quote carries its own frequency, every visit, weekly, every two weeks, monthly, quarterly.

- Work orders list the every-visit tasks as tonight's checklist and tag the periodic ones with their frequency, for the crew to plan into the week.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### Price the month, not the visit

All plans. Choose how many visits a week, and the month is worked out for you. The quote shows a monthly amount.

- The customer sees the work grouped by how often each task happens.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### Contract terms on the quote

All plans. Contract length in months, auto-renewal, an annual price escalation percentage and a cancellation notice period, set on the quote, printed on it, and following the schedule when it's booked. The dashboard warns you when a contract approaches renewal, so the date never sneaks past.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### Escalations that announce themselves

Paid plans. The annual increase is applied through the same dated price-change flow as any other raise: the new amount takes effect on its date, everything before it keeps the old price, and the customer is notified before it happens, never a surprise on an invoice.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### Net terms and PO numbers

Paid plans. A customer can carry payment terms, Net 30, say, and a PO number, and invoices get due dates, instead of pretending every business pays at the door.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### One invoice for the month

Paid plans. Switch a customer to consolidated monthly invoicing and the month's completed visits land on a single invoice, the way commercial clients actually pay, rather than twenty separate ones for twenty nightly cleans.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### Aging you can act on

Paid plans. The Money owed report ages what's owed, 0, 7, 8, 30, 31, 60 and over 60 days, counted from the invoice's due date for customers on terms. A 60-day debt becomes a line on a report you check, not a surprise in the bank balance.

[Commercial cleaning guide](/docs/the-dashboard-and-reports)

### Proof of service, with GPS

Paid plans. Cleaners clock in and out of visits from the mobile app with GPS, so the office sees arrival and departure times and whether the crew was actually on site. Clock-out fills in the visit's real minutes for the estimated-vs-actual report.

[Commercial cleaning guide](/docs/the-mobile-app)

### Clock-ins required before completion

Starter and above, off by default. Turn on **Require assigned staff to clock in before completing visits** in **Settings → Appointment reminders**, and a visit can't be completed until every active person assigned to it has a recorded clock-in. Crews see the requirement on **My jobs** and on the phone's visit clock. Clocking in is still never refused for distance from the property.

[Scheduling guide](/docs/scheduling-a-visit)

### Missed-clean alerts

Paid plans. If nobody has clocked in by a set number of minutes after a visit's start, the owner is alerted. You find out at 6:15pm, not when the client calls the next morning.

[Commercial cleaning guide](/docs/notifications)

### Bid by the square foot, not by the room

All plans. Commercial work is estimated the way the trade estimates it: a measured area, a floor type, and a production rate in square feet per hour. Twelve thousand square feet vacuumed at 3,000 sq ft/hour is four hours, and the minutes are derived rather than typed, correct the walkthrough figure once and every task measured over it follows.

- Rates start from a reference table in the ISSA tradition and vary by what is underfoot, because mopping sealed concrete takes about twice as long as mopping tile.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### Restrooms priced per fixture

All plans. A 400 sq ft restroom with twelve fixtures is not the same job as a 400 sq ft one with three, and no floor-area rate can tell them apart. Count the toilets, urinals and sinks; the library ships them as separately counted tasks at fixtures-per-hour rates.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### Quality inspections your client can see

All plans. Walk the building, score each area out of five, photograph what is wrong. Completing snapshots the score as a percentage and freezes the lines, so a scorecard always follows from its own evidence, and an area you could not get into is left out rather than scored zero.

- A walkthrough can start from a list of checks, so scores of one building stay comparable: the building's own cleaning checklist or a checklist template (Starter and above), or the built-in standard walkthrough. Starting blank is still an option.
- Bad lines become corrective actions with an owner and a date, and you choose which walkthroughs the client sees. The client sees them in the customer portal, which is on paid plans.

[Commercial cleaning guide](/docs/quality-inspections)

### A complaint log with a clock on it

Paid plans. Clients raise issues in their own portal and watch what happens to them. The promise is time to acknowledge, not time to fix, a bin problem sorted at the next visit is fine if somebody answered within the hour, and the target in force when they raised it is the one it is judged against, forever.

- Your office cannot file a request on their behalf, because that would flatter every figure the log produces.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

### Margin per site, per month

Business. A contract signed two years ago still invoices the same figure, which is exactly why nobody notices when it stops paying. Profit by place shows one row per building per month, because a ten-site account can be comfortably profitable while two of its buildings bleed. It stays on the Business plan.

When Team pay is set up, each person is costed at the pay rate in effect on the visit date. W-2 workers include the extra payroll cost on those wages. 1099 workers do not. Your own time counts only if Count my time as a cost is on. Unpaid time is left out. The money is the visit price with tax taken out. The cost is wages and payroll only. It does not include insurance or a share of the van. There is no overhead figure in it.

If Team pay is not set up, the report uses one hourly crew cost. The Free plan has no Team pay. On Free, that hourly number is the crew cost. A crew member whose pay is missing on a visit uses the same hourly number. Next to it, the app can suggest Use $X from Team pay. That figure is the average pay of hourly and salaried people, weighted by the hours they work, with the W-2 payroll extra added. It is wages and payroll only.

- If that hourly number is blank and no pay rate is set, the report shows hours and does not state a margin. A visit nobody timed is not costed from the time on the schedule.

[Commercial cleaning guide](/docs/the-dashboard-and-reports)

### Extra work without a second invoice

Paid plans. “Can you do the fridge on Tuesday?” Add it to the customer's visit and it joins that visit's price, its invoice and the crew's checklist, for any customer. Record that they already agreed, or send a one-page approval link and it goes on when they approve. For a commercial client on monthly billing, work that is not on a visit (“Tenant moved out on 4, needs a turn clean”) goes on the invoice they were already going to pay, rather than a fresh quote and a second document their accounts-payable department has to process.

[Extra work guide](/docs/change-orders)

### Supplies, keys and paperwork

In native versions with the commercial site card, eligible office roles can read recorded access instructions and supply levels, reveal a code with customer write permission and flag a shortage with scheduling write permission. Crew cannot access these site records.

- Site setup, restock management and compliance records have server support but no current product-management interface. Flagging a shortage is not an order, delivery or invoice.

[Commercial cleaning guide](/docs/site-operations)

### One client, many buildings

Paid plans. Each site carries its own contact, the person at that building, who is not the person who pays, and visit reminders go to them. Sites carry the client's own reference code, printed on the work order beside the address, so a facilities manager can reconcile a line without phoning to ask which building it was.

[Commercial cleaning guide](/docs/commercial-cleaning-mode)

## Quoting

Estimates built the way cleaners actually think: by room, by task, by condition.

[Guide to building a quote](/docs/building-a-quote)

### Quote by room and size

All plans. Room-by-room quotes from your prices, with size and condition multipliers.

[Guide to building a quote](/docs/pricing-a-quote)

### Send by email, and by text on Pro

All plans. Email the quote on every plan. On Pro, text it when the customer has agreed.

[Guide to building a quote](/docs/building-a-quote)

### Room and task library

All plans. Start with a library of room types and cleaning tasks, then shape it to how your company cleans houses or offices. Every new quote draws from it. Save a set of rooms as a layout, such as a 4-bedroom house, and start any quote from it.

[Guide to building a quote](/docs/your-room-and-task-library)

### Size and condition multipliers

All plans. Mark a room large or heavily soiled and the time scales automatically. Multipliers are applied by the system, so a typo can never produce a silly price.

[Guide to building a quote](/docs/pricing-a-quote)

### Live price preview

All plans. Labor time and price update as you tick tasks, using exactly the same calculation that produces the final quote.

[Guide to building a quote](/docs/pricing-a-quote)

### A free range, before the real quote

No account. The [free cleaning quote calculator](/free-cleaning-quote-calculator) turns bedrooms, bathrooms, square feet, and the kind of clean into a low-to-high range. No account.

- It is a starting point, not the quote you send.
- That quote still comes from your rooms, your tasks, and your hourly rate.

[Open the calculator](/free-cleaning-quote-calculator)

### A free monthly bid, before the real contract

No account. The [free commercial cleaning bid calculator](/free-commercial-cleaning-bid-calculator) turns square feet, how often you come, and what you pay per hour into a monthly bid. No account.

- The numbers it starts with are examples you should change.
- It is one speed for the whole building, not the spec sheet you send.

[Open the calculator](/free-commercial-cleaning-bid-calculator)

### Crew size on the quote

All plans. Say how many people you'll send. The quote shows the time on site, a six-hour job for a crew of three is two hours at the door, and booking it puts those two hours on the schedule.

- The price still bills all six labor hours.

[Guide to building a quote](/docs/pricing-a-quote)

### Manual adjustments, flagged

All plans. Know a room takes 45 minutes no matter what the tasks add up to? Set it.

- The quote clearly shows the number was set by hand.

[Guide to building a quote](/docs/pricing-a-quote)

### Price override with a paper trail

All plans. An owner or manager can override the final price. The calculated total, the override, the reason and who set it are all kept.

[Guide to building a quote](/docs/pricing-a-quote)

### Numbering and expiration

All plans. Quotes number themselves in your company's own sequence and expire on your schedule, 30 days by default.

[Guide to building a quote](/docs/follow-ups-and-expiry)

### Copy a quote onto the next customer

All plans. The same three-bedroom terrace, the same move-out clean, the same office block on the next street, priced once and then priced again for the next person who asks. Copy a quote from the list or from the quote itself, say who the copy is for (the same customer, or a different one), and every room, task, minute, fee, discount and contract term rides along into a new draft you open and change.

[Guide to building a quote](/docs/building-a-quote)

### Two names for a room, when your team reads the other language

All plans. A room type or a cleaning task carries the wording your customers see, in the language your company writes in, and a second name for whoever is reading the app in the other one. Quotes, PDFs and emails keep the customer's wording; a bilingual crew reading the app in Spanish stops getting "Guest Bathroom" on the work order.

- Leave the second name empty and the row reads exactly as it does today, in every language.

[Guide to building a quote](/docs/your-room-and-task-library)

## Quick Quote and Magic Quote

Two distinct ways to build the structure for you. Quick Quote turns one loose paragraph, photos of the property or both into a complete draft through adaptive, one-tap follow-ups and is available on Starter, Pro and Business.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Quick Quote starts with one paragraph

Paid plans. Type what you know in whatever order it comes: “2.5 baths, 4 bedrooms, 3,000 sq ft, very clean, weekly.” Paste a customer's message or use your device's dictation, when available, if that is quicker. It extracts the property, room counts, condition, service type and frequency without making you translate any of it into a form.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Quick Quote takes photos too

Paid plans. Add up to 15 photos of the property, with or without a description. Each is read once as it uploads, for 1 AI credit, and the draft uses what they show: rooms, condition and things that change the work. A photo of a person or a document is kept out of the draft.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Prioritized follow-ups

Paid plans. It prioritizes unanswered details that can change scope or price and groups them into quick taps. Confirm a frequency, choose a condition, provide a configured task’s per-room area or fixture count, select several rooms at once, or type one free-form correction.

- Details such as pets, access and add-ons remain visible as notes to review instead of becoming guessed scope or pricing.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### A room-completeness check before the draft

Paid plans. Likely rooms adapt to the property: kitchen, living room, dining room, laundry, basement or garage for a home; reception, restrooms, offices and break room for a workplace. Suggestions appear in Room Check for confirmation, anything still undecided stays visible, and a draft is not created until the required check is complete.

- The same Room Check protects Magic Quote walkthroughs opened in the current web or mobile app before they create a draft.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Capture first, structure later

Pro. Tap Start and walk. Photos, short videos, voice notes, typed lines, a room name said out loud, take whatever the moment gives you, in any order, with nothing to categorize.

- The point is that you're looking at the property and the customer, not at your phone.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Start with nobody on file

Pro. Knocking on a door is a normal way to get work, and a doorstep is the worst place to make somebody fill in a customer form. Start a walkthrough with no customer at all, the walk itself says who the job is for, and the review screen offers that name back to you beside a search of the customers you already have.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### It listens while you talk

Pro. Record a voice note walking through a room and Magic Quote reads it back as text: which room you're in, what the customer asked for, what they said to skip, how long you reckoned the shower would take. "Two dogs, lots of hair" is information, and it keeps it.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Capture with no cell signal or Wi-Fi

Pro. Magic Quote lets you keep capturing with no cell signal and no Wi-Fi while the walkthrough stays open. Pending photos, voice notes and typed notes also stay saved if you close and reopen the app, then resume without creating duplicates when you reconnect.

- A short video that has not finished uploading does not yet have that restart protection, so leave the walkthrough open until its upload finishes.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### A timeline you can check

Pro. Every photo, clip and recording stays in the order you took it, with what was said written out beside it. When Magic Quote tells you the customer asked for the oven, you can tap through to the second of the recording where they said it.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### It tells you what it isn't sure about

Pro. Each thing it picked up carries a confidence, and anything shaky is put in front of you before it can affect a price. Confirm it, remove it, or fix the wording.

- Nothing you rejected gets quoted.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### It notices when someone changes their mind

Pro. "We don't need the refrigerator" at 10:05 and "actually, let's do the refrigerator" at 10:23 is one customer changing their mind, not two contradictory notes. Magic Quote shows you both and asks which stands.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Your prices, not a guess

Pro. The draft is priced from your own rooms, tasks, hourly rate, and multipliers. That is the same math as every other quote.

- Magic Quote can suggest a range beside your number.
- It can never be the number.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Change it by talking to it

Pro. Ask “Did she mention windows?” or give a supported change such as “Take
10% off.” Review what changed and the capture it cites before sending the quote.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### Commercial bid walkthroughs too

Pro. A bid walk works the same way: walk the office suite floor by floor, saying what happens nightly and what happens quarterly as you go. The draft comes back a commercial quote, every task carrying the frequency you mentioned, ready to price by the month.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

### What's said on a customer's property stays there

Pro. Your honest note about the master shower stays internal; the customer's quote says the shower needs extra detail on the first visit. Photos and recordings are never public, and you choose how long they're kept, thirty days, ninety, a year, or as long as the customer.

[Quick Quote and Magic Quote guide](/docs/magic-quote)

## Finding the work

A quote-request form for your own website, and an inbox where the leads land.

[Guide to quote requests](/docs/quote-requests-from-your-website)

### A ready-made request page

Paid plans. Every company gets a public "request a quote" page to link from your website or social profiles. Visitors leave a name and a way to reach them, no account, ever.

[Guide to quote requests](/docs/quote-requests-from-your-website)

### An embeddable widget

Paid plans. Paste one script tag and the form lives on your own site, as an inline form or a floating button. Restyle it from Settings, accent color, theme, headline, which questions to ask, and every widget you've already published updates without touching the code again.

[Guide to quote requests](/docs/quote-requests-from-your-website)

### A leads inbox

Paid plans. New requests badge the navigation and email the office. Convert one into a customer, a property and a draft quote in a single step, or dismiss it.

[Guide to quote requests](/docs/quote-requests-from-your-website)

### In the visitor's language

Paid plans. The request form follows the visitor's browser language, English or Spanish, because a stranger's language is something only their browser knows.

[Guide to quote requests](/docs/quote-requests-from-your-website)

## Winning the job

Make saying yes the easiest part of your customer's day.

[Guide to sending a quote](/docs/sending-a-quote)

### Private share links

All plans. Each quote gets a private link only your customer can open. Regenerate it at any time and the old link stops working immediately.

[Guide to sending a quote](/docs/online-acceptance-and-signatures)

### Accept and request a time

Customers open the private quote link without an account. On Starter and above,
they request a preferred date and time. The business approves it in the web app
before a visit is booked; the mobile app has the same review. Optional instant booking is off by default
and checks the full visit against working hours and existing bookings.
On Free, **Yes, I accept** accepts the quote without booking.

[Online acceptance guide](/docs/online-acceptance-and-signatures)

### One quote, four prices, their choice

All plans. Offer the same job once, every week, every two weeks, and once a month. Each has its own price per visit.

- Set the discounts once.
- Every option uses the same math, tax included.
- The customer picks one when they say yes.
- That choice becomes the price. The savings show on their own line. Booking starts from the schedule they picked.

[Guide to sending a quote](/docs/sending-a-quote)

### Send it by email, or by text

Pro. Email the quote with a personal note, or text it to customers who've opted in. The quote number, the total and the link always arrive intact; if a note runs long it's trimmed and you're told, never silently cut.

[Guide to sending a quote](/docs/sending-a-quote)

### Follow-ups that chase for you

Paid plans. Switch them on and unanswered quotes get a polite nudge after the days you choose, plus a warning before the quote expires, each sent at most once, and never after the customer has answered.

[Guide to sending a quote](/docs/follow-ups-and-expiry)

### Instant status

All plans. The moment a customer views, accepts or declines, the quote's status updates and your team is emailed, no more "did you get my email? " calls.

[Guide to sending a quote](/docs/sending-a-quote)

### Professional PDFs

All plans, in the web app with document-generation permission. Generate a polished PDF of a quote for customers who want paper, generated in the cloud with your company details on it.

[Guide to sending a quote](/docs/sending-a-quote)

### Tracked revisions

All plans. Editing an accepted quote creates a revision, so the version your customer agreed to is never lost.

[Guide to sending a quote](/docs/sending-a-quote)

### In your customer's language

All plans. Quote pages, PDFs, emails, texts and the portal are written in English or Spanish, whichever you set for your company. A quote keeps the language it was written in, forever.

[Guide to sending a quote](/docs/sending-a-quote)

### A signature on the acceptance, if you want one

All plans. Switch it on and accepting asks for more than a click: the customer types their name, ticks that they agree to the quote, and signs with a finger or a mouse. The mark is kept with the acceptance and printed on the quote page and the PDF beside the date it was given.

- Drawing is the part that can fail on an old phone, so it is the part that is optional, the typed name and the tick accept the quote on their own, and nobody is ever stuck at a canvas that will not draw.

[Guide to sending a quote](/docs/online-acceptance-and-signatures)

### Ask why, when the answer is no

All plans. A customer who declines can say why in one tap: the price, the dates, they went with somebody else, they no longer need it, or something else. The answers are counted on the Quotes to jobs report.

- Nobody has to answer.
- Skipping it counts as not given.

[Guide to sending a quote](/docs/the-dashboard-and-reports)

## Scheduling

Accepting a quote does not automatically add a visit. On Starter and above, a visit
is created when staff approve the requested time or optional instant booking succeeds.
On Free, you book each accepted quote yourself, one job at a time.

[Scheduling guide](/docs/scheduling-a-visit)

![Web app: Schedule and visit filters, with synthetic records.](/images/docs/demo-schedule-en-20261019.webp)

### One-off and recurring visits

Paid plans. Weekly, every two weeks, monthly by date or by rule, "the second Tuesday" stays the second Tuesday. The series keeps itself scheduled 3, 6 or 9 months ahead, as you choose.

[Scheduling guide](/docs/recurring-schedules)

### Book recurring visits further ahead

Starter and above. Choose whether ongoing schedules are booked 3, 6 or 9 months ahead. Each schedule can also follow the company setting, end on a date or stop after a number of visits, within nine months. Before a shorter window removes visits, you see how many will go, and visits you edited or already told the customer about are kept.

[Recurring schedules](/docs/recurring-schedules)

### Conflict-proof booking

Paid plans. Nothing can be booked on top of anything else. A clash is refused before it's written, naming the exact visit in the way, and back-to-back visits are fine.

[Scheduling guide](/docs/scheduling-a-visit)

### Crew assignment, one cleaner or a whole crew

Paid plans. Put one person or several on a series or a single visit; every one of them holds the hour and gets it on their own calendar. Changing the series flows to every future visit. Changing the crew on one visit from a repeating schedule asks whether it is for **This visit only** or **All future visits**, on the web and in the mobile app.

[Scheduling guide](/docs/crews-and-availability)

### Saved add-ons on a single visit

Starter and above, on the web and in the mobile app. Save the extras you sell, such as Inside fridge or Inside oven, with a default price and an optional checklist task. On a visit, one tap adds the add-on as a named line: the invoice shows it by name, its task goes on that visit's checklist only, and the Add-on revenue report adds up what each one sold.

[Add-ons guide](/docs/visit-add-ons)

### See who's free before you book

Paid plans. The booking form draws the week as a free/busy calendar, pick the crew and see their calendars, pick nobody and see the whole company's. Click an open slot and it's the visit's date and time.

[Scheduling guide](/docs/crews-and-availability)

### Calendar feeds, one per cleaner, too

Paid plans. Google Calendar, Outlook/Office 365 and Apple iCloud subscribe straight to your schedule, and every team member gets a personal feed of just their own visits for their own phone.

[Scheduling guide](/docs/calendars-and-feeds)

### Confirmations and reminders

Free includes a confirmation email when you book a job. From Starter, confirmation requests and reminder emails go out automatically on schedule, each with an add-to-calendar file attached. Text messages start on Pro. Customers confirm from a link that works on any device, and a customer who cannot make it picks one of the open times the page offers, ranked against the crew's real diary.

- It is a request, not a move: you accept it in one click, and nothing is rescheduled without you.

[Scheduling guide](/docs/reminders-and-confirmations)

### Printable work checklists

Paid plans. Every visit created from a quote carries a worksheet: the rooms, the exact tasks the customer accepted, and the property's access notes, ready to print or read from a phone.

[Scheduling guide](/docs/work-orders-and-visit-photos)

### Digital checklists per property

Paid plans. Save a checklist on each property, copy it onto every visit, and tick tasks from the phone with notes, photos and offline sync. The office sees progress, can mark tasks skipped or not needed, and the work order prints the same list. Checklist reports and tasks that require a photo come with Pro. See the help article on digital checklists.

[Scheduling guide](/docs/digital-checklists)

### Before-and-after photos

Paid plans. Capped plans allow up to 25 photos per visit; Business has no
photo-count cap. File-size and upload rules still apply. Proof of the deep clean, the state of the oven, the scratch that was already there.

[Scheduling guide](/docs/work-orders-and-visit-photos)

### Self-healing schedule

Paid plans. The scheduler runs every fifteen minutes and every step is safe to repeat, so a hiccup never drops a visit.

[Scheduling guide](/docs/scheduling-a-visit)

### Put the rate up from a date you choose

Paid plans. Every cleaning company raises its prices, and until now that meant editing each schedule by hand on the morning it took effect. Set the new price and the date it starts instead: visits from that date carry the new amount, everything before it keeps the old one, and the customer can be emailed the change in advance, the current price, the new price and the date.

- Three, five and ten per cent are one tap away, and what is stored is the resulting amount, never the percentage.
- Change your mind before the date and canceling puts every repriced visit back.

[Scheduling guide](/docs/recurring-schedules)

### A price and a checklist for each weekday

Starter and above. One schedule can charge Monday $180 and Wednesday and Friday $120, and hand the crew a different checklist on some days, such as a deep list on Mondays only. Each visit and its invoice carry its day's price, and the schedule's page sums them up as "Mon $180 · Wed, Fri $120".

- Changing a day's price updates that day's upcoming visits in place. A visit priced by hand, or one already invoiced to the customer or paid, keeps its price.
- A scheduled price increase raises every day together, by the same amount or the same percentage, with each day's new price shown before you save.
- Tasks can come up every other clean, or every Nth visit, with one tap in the checklist editor.

[Recurring schedules](/docs/recurring-schedules)

### A late fee you set yourself

Paid plans. Set a notice window and a fee. It stays off until you turn it on.

- When a visit is canceled inside that window, a person charges the card on file or waives the fee.
- The app never charges on its own.
- The same choices are on the phone.
- The visit invoice is voided, and the fee is its own invoice.

[Scheduling guide](/docs/cancellations)

### You hear when a visit is canceled

Paid plans. Owners and managers get an email and a notice in the app when a visit is canceled. That notice is already on.

- On Pro and Business, the same notice can also be a text when texting is set up.
- Email and the notice in the app are on every paid plan.

[Scheduling guide](/docs/notifications)

### Offer the open time

Paid plans. Customers who asked to hear about an earlier time get a one-tap offer. The first to tap gets the spot, their next visit moves, and the rest of their schedule stays the same. If nobody takes it, owners and managers get a slot-still-open notice. This is included on every paid plan (Starter, Pro and Business), not on Free. It stays off until you turn it on.

[Scheduling guide](/docs/cancellations)

## Getting paid

Your own Stripe account, your money, BlastoClean just does the driving. There is no platform fee: you pay only Stripe's own processing fees. Free gets paid one job at a time, by a card payment link or a payment you record. Paid plans add invoices, the card on file, automatic billing, and card entry and Tap to Pay.

[Invoices and payments guide](/docs/invoices-and-payments)

![Web app: invoices, left table view above and right-side actions below; two actual captures with synthetic records.](/images/docs/demo-invoices-en-20261019.webp)

### Bring your own Stripe account

All plans. Link your company's own Stripe account through Stripe Connect, a couple of clicks, no API keys to paste, on every plan, Free included. Payments settle directly to your own Stripe account: your money never passes through us, and we add no fee of our own on top of Stripe's.

[Invoices and payments guide](/docs/connecting-stripe)

### Paid for one job at a time

All plans. On Free, a job you book from an approved quote takes one payment for its whole balance: a secure Stripe payment link you send by email or copy to share, or cash, a check or another method you record. Payments on the accepted quote before you booked count toward the job. Paid plans add invoices, card on file and links for any visit or amount.

[Invoices and payments guide](/docs/connecting-stripe)

### Card on file

Paid plans. Customers save a card once through Stripe's hosted page. You never see or store the card number, and neither do we.

[Invoices and payments guide](/docs/connecting-stripe)

### Automatic billing on completion

Paid plans. Mark the visit done and the card is charged, or keep billing manual and charge with one click. Per-visit prices are always under your control.

[Invoices and payments guide](/docs/invoices-and-payments)

### Pay-by-link, email or text

On Free, email or copy a secure card payment link for the full balance of a booked job. Starter adds links for any visit or amount. Texting a link to a customer who has opted in starts on Pro.

[Invoices and payments guide](/docs/invoices-and-payments)

### Cash, checks and everything else

All plans. Record payments in the methods your company actually takes, the list is yours to edit, and refund them too. No Stripe account required. On Free, you record them on an accepted quote or a booked job.

[Invoices and payments guide](/docs/invoices-and-payments)

### An optional card fee, disclosed

All plans. Add a percentage fee of your own for paying online by card if you choose, your fee, not ours; BlastoClean never adds one. It's off by default and shown to the customer on the quote and again at checkout, never a surprise on the statement. On Free it applies to the payment link you send for a job.

[Invoices and payments guide](/docs/tips-fees-and-refunds)

### Tips, if you want them

Paid plans. Switch tips on and customers can add one wherever they pay, on their invoice online, at the door with Tap to Pay on iPhone or contactless payments on supported NFC Android devices, on the Stripe Checkout page, or recorded with a cash payment. Off by default, switchable per location, and every tip is tracked on its payment and rolled up in reporting.

[Invoices and payments guide](/docs/tips-fees-and-refunds)

### An invoice for every visit

Paid plans. Each visit gets an invoice in your company's own numbering a week before the visit, or right away when it is booked inside that week. The invoice counts money already taken, a quote deposit included, and its status keeps itself in step with the visit's payments. A visit canceled before its week without payment does not get one; a paid visit keeps its invoice even if canceled. The list opens on visits through this week, with later visits under Upcoming. Browse, search and filter them all in one place, and a customer on consolidated monthly billing gets one invoice covering the month instead.

[Invoices and payments guide](/docs/invoices-and-payments)

### Invoices you write yourself

Paid plans. Not every charge has a visit behind it. Write an invoice by hand from line items, a late fee, the equipment you sold, the cleaning that never made the calendar, and it takes payment every way the app does: card on file, pay-by-link, cash or a check at the door.

- A credit memo records the amount owed back. Use its refund action separately
  to return an eligible card payment or record a manual refund. An unconfirmed
  refund is not money returned.

[Invoices and payments guide](/docs/invoices-and-payments)

### Branded PDF receipts

All plans. Every successful charge produces a PDF receipt with your logo on it, emailed to the customer automatically, and kept, so it can be re-sent any time. On Free, that covers the payments on a quote or a booked job. You can turn customer receipts off in Settings.

[Invoices and payments guide](/docs/invoices-and-payments)

### A portal for every customer

Paid plans. Create a private portal link from the customer's page: upcoming visits with confirm buttons, payment history, receipts, and the card on file, updatable without a call to the office. They can book another visit from it too, at the price of their last one: it lands on your schedule unconfirmed, with nobody assigned, for you to confirm and staff.

[Invoices and payments guide](/docs/invoices-and-payments)

### Refunds and a full ledger

All plans. One-off charges, partial refunds and recorded payments all land in one payment record that drives each visit's payment status. Nothing is edited in place. A correction is a new row. On Free, you refund the payments on a quote or a booked job, whether the job is booked, done or canceled.

[Invoices and payments guide](/docs/tips-fees-and-refunds)

## Talking to customers

Customer email, and on Pro and Business their texts, live in one inbox the whole office can see. Replies come back to the company, not to one person's phone.

[Customer inbox guide](/docs/customer-conversations)

![Web app: Customers, with synthetic records.](/images/docs/demo-customers-en-20261019.webp)

### One inbox for email and text

Paid plans; on Starter it holds email, and texts join it on Pro and Business. Every conversation with every customer in one list, newest first, on the web and in the mobile app. Filter to what is unread, or to the threads nobody has attached to a customer yet.

- Open one and the whole history is in it, what the app sent automatically, what your team typed, and what the customer said back.

[Customer inbox guide](/docs/customer-conversations)

### The reply comes back to the company, not to one person's phone

Paid plans. Every customer-facing email now carries a reply address that belongs to the conversation rather than to whoever pressed send. A customer answering a quote, a reminder or a receipt lands in the thread where the rest of the office can see it, from whatever address they happen to answer from, months later, on a phone that autofilled a different account.

- The colleague who wrote last is still emailed the answer as well, so nothing that used to arrive stops arriving.

[Customer inbox guide](/docs/customer-conversations)

### Reply in the channel they used

Paid plans. Open a thread and the box is already set the way the conversation was going: their channel, and their subject line carried over, so an emailed answer files under the message it answers instead of starting a second conversation in your customer's inbox.

[Customer inbox guide](/docs/customer-conversations)

### Three destinations, one box

Paid plans. Email, a text, or an internal note that never leaves your company. Email leads and is the default, because it costs nothing and needs nothing but an address.

- A text is the deliberate choice, and every reason one might be refused, from no consent on that number to quiet hours to a landline, is on screen before you press send rather than after.

[Customer inbox guide](/docs/customer-conversations)

### The threads that don't belong to anybody yet

Paid plans. A text from a number nobody recognizes is a real person waiting on a real answer, and it has no customer record to hang off. Those threads sit in the inbox like any other and get answered there, then attached to a customer once you work out who it was.

- A wrong number can be dismissed instead, from the Customers page, after a confirmation. It leaves Messages, the counts and the unread badge, and a new text, call or voicemail from that number brings it back.
- A dismissal is refused if a newer message arrived after you looked, so nobody throws away a thread that just started talking.

[Customer inbox guide](/docs/customer-conversations)

### Claim a thread, so two people don't answer it

Paid plans. Assign a conversation to yourself or to a colleague. A shared inbox where two people each answer half of it, neither knowing the other did, is worse than the phone it replaced.

[Customer inbox guide](/docs/customer-conversations)

### What they attached arrives with it

Paid plans. Customers reply with photographs, the leak under the sink, the gate that was padlocked, the room that was missed. Up to ten files of up to 8 MB each land in the thread beside their message, and download from the same page.

[Customer inbox guide](/docs/customer-conversations)

### A draft, when the blank box is the hard part

Paid plans. Ask for a suggested reply and one is written from the thread, and from that customer's actual upcoming visits, so it can say the real date rather than "we'll be in touch shortly". It lands in the box for you to edit or delete.

- Nothing is sent, and every consent and quiet-hours rule still applies to the send you make afterwards.

[Customer inbox guide](/docs/customer-conversations)

### Calls ring your phone, missed calls leave a voicemail

Pro and Business. A client who calls your business number hears your company name while the phone you choose rings, for 15 to 40 seconds. A missed call plays your greeting, read aloud or your own recording, and takes a voicemail.

- The voicemail lands on the client's thread and in their history, unread, with a player and a transcript by AI in the language they spoke (on the web and in native versions with calls support).
- A suggested text reply sits under it, and when they asked to move a visit, a suggested move waits for your approval.
- Answered calls are only recorded if you turn it on, and then callers hear "This call may be recorded" first.

[Calls and voicemail guide](/docs/calls-and-voicemail)

### Filed like everything else

Paid plans. A message somebody types is an ordinary entry in the same record as every reminder and receipt: it shows on the customer's timeline, in the email and text delivery log, and in your export. There is no second place anybody has to remember to look.

[Customer inbox guide](/docs/customer-conversations)

### On every paid plan

Paid plans. The inbox comes with Starter, Pro and Business. Sending a text from it needs Pro or Business, the same as every other text this app sends, on Starter the inbox is email and internal notes.

[Customer inbox guide](/docs/customer-conversations)

## Text messages, done right

SMS is part of the Pro and Business plans, and it behaves the way the rules require.

[Text messages guide](/docs/text-messages-and-consent)

### Two channels, independent

Pro. Reminders go out by email and, for customers who opt in, by text. A customer with no email address still gets texts; one who never opted in still gets email.

[Text messages guide](/docs/text-messages-and-consent)

### Consent, recorded properly

Pro. Opt-in is tracked per phone number, recorded by the office, chosen by the customer online, or given by text reply. A STOP reply opts the number out of your company’s texts, instantly; START opts back in. STOP does not stop email, so earlier-time offers a customer asked for still arrive by email, each with a link to turn them off.

- Message frequency varies.
- Msg & data rates may apply.
- Reply HELP for help.
- Mobile numbers and opt-in data are not shared or sold to third parties for marketing.

[Text messages guide](/docs/text-messages-and-consent)

### Quiet hours, kept

Pro. Nothing is texted between 9pm and 8am in the visit's own time zone. An eligible reminder can queue until quiet hours end. Consent and eligibility
are checked again; queued messages can expire or be abandoned. Delivery is not guaranteed.

[Text messages guide](/docs/text-messages-and-consent)

### No texts to landlines

Pro. The app checks what kind of line a number is before texting it and says so right beside the phone field, so you never pay for a message a landline would silently swallow.

[Text messages guide](/docs/text-messages-and-consent)

### Your own Twilio number

The per-company-only sender model and verified Twilio connection described below are pending release. They do not change the live service or activate texting. Current deployed settings continue to apply; email remains available when texting is unavailable.

Pro. Texting and calls work through your company's own Twilio account. Every company texts from a number of its own; there is no shared number. In Settings, enter your Account SID, Auth Token and a texting-capable number, and BlastoClean checks them with Twilio before saving, then sets the number up in a Messaging Service of its own on your account, with nothing to paste into Twilio, and texts your customers from it. Register your senders for business texting in your own Twilio console, and Twilio bills you directly. Until your account is connected, reminders, quotes and invoices go by email.

[Text messages guide](/docs/text-messages-and-consent)

## Your own mailbox and calendar

Customer email from the address they already reply to, and availability from the calendar you actually keep.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

### Send as yourself, not as no-reply

Paid plans. Connect Gmail, Microsoft 365 or iCloud Mail and quotes, reminders and invoices leave from your own address. The customer's reply lands in the inbox you already watch, not in a mailbox nobody reads.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

### Signing in and sending are separate

Paid plans. Sign in with the Google account work gave you, send from the iCloud address customers have always used, and take availability from an Outlook calendar. Nothing forces one account to be all three.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

### Permission asked when you use it

Paid plans. Logging in asks to know who you are. "Connect Gmail" asks to send email as you, and only then.

- You are never shown a wall of permissions for a feature you have not switched on.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

### Your calendar decides when you are free

Paid plans. Connect Google, Outlook or iCloud calendars and the office stops booking over what is already in your day. A dentist appointment is a dentist appointment.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

### Busy, without saying why

Paid plans. A personal calendar can block bookings without showing anyone what is on it. The office sees "busy 2, 3pm" and never the title, that is the default, and it is per calendar.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

### Assigned work lands in your calendar

Paid plans. Choose which calendar gets your cleaning visits. Move a visit or hand it to somebody else and the calendars follow, including taking it off the calendar of whoever is no longer going.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

### It never blocks the work

Paid plans. If a mailbox stops answering, the message still goes out from the company address. Where a reply comes back to is decided separately from which mailbox sent it, so the fallback does not strand a customer’s answer.

- If a calendar provider is down, the office is warned rather than stopped.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

### One thread per customer

Paid plans. Emails, texts and replies in a single conversation on the customer's page, newest at the top, so nobody sends the same reminder twice because they checked the wrong list. A customer's reply to any of it comes back into that thread, rather than into the mailbox of whoever happened to press send.

[Mailbox and calendar guide](/docs/your-own-mailbox-and-calendar)

## On your phone

A native companion app for iPhone and Android that carries the schedule, builds the quote, and takes the money. The app is not in the App Store or Google Play yet; see the mobile guide.

[Mobile app guide](/docs/the-mobile-app)

### The week at a glance

Paid plans. The week's visits with payment status on every row. Open one for the work checklist, confirm, complete or cancel, and the money panel.

[Mobile app guide](/docs/the-schedule-on-your-phone)

### Quote at the door

All plans. Create a quote on the phone: pick the customer, walk the rooms, tick the tasks, adjust the price, and send it. The price matches the web app, so the numbers can never disagree.

[Mobile app guide](/docs/quoting-from-your-phone)

### Tap to Pay on iPhone

Paid plans. With your Stripe account linked, the phone is the terminal: Tap to Pay on iPhone, and contactless payments on supported NFC Android devices. The amount comes from the visit price, the phone collects the card, and the payment record follows Stripe's answer, even if the phone dies mid-tap.

- The app is not in the App Store or Google Play yet; see the mobile guide.

[Mobile app guide](/docs/taking-payment-in-person)

### Hosted checkout, right on the phone

Paid plans. No tap? Open the hosted Stripe Checkout card page on the phone, the same page a payment link opens, and the customer enters their card there.

- The card number goes straight to Stripe; it never touches the app.

[Mobile app guide](/docs/taking-payment-in-person)

### Cash and checks, no Stripe needed

All plans. Record cash, checks, bank transfers or any method you've defined, and refund them, without a payment account connected. On Free, record them on an accepted quote or a booked job.

[Mobile app guide](/docs/taking-payment-in-person)

### Charge the card, send the link

With your Stripe account linked, Free lets you email a card payment link for a booked job. Charging a saved card and sending links for any visit or amount start on Starter.

[Mobile app guide](/docs/the-mobile-app)

### The owner's numbers, riding along

Paid plans. Money collected, the quote pipeline, the week ahead and the needs-attention list, the dashboard in your pocket.

[Mobile app guide](/docs/the-mobile-app)

### Locked to you

All plans. Face ID, Touch ID or Android biometrics guard the app, with your device passcode as the fallback.

[Mobile app guide](/docs/the-mobile-app)

### Before and after, from the phone in your hand

Paid plans. The camera is on the phone, so the photos start there: take one on the visit, or pick several at once from the library, and they attach to the visit the office already sees. If the signal drops, a limited number remain saved on the phone after you leave the screen or reopen the app.

- BlastoClean tries again automatically when the connection returns, without adding the same photo twice.
- If a photo cannot be accepted, it stays listed so you can retry or remove it; its saved copy is deleted only after the upload is confirmed or you choose Remove.

[Mobile app guide](/docs/the-mobile-app)

### Answer the leads from the van

Paid plans. New quote requests badge the app with the number still waiting. Read one on the phone and turn it into a customer, a property and a draft quote in a single tap, then carry straight on into the quote editor.

- The person most likely to see a new lead first is the one already out working, and that half of the job had been the half you could only do at a desk.

[Mobile app guide](/docs/leads-and-customers-on-your-phone)

### The inbox and the bell, in your pocket

Paid plans. The same conversations and the same notices the office sees, on the phone already in the van: read what came in, answer it in the channel it arrived on, and keep the unread count in front of you as you work. A cleaner between jobs can finally ask "has anybody written to us?

- " without already knowing whose name to look up.

[Mobile app guide](/docs/the-mobile-app)

## Keep working with no cell signal or Wi-Fi

Offline mode covers both: no cell connection and no Wi-Fi.

[Working offline](/docs/the-mobile-app)

### Recent work stays within reach

Paid plans. After loading on that device, recent customers and quotes can remain readable. Do not assume every native invoice screen is cached offline. The near-term schedule and recently loaded worksheets stay available too, including the rooms and tasks for a visit.

[Working offline](/docs/the-mobile-app)

### Keep building a quote on the web

All plans. If the connection drops while you are editing a quote in the web app, keep adding rooms, choosing tasks and adjusting the draft. Your work is saved on the device and BlastoClean sends it when the connection returns.

[Working offline](/docs/the-mobile-app)

### Inspections keep their place on the web

All plans. Ratings, inspection lines and notes stay saved as a draft. On reconnect, BlastoClean checks for newer changes before syncing, so one person's offline work does not quietly replace another's.

- Inspections are currently in the web app; the mobile app does not yet include inspection screens.

[Working offline](/docs/quality-inspections)

### Magic Quote is part of the same protection

Pro. Magic Quote lets you keep capturing with no cell signal and no Wi-Fi while the walkthrough stays open. Pending photos, voice notes and typed notes also stay saved if you close and reopen the mobile app, then resume without creating duplicates when you reconnect.

- A short video that has not finished uploading does not yet have that restart protection, so leave the walkthrough open until its upload finishes.

[Working offline](/docs/magic-quote)

### Scheduling stays useful offline

Paid plans. The schedule you loaded recently remains readable, and visit worksheets keep their room-and-task checklist. Permitted assignment and move changes in the native Day map can save on the device and wait in order for reconnection. Server confirmation requires a connection and checks against the current schedule; conflicts need review. Creating or canceling a visit requires internet.

[Working offline](/docs/the-mobile-app)

### Some final actions wait for a connection

Paid plans. Payments, sending quotes or invoices, server confirmation of schedule changes, uploading inspection photos, completing visits or inspections, and sharing inspection results require internet.

[Working offline](/docs/the-mobile-app)

## Running the company

Free includes a basic ledger of your own company’s payments. Every paid plan, including Starter, adds Money received, the basic cancellation and fee ledger, Add-on revenue, the dashboard, Money owed, and My week. Pro adds Quality and response, Cancellations and slot recovery, and the analytics reports. Business adds cross-location Quality and response, Who stays, How full you are, and Profit by place. CSV and Excel exports are included at each report’s tier.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

![Web app: Home dashboard, with synthetic records.](/images/docs/demo-dashboard-en-20261019.webp)

### The owner dashboard

Paid plans. The quote pipeline by status, accepted work awaiting completion, money collected in the last 30 days, and the week ahead's visits and hours, every number opens the exact list it was counted from.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Home for estimators and read-only viewers

All plans. In the web app and the phone app, estimators and read-only users land on a Home of their own: quotes sent this month, the 90-day win rate, quotes expiring in 7 days, accepted quotes ready to book, quotes waiting on the customer by age with the five oldest, and what is waiting for an answer. Switch between Mine and Everyone at the location; the expiring, ready-to-book and waiting counts and the to-answer lines open the matching list. No money collected, payouts or profit.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### A needs-attention list

Paid plans. Quotes expiring within the week, change requests waiting, failed payments and new quote requests, gathered in one place so nothing waits quietly.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Estimated vs actual

Paid plans. Record how long a visit really took when it's completed, and the dashboard shows how your estimates compare with reality, the number that tunes every future quote.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### An activity trail

All plans. A company-wide record of who did what, when, to which record, pageable and filterable, there when you need to reconstruct a week.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Money per hour, customer by customer

Pro. Billed and collected revenue against your target hourly rate, for every customer, the ones running below it are flagged automatically, not left for you to notice.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Customer follow-ups, ready to act on

All plans. A working list spots customers who have gone a while without a clean or who have canceled repeatedly. See the reason, then call, email or text when their preferences allow it; snooze, schedule, or mark do not contact.

- Nothing goes to a customer automatically.

[Dashboard and reports guide](/docs/customer-follow-ups)

### Quotes to jobs, week by week

Pro. Sent, accepted and declined counts by week, so you can see whether more quotes are turning into yeses, or just piling up in the inbox.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Money owed, and how long

Paid plans. Every open invoice by customer, with its payment status and how long it's been waiting, so nothing outstanding hides at the bottom of an inbox.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Crew

Pro. Completed visits, hours, revenue and no-shows per team member, the numbers a schedule alone never shows you.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### How full you are, one to twelve weeks out

Business. Booked minutes against available minutes, per person, for whatever window you pick, so you know you're overbooked before a customer finds out for you.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Who stays

Business. Who has not booked again in 90 days, and what they used to spend. It is one of the Business reports.

- Nothing is emailed to the customer from this report.
- You decide who to call.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Profit by place

Business, on the web app for now. One row per building per month, because a ten-site account can be comfortably profitable while two of its buildings bleed. Profit by place stays on the Business plan.

When Team pay is set up, each person is costed at the pay rate in effect on the visit date. W-2 workers include the extra payroll cost on those wages. 1099 workers do not. Your own time counts only if Count my time as a cost is on. Unpaid time is left out. The money is the visit price with tax taken out. The cost is wages and payroll only. It does not include insurance or a share of the van. There is no overhead figure in it.

If Team pay is not set up, the report uses one hourly crew cost. The Free plan has no Team pay. On Free, that hourly number is the crew cost. A crew member whose pay is missing on a visit uses the same hourly number. Next to it, the app can suggest Use $X from Team pay. That figure is the average pay of hourly and salaried people, weighted by the hours they work, with the W-2 payroll extra added. It is wages and payroll only.

- If that hourly number is blank and no pay rate is set, the report shows hours and does not state a margin. A visit nobody timed is not costed from the time on the schedule.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### A free profit check, before reports

No account. The [free cleaning business profit calculator](/free-cleaning-business-profit-calculator) turns a price, crew pay, supplies, and drive time into profit per job and per month. No account.

- The numbers it starts with are examples you should change.
- Profit by place in the app needs completed visits with time recorded.

[Open the calculator](/free-cleaning-business-profit-calculator)

### Everyone gets a "my week"

Paid plans. Office roles with schedule access, including Estimator and Read-only, can open their own visits and pay in My week. Crew uses My jobs for assigned visits and cannot open My week.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### One click to a spreadsheet, or a schedule

Every plan. Each included report exports all matching rows to CSV or Excel, including the basic payment ledger on Free. On Pro and Business, API keys and OAuth apps let integrations such as Zapier or Make read supported report data within their authorized scope.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### A bell that counts what needs a person

Paid plans. A card that declined overnight, a customer who texted at 7am, a lead off your website form, a quote accepted from a phone in a car park, a document about to expire. Every one of those already sent an email, and email is where news goes to be buried, so they are also a feed in the header with an unread count, and clicking one opens the exact thing it is about.

- Who hears what follows the roles you set: a failed payment goes to the people who can move money, a new lead to the people who write the quotes.
- A canceled visit, and an open time nobody took, are in that feed for owners and managers.
- Opening the panel doesn't clear it; marking read is something you do.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

### Remember to close out the visit

Paid plans. A visit that ended hours ago and still says scheduled is unfinished paperwork: completing it is what asks for the review (its invoice already exists by then), and a calendar full of stale open visits quietly makes every report wrong. The person it was assigned to and the office are each nudged about it once, once per visit, not once every quarter of an hour until somebody gives in.

[Dashboard and reports guide](/docs/the-dashboard-and-reports)

## AI assists

On every paid plan. Starter, Pro, and Business differ in how many AI credits you get each month.

[AI assists guide](/docs/ai-assists)

### Draft quotes from your website leads

Paid plans. Your public request-a-quote page and widget now also accept up to 5 photos. AI reads the visitor's message and photos and pre-fills a draft quote with rooms and tasks from your company's own room and task library, you review and price every line before anything is sent.

[AI assists guide](/docs/ai-assists)

### Send photos, get a more accurate quote

Paid plans. Visitors can attach up to 5 photos when they request a quote. AI looks at them alongside the message to sharpen the draft's rooms and tasks, it informs the estimate, it doesn't set the final price.

[AI assists guide](/docs/ai-assists)

### An inbox that sorts itself

Paid plans. When a customer writes back, "can we move Friday? ", AI files and labels it, whether it arrived as a text or as an email: confirming, reschedule, cancel, a question or something else, each with a one-line summary.

- Your office sees what is waiting without opening every thread.
- No auto-replies, no automatic rescheduling, a person still acts on every message.

[AI assists guide](/docs/ai-assists)

### Estimates that learn

Paid plans. The app already compares estimated and actual visit time. Now it suggests bounded adjustments to your task times from that comparison, you accept or dismiss each one.

- Quotes you've already sent never change; only the ones you send next get sharper.

[AI assists guide](/docs/ai-assists)

### A Monday-morning owner digest

Paid plans. A weekly email with the pipeline, money collected, the week ahead and what needs attention, the same numbers as your dashboard's own reports, with a short AI summary on top.

[AI assists guide](/docs/ai-assists)

### Copy that saves you the blank page

Paid plans. Enabled quote follow-up automation can send a personalized email
body without per-message approval; the system supplies its subject and link.
Other assists prepare review replies or review-request copy, and the work order
can display a generated crew briefing. These controls have different review and
sending behavior; see the guide before enabling them.

[AI assists guide](/docs/ai-assists)

### Proposes, never decides

Paid plans. Prices use your configured library. Draft quotes, replies and visit
actions need review. Enabled quote follow-up automation can send a personalized
body without per-message approval; its subject and link stay system-controlled.

[AI assists guide](/docs/ai-assists)

## Finding what you already have

Everything the company has written down, one keystroke away.

[Search guide](/docs/search)

### One box for customers, properties, quotes and visits

All plans. Type the first letters of a name, a street, a unit number or a quote number and the matches come back grouped by what they are, each row carrying enough to tell two Johnsons apart, the email on a customer, the total on a quote, the date on a visit. It only ever shows what your role and your location cover, so it is not a way around a permission.

[Search guide](/docs/search)

### ⌘K, and then the keyboard

All plans. Press ⌘K, Ctrl+K on Windows, from any page in the app. Arrow keys move the highlight, Enter opens what it is on, Escape puts you back exactly where you were.

- The pages you are allowed to open are in the same list, so it navigates as much as it searches, and the whole thing works without ever reaching for the mouse.

[Search guide](/docs/search)

## Team and security

Grown-up security without the enterprise price tag.

[Team and security guide](/docs/team-roles-and-permissions)

### Roles that mean something

All plans. Owners manage the company, managers run the work, estimators and read-only users open on a quotes-only Home. Changing a role or deactivating someone revokes their access immediately.

[Team and security guide](/docs/team-roles-and-permissions)

### Shift swaps, approved by you

Pro and Business. A cleaner (Crew role, from My jobs) asks a coworker at the same location, or anyone available, to take one of their visits or trade it for one of theirs. The coworker accepts, then, by default, you approve from a card showing the crews before and after, a conflict and time-off check, and a warning when a recurring client loses their usual crew. A give-away changes that one visit; a trade changes both visits together, or neither. The lead position is kept: if the person leaving led the visit, the coworker coming in leads it. Approve in the app or from a single-use email link, or let swaps within the same team approve themselves. Swaps close a set number of hours before the visit. Shift swaps can be asked, answered and approved on the web and in native versions with these controls; see [Native version availability](/docs/the-mobile-app).

[Shift swaps guide](/docs/staff-shift-swaps)

### Multiple locations

Business. On the Business plan, run each branch or franchise territory as its own location: separate customers, quotes and schedules, its own quote-request form, its own rates and quote numbering, and, when a branch banks separately, its own payment account. Settings inherit from the company until you override them.

[Team and security guide](/docs/team-roles-and-permissions)

### Sign in with Google, Facebook or Microsoft

All plans. Social sign-in and passwords are credentials on the same account, mix them freely. Losing access to one never locks you out, and disconnecting a compromised one signs out every other session.

[Team and security guide](/docs/team-roles-and-permissions)

### Sessions done right

All plans. Your web sign-in stays in a secure cookie that browser scripts cannot read. To keep recent work available offline, the browser also stores a small working set on the device, separated by signed-in user, company and location.

- That offline information cannot sign anyone in.
- On a shared computer, sign out when you finish and clear BlastoClean's stored site data if you also want to remove the device copy.

[Team and security guide](/docs/team-roles-and-permissions)

### Hardened sign-in

All plans. Passwords are stored so they cannot be read back, sign-in slows down after too many tries, and a bot check only appears after repeated failures. Normal sign-ins stay one click.

[Team and security guide](/docs/team-roles-and-permissions)

### Company isolation

All plans. Your company's records stay separate. Another company's data is not there to open.

[Team and security guide](/docs/team-roles-and-permissions)

### Two-factor authentication, on every way in

All plans. Turn on a second step and it is asked for however somebody signs in, with a password, or with any connected account, Google, Apple, Microsoft, Facebook, LinkedIn, X, Instagram and TikTok alike, because "they came in through Google" is not evidence that a second factor happened. Use an authenticator app, a security key or passkey, or a text message; keep recovery codes for the day the phone is lost; and decide whether a browser is trusted for a while.

- The actions that move money or change access ask again even on a trusted one.

[Team and security guide](/docs/two-factor-authentication)

## Your data

It's your business. You can always take it with you.

[Export guide](/docs/exporting-your-data)

### One-click export

All plans. Download a portable JSON export of your whole company: settings, team, customers, properties, templates, saved add-ons, quotes and audit records.

[Export guide](/docs/exporting-your-data)

### Import to get started

All plans. Restore settings, templates, customers and properties into a new company from an export, handy for starting fresh or spinning up a second brand.

[Export guide](/docs/exporting-your-data)

### A paper trail for email and text

All plans. Every email and every text the system sends, confirmations, reminders, pay-by-links, is logged with its outcome, so you can always answer "did that send? "

[Export guide](/docs/exporting-your-data)

## Day map

Choose Map in Schedule when your plan includes it. Schedule opens List or your saved List, Week or Month view. Links to a visit still take priority.

[Your day, on a map.](/features/live-map)

### Free

All plans. Read-only customer map. A fictional sample day is available only in the mobile app and does not change your schedule.

[Your day, on a map.](/features/live-map)

### Starter and above

Paid plans. Day map, visit reassignment, manual fill and dismiss, and last clock punch positions. Refreshes every 15 seconds while online.

[Your day, on a map.](/features/live-map)

## Job chat

An internal staff chat for each clean, included with Starter, Pro and Business. An owner or manager can include the customer for an individual visit.

[About job chat](/features/job-chat)

### Text and photos

Paid plans. Email links, without an account, for customers an owner or manager has included. SMS and tips are not included.

[About job chat](/features/job-chat)

### Sample without sending

All plans. Free offers a local sample. No messages are sent.

[About job chat](/features/job-chat)

## Platform and release boundaries

Features in this index share company records, but their screens differ between
the web and native apps. The phone app includes Account, employee access
editing, complete customer quote history and invoice list, detail and email.
The app is not in the App Store or Google Play yet. Use the
[mobile guide](/docs/the-mobile-app) to check those boundaries.

Invoice creation, editing, credit memos, voiding, monthly management and bulk
email remain web workflows. Quote and invoice PDF generation and inspection
scoring also remain web workflows. Native visits can show a read-only profit
card, but full Job profit, contractor, Profit by place and Add-on revenue
reports remain on the web. Staff photo drafts last while the page stays open; offline visit-photo
work has a separate recovery queue.
Shift swaps can be asked, answered and approved on the web and in native versions with these controls; see [Native version availability](/docs/the-mobile-app).

---

---
title: "The mobile app · BlastoClean docs"
description: "The native iPhone and Android companion app: what it carries, how it signs in to the same company, biometric app lock, and the tablet layout."
url: "https://www.blastoclean.com/docs/the-mobile-app"
---

# The mobile app

On your phone · Mobile app · 4 min read · Updated October 19, 2026

**A native iPhone and Android app that signs in to the same company as the web app and carries the schedule, quotes, customers, the leads inbox, the dashboard and in-person payments.**

The phone app carries several parts of the job, because the phone is the thing with the camera, the
card reader and the person standing in the customer's hallway.

![Native UI preview: Schedule and visit filters with synthetic records.](/images/docs/mobile-schedule-en-20261019.webp)

Contact support for current download options. These guides describe
implemented app workflows; the pictures use sample data. Source changes and
preview screenshots do not prove that an installed build has those controls.

## What it carries

Office accounts on paid plans show five tabs along the bottom. Permissions
still decide which records and actions each person can use:

- **Schedule**: the week's visits and everything you can do to one. See
  [The schedule on your phone](/docs/the-schedule-on-your-phone).
- **Quotes**: the full lifecycle, plus the leads inbox and Magic Quote. See
  [Quoting from your phone](/docs/quoting-from-your-phone).
- **Customers**: search, and a customer's payment history and quotes.
- **Home**: the owner's numbers, riding along. Estimators and read-only users
  get a quotes-only Home. See
  [The dashboard and reports](/docs/the-dashboard-and-reports).
- **More**: **Settings**, with the app lock, payment methods, calendar feeds and
  the rest.

Office accounts open on **Home**. Free office accounts show **Quotes**,
**Customers**, **Home** and **More**; they have no Schedule tab. On Free, owners
and managers see New quote and Customers buttons, the next booked jobs and what
is owed on accepted quotes. Estimators and read-only users keep their quotes-only
Home on every plan. Crew accounts open **My jobs**, with a separate menu for
their permitted tools.

## Signing in

![Native UI preview: Sign in with synthetic records.](/images/docs/mobile-login-en-20261019.webp)

The app signs in to the same company with the same credentials as the web app,
so there is no second account to keep, and no second set of rules about who
may do what.

You can also **register a whole new company** from the phone. A bot check runs
in a sheet for that one moment, and the device's time zone is sent along, so a
new company's quotes are dated correctly from day one.

Sign-in stays in the phone's secure storage rather than in an ordinary file.

## Biometric app lock

Turn it on in Settings and the app is guarded by Face ID, Touch ID or Android
biometrics, with the device passcode as the fallback for the times a fingerprint
will not read. It matters more here than on a laptop: a phone left on a counter
in somebody else's building is a different threat from a computer in an office.

![Native UI preview: Settings, opened from the More tab, with synthetic records.](/images/docs/mobile-settings-en-20261019.webp)

## Phones and tablets

Layouts for phones and tablets in every orientation, on both iPhone and
Android. On a tablet the app is not the phone layout stretched. It is a
two-pane design that shows a list and what you selected from it at the same
time.

![Native UI preview: Schedule and visit filters with synthetic records.](/images/docs/mobile-schedule-tablet-en-20261019.webp)

## The office and the van see the same thing

Prices and permissions match the web app, and every record is the same record.
There is no phone version of a quote to reconcile later.

## Messages and the bell

The inbox and the notification bell are on the phone too: read what came in,
answer it in the channel it arrived on, and keep the unread count in front of
you as you work. See [The customer inbox](/docs/customer-conversations) and
[Notifications and the bell](/docs/notifications).

## What the app also covers

The app also covers your own **Account**, **Employees > Edit access**, a
customer's full quote history, and the invoice list, invoice details and
invoice emails. On Pro and Business it also handles
[shift swaps](/docs/staff-shift-swaps): Crew ask from **My jobs**, Crew and
Estimators answer, owners and managers approve, and owners choose who approves.
See [Your account](/docs/creating-your-account),
[Employee access](/docs/team-roles-and-permissions),
[Customers](/docs/leads-and-customers-on-your-phone) and
[Invoices](/docs/invoices-and-payments).

## What to do on the web

The app and the web share the same records and the same permissions, but some
tools are only on the web. Use the web to:

- Create and edit invoices, manage monthly invoices and email invoices in bulk.
- Download quote and invoice PDFs.
- Add [extra work](/docs/change-orders) that is not on a visit, onto a
  commercial client's monthly invoice. Extra work on a visit can be added in
  the app too, from the visit's **Extra work** card.
- Score quality inspections.
- Import a customer spreadsheet or export your company's data.
- Manage your BlastoClean plan and billing.
- Create and manage API keys.
- Upload or remove a recorded voicemail greeting. Native versions with calls
  support can change other call settings, play recordings and read transcripts.
  See [Calls and voicemail](/docs/calls-and-voicemail).
- Open the full Job profit, contractor and Profit by place reports. The app
  shows a read-only profit card on a visit, not the full reports.
- Change the timing and the review link for [job chat](/docs/job-chats). In
  the app, owners and managers can turn new chats and customer emails on or
  off, and include the customer in a job's chat or review that access.
- Print work orders.
- Open the activity, email and text message logs.
- Add, change and archive locations. The app can switch between your
  locations.

Some account and security buttons open your browser, which may ask you to sign
in again.

## Working without a connection

Recently loaded work may remain readable on that device, and supported pending
photos or checklist work can wait for reconnection. A saved view can be out of
date. Permitted assignment and move changes in the native **Day map** can save
on the device and wait in order for reconnection. They are confirmed only after
the server checks the current schedule; a conflict needs review.

Sending quotes or invoices and taking payments require internet. Do not treat
a queued schedule change, pending upload or uncertain payment as complete.
Sign-out clears pending Job chat replies. See
[Visit photos](/docs/work-orders-and-visit-photos),
[Digital checklists](/docs/digital-checklists) and
[Magic Quote capture](/docs/magic-quote) for their different recovery limits.

---

---
title: "The schedule on your phone · BlastoClean docs"
description: "The week’s visits with payment status on every row, the whole visit toolkit (confirm, reschedule, complete, no-show, cancel, reassign) and before-and-after photos from the camera."
url: "https://www.blastoclean.com/docs/the-schedule-on-your-phone"
---

# The schedule on your phone

On your phone · Mobile app · 3 min read · Updated October 16, 2026

**The phone carries the whole scheduling surface: the week filtered to one person, every visit action including reschedule against the crew’s free/busy week, the work checklist, and photos from the camera.**

![Native UI preview: Schedule and visit filters with synthetic records.](/images/docs/mobile-schedule-en-20261019.webp)

## The week

Each row carries the time, the customer, the address, the length and the money,
plus two badges: the visit's status and whether it has been billed. You can
filter to one person's week, or to work nobody has been assigned yet.

If a very long week had to be shortened, the app says so rather than quietly
showing you part of it.

## When no visits are shown

An empty schedule describes the selected date range. Clear an active filter to
see other visits, or add a booking if you have permission. **Retry** on a load
error keeps the chosen calendar view, dates and crew filter.

![Native UI preview: Empty schedule with synthetic records.](/images/docs/mobile-schedule-empty-en-20261019.webp)

## A visit

![Native UI preview: Visit details and time clock with synthetic records.](/images/docs/mobile-visit-detail-en-20261019.webp)

Opening a visit gives you three panels (the visit itself, the money, and the
work checklist) and every action the web app has:

- **Confirm**
- **Reschedule**, against the crew's free/busy week
- **Complete**, recording the actual minutes
- **No-show**
- **Cancel**. A late fee works the same way as on the web: charge the card on file, waive the fee, or leave it waiting. The app does not charge on its own. See [Handling cancellations](/docs/cancellations).
- **Reassign the crew**: order matters, the first is the lead
- **Copy the customer's confirmation link**

A visit where the customer asked for a different time shows their message right
there, so you are answering a person rather than a status.

## Getting there

Tap the address on a visit and the phone opens it in its own map app (Apple
Maps on an iPhone, Google Maps on Android) with the directions already
running. Nothing to select, copy or paste, and nothing to set up: the app each
phone already has is the one it uses.

The same is true of the address on a quote, on a customer, and on a lead in the
inbox. Where a row has no address on file it stays plain text rather than
offering a tap that would open the map on nothing.

## The work checklist

The rooms, the exact tasks the customer accepted, and the property's access
notes: the lockbox code, the parking, the dog. See
[Work checklists and visit photos](/docs/work-orders-and-visit-photos).

## Photos

The camera is on the phone, so before-and-after photos start here: take one, or
pick several at once from the library, and they attach to the visit the office
already sees. If the signal drops, a limited number remain saved after you leave
the screen or reopen the app, and retry automatically when a connection
returns. A retry does not attach the same photo twice. The saved copy is removed
after the upload is confirmed; if the visit cannot accept it, the app keeps it
listed so you can Retry or Remove it.

## Recurring work

Series can be booked, paused, resumed, ended and edited from the phone, with
slot suggestions and an availability grid drawn in the **location's** time zone
rather than the device's.

![Native UI preview: New recurring schedule form with synthetic records.](/images/docs/mobile-new-series-en-20261019.webp)

See [Recurring schedules](/docs/recurring-schedules).

## Getting paid at the door

The money panel on the visit takes the payment: Tap to Pay on iPhone, contactless payments on supported NFC Android devices, the hosted card
page, or cash and checks with nothing connected at all. See
[Taking payment in person](/docs/taking-payment-in-person).

## Calendar feeds

Feeds for the whole company or for one person can be minted, listed and revoked
from Settings on the phone, exactly as on the web, and the URL shows once. See
[Calendars and feeds](/docs/calendars-and-feeds).

---

---
title: "Leads and customers on your phone · BlastoClean docs"
description: "The leads inbox badged with what is still waiting, turning a request into a customer and a draft quote in one tap, and customer detail with payment history."
url: "https://www.blastoclean.com/docs/leads-and-customers-on-your-phone"
---

# Leads and customers on your phone

On your phone · Mobile app · 2 min read · Updated October 16, 2026

**The quotes screen badges the number of website leads still waiting for an answer, and one button turns a lead into a customer, a property and a draft quote, then opens the editor on it.**

The person most likely to see a new lead first is the one already out working.
That half of the job used to be the half you could only do at a desk.

**Requests** combines form submissions and photo quotes; filters show waiting and handled requests.

## The leads inbox

![Native UI preview: Quote requests with synthetic records.](/images/docs/mobile-requests-en-20261019.webp)

New quote requests from your
[website form or widget](/docs/quote-requests-from-your-website) badge the
quotes screen with **the number still waiting to hear back**, not the total,
the ones nobody has answered.

Open one and you get what the visitor sent: their name, how to reach them, their
message and any photos. Then one button turns it into:

1. a customer,
2. a property, and
3. a draft quote,

and drops you straight into the quote editor on it. From the van, between jobs,
before the competitor who checks their email at six o'clock.

## Customers

![Native UI preview: Customers with synthetic records.](/images/docs/mobile-customers-en-20261019.webp)

Search customers, and open one for their properties, their quotes, their
schedules and next visits, and their payment history. It is the same record the
office is looking at, so a question on the doorstep, *"didn't we do the garage
last time?"* has an answer without a phone call.

## Add a customer

Start with the customer's name, contact details and cleaning address. **More details** holds optional billing choices, message consent and notes. The web form also keeps the existing preferences. Closing More details keeps what you entered; saving opens any field that needs correcting.

![Native UI preview: Customer form with synthetic records.](/images/docs/mobile-customer-form-en-20261019.webp)

The web app starts with the same essentials:

![Web app: Customer form, with synthetic records.](/images/docs/customer-form-en-20261019.webp)

The address is also used for billing. Leave the cleaning-address option selected to create a property from it, or clear it for a billing-only address. Changing the billing address later does not move an existing property.

An empty Customers list offers **Add customer** when you have permission. If a search has no matches, **Clear search** brings the list back. A load error offers **Retry** and keeps your search and any open draft.

## Search

The same one box that covers customers, properties, quotes and visits on the
web is in the app. See
[Finding anything: search and keyboard shortcuts](/docs/search).

![Native UI preview: Search results with synthetic records.](/images/docs/mobile-search-en-20261019.webp)

## The numbers

![Native UI preview: Home dashboard with synthetic records.](/images/docs/mobile-dashboard-en-20261019.webp)

The owner's dashboard rides along too: money collected, the pipeline, the week
ahead and the needs-attention list. See
[The dashboard and reports](/docs/the-dashboard-and-reports).

## Older quotes and customer history

Open a customer’s **Quotes** section and use its
page arrows to read the complete history, 20 quotes at a time. Open a quote and
return to keep your page. A different customer starts on page one. A failed
page load offers Retry; it does not mean there are no older quotes.

The customer’s conversation and payment history are separate sections. Visit
and quote links open only what your current role and location allow. Customer
CSV import, company export and portal-link management remain web workflows.
See [Exporting your data](/docs/exporting-your-data).

---

---
title: "Watch it work · BlastoClean"
description: "14 short walkthroughs of the features people ask about most — quoting, Magic Quote, scheduling, website leads, work orders and getting paid — recorded from the real app."
url: "https://www.blastoclean.com/videos"
---

# BlastoClean feature videos

Short walkthroughs of the features people ask about most, recorded from the real app. Each is captioned; each has an article covering the same ground in writing.

## Bidding by the square foot

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/commercial-bidding-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/commercial-bidding-20261011.vtt)_

A commercial bid built the way the trade builds one — measured areas, production rates, restrooms priced per fixture — and a monthly figure at the end.

Covered in writing: [Bidding by the square foot](https://www.blastoclean.com/docs/commercial-cleaning-mode).

## Building a quote

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/building-a-quote-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/building-a-quote-20261011.vtt)_

Rooms, tasks, and a running total, at reading speed.

Covered in writing: [Building a quote](https://www.blastoclean.com/docs/building-a-quote).

## Magic Quote

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/magic-quote-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/magic-quote-20261011.vtt)_

Review a completed walkthrough’s evidence, Room Check, readiness summary and decisions before generating a quote.

Covered in writing: [Magic Quote](https://www.blastoclean.com/docs/magic-quote).

## Scheduling and recurring work

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/scheduling-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/scheduling-20261011.vtt)_

Plan one-off and recurring visits, check calendar filters, and preview the recurring booking horizon.

Covered in writing: [Scheduling and recurring work](https://www.blastoclean.com/docs/recurring-schedules).

## Requests and quotes

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/quote-requests-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/quote-requests-20261011.vtt)_

One inbox for requests and photo quotes, with clear next actions.

Covered in writing: [Requests and quotes](https://www.blastoclean.com/docs/quote-requests-from-your-website).

## Sending a quote

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/sending-a-quote-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/sending-a-quote-20261011.vtt)_

The private link, the PDF, and the timeline that tells you it was opened — without asking the customer.

Covered in writing: [Sending a quote](https://www.blastoclean.com/docs/sending-a-quote).

## Reminders, confirmations and the customer’s own page

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/reminders-and-confirmations-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/reminders-and-confirmations-20261011.vtt)_

Mint a customer a private page of their own, and see the visit page where they confirm or ask to move it.

Covered in writing: [Reminders, confirmations and the customer’s own page](https://www.blastoclean.com/docs/reminders-and-confirmations).

## Your room and task library

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/room-and-task-library-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/room-and-task-library-20261011.vtt)_

The list of what you clean and how long each thing takes — the thing every quote is assembled from.

Covered in writing: [Your room and task library](https://www.blastoclean.com/docs/your-room-and-task-library).

## Reports

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/dashboard-and-reports-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/dashboard-and-reports-20261011.vtt)_

Money received first, then reports grouped by Money, Customers, Team and Quality.

Covered in writing: [Reports](https://www.blastoclean.com/docs/the-dashboard-and-reports).

## Finding anything

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/finding-anything-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/finding-anything-20261011.vtt)_

One keyboard shortcut that searches customers, properties, quotes and visits at once.

Covered in writing: [Finding anything](https://www.blastoclean.com/docs/search).

## Work orders

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/work-orders-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/work-orders-20261011.vtt)_

The printable sheet the crew takes to the door — the exact tasks sold, and how to get in.

Covered in writing: [Work orders](https://www.blastoclean.com/docs/work-orders-and-visit-photos).

## Invoices and getting paid

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/getting-paid-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/getting-paid-20261011.vtt)_

Visit and manual invoices, invoice details, payment methods and tips.

Covered in writing: [Invoices and getting paid](https://www.blastoclean.com/docs/invoices-and-payments).

## Company settings

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/setting-up-your-company-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/setting-up-your-company-20261011.vtt)_

Essentials first, optional instant booking, and advanced settings when needed.

Covered in writing: [Company settings](https://www.blastoclean.com/docs/setting-up-your-company).

## The AI assists

_1 min · [watch](https://www.blastoclean.com/media/tours/2026-10-11/ai-assists-20261011.mp4) · [captions](https://www.blastoclean.com/media/tours/2026-10-11/ai-assists-20261011.vtt)_

Where AI is allowed to help — drafting, sorting and suggesting — and where it is deliberately not.

Covered in writing: [The AI assists](https://www.blastoclean.com/docs/ai-assists).

## Full product demos

Narrated tours of the whole app rather than one feature. They have no article of their own; the captions are the full narration in text.

### BlastoClean in three minutes

_3 min · [watch](https://www.blastoclean.com/videos/overview) · [captions](https://videos.blastoclean.com/videos/blastoclean-overview-20261017b.vtt)_

A quick tour of BlastoClean for residential and commercial cleaning companies: crews, recurring schedules, pricing, checklists, messages, change orders and invoices.

### The full walkthrough

_9 min · [watch](https://www.blastoclean.com/videos/full-walkthrough) · [captions](https://videos.blastoclean.com/videos/blastoclean-walkthrough-20261017b.vtt)_

Nine minutes on running a residential or commercial cleaning company in BlastoClean, from the first walkthrough and quote to the schedule, the crew, client messages and the monthly invoice.

---

---
title: "BlastoClean in three minutes · BlastoClean"
description: "A quick tour of BlastoClean for residential and commercial cleaning companies: crews, recurring schedules, pricing, checklists, messages, change orders and invoices."
url: "https://www.blastoclean.com/videos/overview"
---

# BlastoClean in three minutes

_3 min · [watch](https://videos.blastoclean.com/videos/blastoclean-overview-20261017b.mp4) · [captions](https://videos.blastoclean.com/videos/blastoclean-overview-20261017b.vtt)_

A quick tour of BlastoClean for residential and commercial cleaning companies: crews, recurring schedules, pricing, checklists, messages, change orders and invoices.

Watch next: [The full walkthrough](https://www.blastoclean.com/videos/full-walkthrough)

[Start free](https://www.blastoclean.com/start)

---

---
title: "The full walkthrough · BlastoClean"
description: "Nine minutes on running a residential or commercial cleaning company in BlastoClean, from the first walkthrough and quote to the schedule, the crew, client messages and the monthly invoice."
url: "https://www.blastoclean.com/videos/full-walkthrough"
---

# The full walkthrough

_9 min · [watch](https://videos.blastoclean.com/videos/blastoclean-walkthrough-20261017b.mp4) · [captions](https://videos.blastoclean.com/videos/blastoclean-walkthrough-20261017b.vtt)_

Nine minutes on running a residential or commercial cleaning company in BlastoClean, from the first walkthrough and quote to the schedule, the crew, client messages and the monthly invoice.

Watch next: [BlastoClean in three minutes](https://www.blastoclean.com/videos/overview)

[Start free](https://www.blastoclean.com/start)

---

---
title: "Start your 14-day free trial · BlastoClean"
description: "The whole system — quoting, scheduling, crews, invoices and payments, with Magic Quote on top. Every feature, your whole team, no credit card. Create your company account and send your first quote in minutes."
url: "https://www.blastoclean.com/signup"
---

# Start your 14-day free trial

The whole system — quoting, scheduling, crews, invoices and payments, with Magic Quote on top. Every feature, your whole team, no credit card. Create your company account and send your first quote in minutes.

[Try the live demo, no account needed](https://www.blastoclean.com/try)

Explore the shared sample company at your own pace. Enter your name, work email, and company to open it — no password or scheduled call.

## What's included

- Full access to everything for 14 days
- No credit card required to start
- A ready-made library of rooms and tasks, yours to edit, in English or Spanish, whichever you sign up in
- Your customers just get a link — nothing for them to install
- The native iPhone and Android companion uses the same account for supported schedule, checklist and payment workflows. Contact us for current download options
- Subscribe in-app when you're ready: plans from $29/month with 3 users included. Or stay on the Free plan for nothing: quote it, book it and get paid, one job at a time
- Magic Quote is included while you trial. Walk a house or an office and see the draft it hands back
- AI assists included, with the Business plan's full 1,500-credits-a-month allowance while you trial
- Leave anytime and take your data with you

## Sign up

Start at https://www.blastoclean.com/signup. Already have an account? Sign in at https://app.blastoclean.com/login.

---

---
title: "Try the live demo · BlastoClean"
description: "Walk into a fully furnished BlastoClean account right now — real quotes, a real schedule, real invoices. No password, no card, and 75 AI credits of your own."
url: "https://www.blastoclean.com/try"
---

# Try the live demo

Walk into a fully furnished BlastoClean account immediately — a sample cleaning company with ten customers, quotes in every state, three weeks of visits behind and three ahead, and invoices paid and overdue.

## How to get in

Give a name, a work email and a company name at https://www.blastoclean.com/try. There is no password, no card and nothing to install; you are signed in a second later.

## What you can do

- Build and price a quote, book a recurring visit, send an invoice, run the reports — every feature works.
- Use the AI assists: each visitor gets 75 AI credits of their own.

## What it is not

- It is one demo company shared by everyone, so the sample records are read-only. Anything you create is yours to edit.
- The whole company is rebuilt from scratch every week, so nothing you do in it is kept.
- It sends no email and no text messages to anybody, and it will not store real contact details.

## Want a private account?

Start a free trial at https://www.blastoclean.com/signup, or book a live walkthrough at https://www.blastoclean.com/demo.

---

---
title: "Schedule a demo · BlastoClean"
description: "Book a live walkthrough of BlastoClean — quoting, scheduling, invoicing and reporting, shown on a real account."
url: "https://www.blastoclean.com/demo"
---

# Schedule a demo

Book a live walkthrough of BlastoClean — quoting, scheduling, invoicing and reporting, shown on a real account.

## Book a demo

Ask for a live walkthrough at https://www.blastoclean.com/demo, call or text (585) 200-6753, or reach us at hello@blastoclean.com or https://www.blastoclean.com/contact.

## Prefer to try it yourself?

Start a free trial at https://www.blastoclean.com/signup — no call required.

---

---
title: "Get paid for every cleaning company you send us · BlastoClean"
description: "BlastoClean is built for the whole cleaning job — quoting, scheduling, crews, invoices and payments, with Magic Quote for pricing a property by walking it. Share your link, and earn recurring commission on the subscription of every cleaning business that signs up through it — for as long as they stay."
url: "https://www.blastoclean.com/partners"
---

# Get paid for every cleaning company you send us

BlastoClean is built for the whole cleaning job — quoting, scheduling, crews, invoices and payments, with Magic Quote for pricing a property by walking it. Share your link, and earn recurring commission on the subscription of every cleaning business that signs up through it — for as long as they stay.

## What you get

- Recurring commission on every payment your customers make, not a one-off bounty
- Your rate rises as your book grows — the current schedule is published in full on this page
- A link of your own (blastoclean.com/p/your-name) that credits you for the whole attribution window published on this page
- Campaign tags on the end of your link, so you can tell your newsletter from your podcast
- Paid monthly by PayPal once your balance passes the published minimum
- Nothing to install, no stock to carry, and no exclusivity asked for

## How it works

1. **Apply** — One form, on this page. US-based partners only for now, and we ask for the PayPal address commissions should be sent to up front.
2. **Share your link** — You get blastoclean.com/p/your-name the moment you're approved. Put it in a newsletter, a video description, a course, or hand it to a client — anyone who clicks it is credited to you for the whole attribution window.
3. **They start a free trial** — Your link sends them to the ordinary 14-day trial. Nothing about their signup changes; the attribution is recorded behind it and locks to you when the account is created.
4. **You earn on what they pay** — Commission is written the moment each of their invoices is collected, at your rate on that date. Trials earn nothing — collected money does.

## What you earn

Your rate is set by how many paying customers you have referred, and applies to every payment they make while they stay subscribed. A rate you reach applies from that point on — it never rewrites what you have already earned, and a refund is reversed at the rate it was earned at.

Sign in to the partner portal to see your customers, your commission entries and your payout history, claim a customer who signed up without your link, and pick a new name for your link — the old one keeps working. Two-factor authentication is optional there: your password alone gets you in. The one thing it does unlock is changing your PayPal address, because a stolen session must not be able to redirect your money.

## Apply

Apply at https://www.blastoclean.com/partners. Already a partner? Sign in at https://app.blastoclean.com/partner/login.

## Questions partners ask first

**When do I get paid?**

Monthly, by PayPal, once your balance is over the published minimum. A balance under the minimum carries forward rather than being lost. We need tax documentation — a W-9 — on file before the first payout goes out, and changing the PayPal address later takes two-factor authentication on your partner account.

**How long does a click count for?**

For the attribution window published on this page. The last partner or referral link somebody used before signing up is the one that gets credited, and that relationship locks when their account is created.

**What if someone I referred signed up without using my link?**

Open a claim yourself in the partner portal, within the claim window published on this page — give us the customer's details and how you referred them. We check every claim against our own records; if it holds up, that customer is attributed to you from the decision onwards, and the portal shows you the reason either way.

**Do I earn on their trial?**

No. Commission hangs off collected money — the first payment they actually make. A reward for a trial is a reward for having an email address, which is not a program anyone can run honestly.

**What happens if a customer refunds or cancels?**

A refund reverses the commission it earned, at the rate it was earned at and proportionally for a partial refund. It lands on your current balance rather than reopening a period you have already been paid for, so a balance can go briefly negative.

**Can I be a partner and a customer?**

Yes. Your partner account is separate from any company account you have in the app, with its own sign-in. You cannot, however, earn commission on your own company's subscription.

**Can I run ads on your brand name?**

No. Bidding on "BlastoClean" and its misspellings competes with us for people who were already coming, and it is the one thing that ends a partnership. Everything else — content, reviews, comparisons, your own audience — is yours to run. If you promote or review BlastoClean, say plainly, where a reader will see it, that you earn a commission.

---

---
title: "Your Privacy Choices · BlastoClean"
description: "Control your cookie and advertising choices."
url: "https://www.blastoclean.com/privacy-choices"
---

# Your Privacy Choices

Opt out of sale or sharing for targeted advertising, or change your cookie choices. Your choice is saved in this browser for 12 months.

Advertising cookies are currently off. This site does not use analytics cookies.

When enabled, lets Meta and Google measure our ads and show our ads to you on other sites.

For an existing account, request that we stop account conversion reports by emailing from the account address to
[hello@blastoclean.com](mailto:hello@blastoclean.com)

[Privacy Policy](https://www.blastoclean.com/privacy)
[Cookie Policy](https://www.blastoclean.com/cookies)

---

---
title: "Contact · BlastoClean"
description: "Questions about plans, how the quoting, scheduling and payment side fits together, a walkthrough for your team, or moving your existing quotes over? Send a note — we reply within one business day."
url: "https://www.blastoclean.com/contact"
---

# Talk to a human

Questions about plans, how the quoting, scheduling and payment side fits together, a walkthrough for your team, or moving your existing quotes over? Send a note — we reply within one business day.

## How to get in touch

- Call or text (585) 200-6753 (tel:+15852006753, sms:+15852006753).
- Email: hello@blastoclean.com
- Contact form: https://www.blastoclean.com/contact
- Start a free trial: https://www.blastoclean.com/signup

---

---
title: "Cookie Policy · BlastoClean"
description: "The cookies blastoclean.com uses, why, and how to control them."
url: "https://www.blastoclean.com/cookies"
---

# Cookie Policy

Draft: release date pending review

This policy lists the cookies and similar technologies used on **www.blastoclean.com**. It is
part of our [Privacy Policy](/privacy). The BlastoClean application (app.blastoclean.com) and the
mobile app do not use advertising or analytics cookies.

**Draft advertising update: release date not assigned. Advertising integrations are disabled pending review and separate activation.**

## Your choices

- Change your choice at any time with **Cookie settings** in the footer, or on
  [Your Privacy Choices](/privacy-choices), which is also our **Do Not Sell or Share My Personal
  Information** page.
- In the EEA, the UK and Switzerland, advertising cookies are off until you click "Accept all".
- Elsewhere they are on unless you opt out. A **Global Privacy Control** signal from your browser
  is honored automatically as an opt-out.
- You can also block or delete cookies in your browser settings.

## Cookies we use

**Strictly necessary and functional (always on)**

| Cookie | Set by | Purpose | Lasts |
|---|---|---|---|
| `bc_consent` | BlastoClean | Remembers your cookie choice | 12 months |
| `bc_lang` | BlastoClean | Remembers the language you picked, English or Spanish | 12 months |
| `bc_src` | BlastoClean | Remembers the first campaign or site that brought you here, so your signup records it (not used for advertising) | 90 days |
| `bc_vid`, `bc_attr` | BlastoClean | Credit a referral or partner link you arrived through (not used for advertising) | 90 days |
| `cqb_demo_device` | BlastoClean | Applies the live demo's limits per person | 90 days |
| Cloudflare Turnstile | Cloudflare | Tells people from bots on our forms | Session |
| Calendly (only on `/demo`) | Calendly | Booking a walkthrough inside the embedded calendar | Set by Calendly |

**Advertising (only with consent in the EEA/UK/CH; opt-out elsewhere)**

| Cookie | Set by | Purpose | Lasts |
|---|---|---|---|
| `_fbp` | Meta (first-party) | Identifies this browser to measure Meta ads and build audiences | 90 days |
| `_fbc` | Meta (first-party) | Stores the click ID of a Meta ad you clicked | 90 days |
| `_gcl_au`, `_gcl_aw`, `_gcl_gb` | Google (first-party) | Store Google ad-click information to measure conversions | 90 days |
| `bc_click` | BlastoClean | The last Meta or Google ad you clicked, so a later signup can be reported to that platform | 90 days |
| Meta and Google cookies on their own domains (for example `fr` on facebook.com) | Meta, Google | Ad delivery and measurement, under their own policies | Set by Meta / Google |

We do not use analytics cookies on this site. Our own usage statistics are cookieless counters.

## Server-side reporting

After separate activation, our servers may report signup or payment events using the advertising choice saved when the account was created. Meta reports can include a hashed email; Google offline reports use click identifiers, amount and currency, without email, IP or user agent. A rejected choice or GPC at signup prevents these reports. Later browser withdrawal affects this browser and future signups. To stop reports for an existing account, contact hello@blastoclean.com; we need only information that identifies the affected account. Details are in the
[Privacy Policy](/privacy).

## Contact

Questions: **hello@blastoclean.com** · BlastoClean Inc, 74 Willowick Dr, Fairport, NY 14450.

---

---
title: "Delete your account · BlastoClean"
description: "How to delete your BlastoClean company account and what happens to your data."
url: "https://www.blastoclean.com/delete-account"
---

# Delete your account

Last updated October 20, 2026

This page explains how to delete your BlastoClean company account from the web app or the
mobile app, what we remove, what we may keep, and how long deletion takes.

## Delete in the app

An **owner** can delete the company account at any time:

1. Sign in at [app.blastoclean.com](https://app.blastoclean.com) or in the BlastoClean mobile
   app.
2. Open **Settings**.
3. Choose **Delete account**, type the company name exactly and confirm.

A team member who is not an owner deletes their own account access, rather than
the company, using the confirmation shown in the app.

The in-app action permanently deletes the company account and its operational
database records as part of the request. It has no undo or recovery window.
Export what you need before confirming. File and external-service cleanup may
continue afterwards; contact **hello@blastoclean.com** with questions.

## What we delete

When deletion completes, we remove your company's operational data from BlastoClean,
including team members, customers, properties, quotes, schedules, uploaded photos and files,
and the email addresses tied to the account (so they can be used to sign up again).

## What we may keep

Some records must be kept for legal, tax, accounting or fraud-prevention reasons, or to
resolve disputes. Where retention is required, we **anonymize** what we can and keep only
what the law or a payment processor requires — for example Stripe settlement and tax
records linked to money that already moved. Those retained records no longer identify you
or your customers for everyday use of BlastoClean.

Encrypted database backups may still contain deleted data until each backup rotates on its
normal schedule; they are not used to restore deleted accounts.

## How long it takes

The app confirms the account deletion in its response and signs you out. It
does not send a separate completion email. Some file or external-service cleanup
can remain pending after the account is gone. For a request made by email, support
can confirm the timing after verifying ownership.

## Request by email instead

If you cannot sign in, email **hello@blastoclean.com** from the email address on the
account and ask us to delete it. We may ask you to verify ownership before we proceed.

## Before you go

You can [export your data](/docs/exporting-your-data) at any time while the account is
active or suspended. See our [Privacy Policy](/privacy) for the full picture of retention and
your rights.

Questions? Email **hello@blastoclean.com** or call **(585) 200-6753**.

---

---
title: "Privacy Policy · BlastoClean"
description: "How BlastoClean collects, uses and protects your information."
url: "https://www.blastoclean.com/privacy"
---

# Privacy Policy

Draft: release date pending review

BlastoClean Inc ("BlastoClean", "we", "us"), 74 Willowick Dr, Fairport, NY 14450, provides
quoting, scheduling and payment software for cleaning companies. This policy explains what
we collect on this website and in the BlastoClean application, and what we do with it.

Privacy contact: **hello@blastoclean.com**.

## What we collect

**On this website.** If you use the contact form, we collect the name, email address,
company name and message you send us, and we keep a technical fingerprint of the request
(such as a hashed network address) to prevent abuse. This site does not use advertising
trackers.

**Trial signup emails.** When you start a free trial, we may send you up to four helpful
emails over your trial period — tips for building quotes, scheduling work and getting paid,
each with a link to book a live demo if you would like one. They stop automatically when
you subscribe, when your trial ends, or when you unsubscribe using the link in any message.
To run the series we store your email address, name and company name in this site's
database until the sequence finishes; finished rows lose those details after **90 days**,
and deleting your app account clears them immediately. We send them from the same
`noreply@mail.blastoclean.com` address as other messages from this site.

**Scheduling a demo.** The `/demo` page embeds Calendly to let you pick a time for a live
walkthrough. Calendly runs on its own domain inside that embed and may set its own cookies
or collect the details you enter to book the meeting. When you complete a booking, Calendly
notifies the organizer and we receive the invitee details needed to hold the meeting — name,
email and the time you chose — through that scheduled event and its notifications, not only
when you join the call. See [Calendly's privacy notice](https://calendly.com/privacy) for
what they collect on their side.

**The live demo.** The `/try` page lets you walk straight into a shared, furnished sample
company without creating an account. To open it we collect the **name, work email address
and company name** you type into the form, and store them in the demo's own separate
database together with a hashed form of your network address and a random identifier we set
as a cookie on your browser (`cqb_demo_device`, **90 days**). The hashes and that cookie
exist for one purpose: recognizing that one person is coming back, so the demo's AI
allowance and its limits apply per person rather than per visit. They are not derived from
anything about you or your device, are never used for advertising, and are not shared. The name
and company name are kept so a demo visit is a record with somebody in it rather than an
anonymous hash — which is what we need if something in the demo has to be looked into — and
the address is the identity the AI allowance itself hangs on. **Opening the demo does not
create an account and does not sign you up for anything**, and the demo itself sends no email
or text messages at all. All three fields are cleared automatically once you have not entered
the demo for **90 days**, leaving only the counters and hashes the entry checks read.

**We also keep those details as a business record.** Somebody who opens the demo is someone
who has looked at the product, so the name, work email address and company name above are
visible to our own staff in an internal console — who has tried it, from what sort of company,
and how much they used it. **Being able to see your details is not permission to write to you**:
if you did not tick the box described below, we do not email you about the demo at all, and
that includes a personal note from one of us, not only a campaign. Beyond that: we do not sell
them, we do not share them with anybody else, we do not use them for advertising or profiling,
and they are deleted on the same **90-day** clock as everything else on the demo record.

**Demo emails, only if you ask for them.** The `/try` form carries a tick box, unticked, that
says "send me a few tips on getting started". **If you leave it alone we do not email you at
all.** If you tick it, we send **three short emails over about nine days** about what
BlastoClean looks like with your own customers in it, and then we stop — the last one says so.
They stop earlier if you create an account or unsubscribe, and every message carries an
unsubscribe link and our postal address. The link takes you to a page with a single button
that confirms it — one deliberate extra click, so that the scanners some mail systems run over
incoming links cannot unsubscribe you without your knowing. To run the series we store your email
address, name and company name in this site's database, along with the date you ticked the
box, which is our record of your consent; finished rows lose those details after **90 days**.
Ticking the box is the only thing that ever puts a demo visitor on an email list, and it
applies from the moment you tick it: nobody who opened the demo before this box existed is
enrolled, because they were told we would not write to them.

**Inside the demo, nothing is private.** It is one sample company that every visitor shares
at the same time, so anything you type into it can be seen, changed and deleted by other
visitors. It is rebuilt from a fixed sample every week and everything added since the last
rebuild goes with it. Please do not put real customer records or anyone's personal
information into it: the demo refuses to store contact details outside the reserved
documentation ranges and sends no email or text messages at all, but those are safeguards,
not an invitation. The demo runs on a database of its own, separate from every customer
account.

**Usage statistics.** This site keeps aggregate, cookieless statistics about its own use:
which page paths were viewed, which sites referred visitors here, daily totals of each, and
how many contact forms and trial signups each of our own advertising campaigns produced.
They are plain counters — no cookies, no device identifiers, nothing that could single out
a visitor — and they are never shared. The campaign counters name only campaigns we run and
have registered in advance; a `utm_` tag on a link we did not create is counted, but never
stored, so a personalised link cannot leave a record of the person who followed it. When you send the contact form or start a trial, we
also record which page and referring site brought you to us, so we know which pages
actually help people find the product.

**Referral and partner links.** If you arrive through a referral link (`/r/…`) or a partner
link (`/p/…`), we set two cookies on this site: a random identifier for your browser, and
the referral or partner code you arrived through. They exist for one purpose — making sure
the person who referred you gets credited if you sign up, even if that happens days later.
The identifier is random and is not derived from anything about you or your device, and
neither cookie is used for advertising or shared with advertisers. They last **90 days** and
are removed when you clear your browser's cookies. A visit through a partner link also sends
that identifier, the partner's code, the page you landed on, the site you came from, your
network address and your browser's user-agent string to the BlastoClean application, so the
partner can see how their link is performing; that record is kept for as long as the partner
relationship needs to be auditable. It is a record of the visit, not a second copy of the
credit: if you clear these cookies before signing up, the signup is simply not credited to
anyone. Arriving through an ordinary link sets neither cookie.

**Where a visit came from.** If the first page you open carries campaign tags
(`utm_source`, `utm_medium`, `utm_campaign`, `utm_term` or `utm_content`), or you
arrived from another site, we store that first visit in a first-party cookie named
`bc_src` for **90 days**: those tags, the page you landed on, and the address of
the site that linked here. A later visit does not replace it. On blastoclean.com
and its subdomains (including www and the app), that cookie is shared across the
whole site so a first touch on one host is still there when you sign up on
another. The cookie is not used for advertising and is not shared with
advertisers. The signup form, the live demo and a booked walkthrough receive it
so the account can record where you came from. If you choose to answer the
optional “How did you hear about us?” question on signup, that answer is stored
on the account you create. It is removed when the 90 days end or when you clear
your cookies (the hear-about answer stays on the account until the account is
deleted).

**Partner applications.** If you apply to the partner program at `/partners`, we collect
what the form asks for: your name, business name if you give one, email address, phone
number, mailing address, the PayPal address commissions should be sent to, your website or
social links if you give them, how you plan to promote BlastoClean, the link you would like,
and a password for the partner portal — which is stored hashed and is never readable by us.
Your application is kept as written, because it is the record of what you applied with, and
alongside it we keep hashed forms of your network address and browser user-agent string and
the exact consents you gave, as evidence of what was agreed to and when. The mailing address
and the PayPal address exist to pay you and to meet US tax-reporting obligations. If your
application is declined, or your partnership ends, we keep the application and the
commission records for as long as the money involved has to stay auditable.

**In the application.** When you create a company account we store the information you
enter to run your business: your team's names and email addresses, your customers and
their properties, your room and task libraries, quotes, schedules and payment records.

**Photo quotes.** A cleaning company that uses BlastoClean can give its customers a link to
a page where they send photos of their home to get a price. That page collects what the
customer types (their name, email address, phone number and address, and the details they
give about the home) and the photos they choose, and keeps a hash of their network address
to prevent abuse. Before a photo is sent, the page redraws it on the customer's device,
which leaves out the location and camera details a phone stores inside a photo. The photos
and details go to the cleaning company that sent the link, as a request in its account. On
the plans that include it, the photos are read by AI to suggest the rooms and their
condition (see "AI assists" below), and a person at the company reviews that before any
price is sent.

**Quick Quote photos.** A company's team can add photos of the place being cleaned to a
Quick Quote, in the web app or the mobile app. Each photo is redrawn on the device before it
is sent, which leaves out the location and camera details stored inside it. It is kept in the
company's account and read by AI as it arrives (see "AI assists" below).

**Draft update — release date not assigned. Advertising integrations remain disabled until review and separate activation. The following describes their planned use.**

## Advertising and measurement

We advertise BlastoClean on Facebook, Instagram and Google. To learn which ads lead to trials and
paying customers, and to show our ads to people who have already visited, this website uses:

- **Meta Pixel** (Meta Platforms, Inc., and for people in the EEA/UK, Meta Platforms Ireland Ltd.). It
  sets the `_fbp` and `_fbc` cookies and tells Meta which pages of blastoclean.com you viewed and
  whether you started a trial.
- **Google Ads tag** (Google LLC, and for people in the EEA/UK, Google Ireland Ltd.), including
  **enhanced conversions**. It sets `_gcl_*` cookies and tells Google which ad click led to a trial.
- **Server-to-server conversion reports** (Meta Conversions API and Google offline conversion
  import). When you start a trial, become a paying customer, or make your first payment, our
  servers tell Meta and Google that it happened.

With these signup and payment events we send: a one-way **SHA-256 hash of your email address**
(never the address itself); the ad-click identifiers stored in the cookies above (`fbclid`/`_fbc`,
`_fbp`, `gclid`, `gbraid`, `wbraid`); your browser's user-agent and IP address (we pass the IP
address along but do not store it); the plan and amount; a hashed internal account reference; and
the language you used. The Google signup tag and Meta use the hash. The Google offline feed contains click IDs and event amounts, without email, IP address, or user agent. Meta and Google use the hash to match the event to an account they already
know. **We do not send your name, phone number, company name, anything you type inside the app,
or any information about your own customers.** The BlastoClean application and mobile app contain
no advertising tags.

We also set two cookies of our own for this: `bc_click` (the last ad you clicked, **90 days**) and
`bc_consent` (your choice, **12 months**).

**Why, and on what basis.** We use this data to measure our advertising, to show our ads to
people who visited this site, and to find people similar to our customers. In the EEA, the UK and
Switzerland we do this only with your consent, which you can withdraw at any time. Elsewhere we
rely on our legitimate interest in promoting BlastoClean, and you can opt out at any time.

**"Selling" and "sharing" under U.S. state laws.** We do not sell personal information for money.
But letting Meta and Google collect data on our site for targeted advertising may count as
"selling" or "sharing" personal information under the California Consumer Privacy Act (as amended
by the CPRA) and similar laws in other U.S. states. When these integrations are activated, the categories involved will be identifiers (cookie IDs, ad-click IDs, IP address, hashed email) and internet activity on this
site, disclosed to Meta and Google for advertising. We do not knowingly sell or share the personal
information of anyone under 16.

**Your choices.**

- **[Do Not Sell or Share My Personal Information](/privacy-choices)**: turn off advertising cookies
  and server-side reports for this browser. The same page lets you change your cookie choices at
  any time. A "Cookie settings" link is in every page footer.
- **Global Privacy Control.** If your browser sends a GPC signal, we treat it as a request to opt
  out of selling and sharing: advertising cookies stay off and nothing is reported about your
  signup.
- **EEA, UK and Switzerland.** Nothing in this section runs until you click "Accept all". "Reject
  all" is just as easy, and you can change your mind later.
- **Already a customer?** Email hello@blastoclean.com from your account's email address and we will
  stop sending conversion reports about your account.
- **Ad settings at Meta and Google:** [facebook.com/adpreferences](https://www.facebook.com/adpreferences),
  [myadcenter.google.com](https://myadcenter.google.com). Industry opt-outs:
  [optout.networkadvertising.org](https://optout.networkadvertising.org) and
  [optout.aboutads.info](https://optout.aboutads.info).

**How long.** Cookie lifetimes are listed in our [Cookie Policy](/cookies). On our side, ad-click
identifiers saved with a new account are deleted after **180 days**, and our log of conversion
reports (no email address or name) after **13 months**. Your consent choice is kept with the
account as a record. Meta and Google keep what they receive under their own policies:
[Meta Privacy Policy](https://www.facebook.com/privacy/policy),
[Google Privacy Policy](https://policies.google.com/privacy).

## In the mobile app

The BlastoClean app for iPhone and Android uses the same account as the website. It asks
the device for access only for the jobs below, and only while the app is in the foreground.

**Location.** The app requests location only while it is in use. It does not request
background location, and it does not track anyone between visits. When someone clocks in
or clocks out of a visit, the app takes one GPS reading and sends it to BlastoClean with
that time entry, so the office can see whether the visit was started or ended at the
property. If location is off or permission is refused, the clock-in or clock-out is still
saved, without coordinates. Stripe also requires the phone's location while a card payment
is taken in person. The app requests that location for Stripe. It is not a record of
travel between visits.

**Camera.** The camera takes before-and-after photos of a visit, and photos while walking
a property to build a quote or for a Quick Quote.

**Photo library.** You can choose before-and-after photos of a visit, or photos for a
quote walkthrough or a Quick Quote, from the photo library. On Android, that choice goes through the
system photo picker.

**Microphone.** The microphone records voice notes while walking a property to build a
quote.

Photos and voice notes are saved to the company account. When AI features are on, they
are processed as described under Service providers.

**Tap to Pay.** When a card is taken in person on the phone, Stripe reads the card on the
device. The card number is handled by Stripe. It is not sent to BlastoClean.

**Face ID and other biometrics.** Face ID, Touch ID, or Android biometrics are checked on
the device only, to unlock the app. That check never leaves the device, and biometric
data is never sent to us. A device passcode can unlock the app when biometrics are not
available.

The mobile app does not show ads or include third-party analytics, crash reporting or
background tracking. Configured builds can offer push notifications when the server is
configured and you allow them on the phone. Google Firebase Cloud Messaging processes
the device's delivery token, notification text and routing data to deliver them. The
in-app notification list also loads from BlastoClean while the app is open.

## Children

The service is not directed to children under 13. We do not knowingly sell or share personal information of anyone under 16.

## What we do with it

We use your information to provide the service. After separate activation, we also measure our own advertising as described above. Your customers’ details are never sent to advertising partners. We do not sell personal information for money, we do not rent lists, and we do not use your customers' details for
our own marketing.

Contact form messages are used solely to reply to you.

## Text messages

Phone numbers opted in to text messages — recorded by the office, chosen by the customer
online, or given by text reply — are used to send the messages that number agreed to.
Message frequency varies. Msg & data rates may apply. Reply STOP to opt out, or HELP for
help. We do not share or sell mobile numbers or opt-in data to third parties for marketing.

## Payments

Card payments are processed by your company's own payment provider (such as Stripe).
Full card numbers never touch our systems. When a customer pays online, they type the
card number on the provider's hosted checkout. In person, Stripe reads the card on the
phone (see Tap to Pay above). We store only the references the provider gives us and an
encrypted copy of the credentials your company connects.

## Service providers

We use service providers to run BlastoClean. They process data on our instructions and
only for the purposes below. This section names the providers that matter most for the
application; the website's contact form, trial emails and demo booking use the same
Cloudflare and AWS infrastructure described under "Where your data lives", and Calendly
when you book a walkthrough.

**Hosting, storage and security**

- **Cloudflare, Inc.** — serves the website and application, stores uploaded files in R2,
  sends email from our domains (Email Service), verifies forms (Turnstile), and pools
  database connections (Hyperdrive).
- **Amazon Web Services, Inc.** — hosts the primary MySQL database (Amazon Aurora).

**Payments**

- **Stripe, Inc.** — bills your BlastoClean subscription and, when you connect it, processes
  your company's customer card payments through Stripe Connect. Online, customers type card
  numbers on Stripe's hosted pages; in person, Stripe reads the card on the device. Full
  card numbers are not stored on our servers.

**AI assists**

When AI features are enabled for your company, the text, photos or audio you submit to them
is processed as follows:

- **Anthropic, PBC** — Quick Quote (typed job descriptions, photos your team adds, and room verification),
  Magic Quote and photo quote photo analysis, the in-app help assistant, and other drafting and
  classification assists (such as website-lead quote drafts, inbound message triage,
  tuning suggestions, weekly digests and follow-up copy). We send this content to
  Anthropic to generate a response; we do not send it for model training.
- **Cloudflare, Inc. (Workers AI)** — transcribes Magic Quote voice notes and, when enabled,
  voicemail audio using a
  speech-to-text model run on Cloudflare's Workers AI platform (an OpenAI Whisper variant
  operated by Cloudflare, not a separate call to OpenAI's API).

**Connected AI assistants**

If you connect ChatGPT, Claude or another supported assistant, the company records
returned by its permitted tools are sent to that assistant and its provider. Access is
limited by the scopes, role and location you approved. You can disconnect the connection
in Settings or the assistant's own controls. Your agreement and settings with that
provider govern its handling of those responses; the built-in AI processing description
above does not describe the provider's separate use of your assistant conversations.

**Advertising and measurement**

After separate activation, **Meta Platforms, Inc.** and **Google LLC** receive the information described above for advertising and measurement. For targeted advertising they act as independent third parties; the opt-outs above apply.

## Where your data lives

The service runs on Cloudflare's global platform. Data is stored in a MySQL database
hosted on Amazon Aurora (AWS) and in Cloudflare's R2 storage, protected in transit by TLS.

Records created before we moved to that database remain in the Cloudflare D1 database we
used previously, under this same policy, until it is decommissioned.

## How long we keep it

For as long as your account is in use, and then for a while afterwards, so that leaving by
accident costs you nothing.

**If you leave** — you cancel, or your trial ends and you never subscribe — we keep your
account for six months after your access actually ends. Anything with a shorter clock of
its own keeps it: walkthrough recordings still expire on the retention window your company
chose, and are not held back by this. Canceling takes effect at the
end of the period you have already paid for, so the six months start from that day, not
from the day you cancel. Moving to the Free plan instead is not leaving: those accounts
are covered by the paragraph below however long they pay nothing.

Coming back inside those six months picks up exactly where you left off. After them the
account becomes eligible for deletion, and a person at BlastoClean reviews it before
anything is deleted. Unlike the inactivity case below, no further notice is sent — the
timetable is the one described here — so if you want your records, export them before you
go, or ask us for a copy while we still have them. Once the deletion has run there is
nothing left to send.

**If you are on the Free plan,** there is no deadline while the account is in use. If
**nobody signs in for a year**, we suspend the account and notify the account holder. All
data stays intact, and signing back in at any point reactivates the account immediately.
If nobody signs in within **three months** of the suspension, the account may be reviewed
and deleted. As above, a person reviews it before anything is deleted.

Deleting a company account removes its operational records and releases its users' email
addresses for signup again. Financial records that must be retained are anonymized rather
than erased. File and external-service cleanup can continue after the account is deleted.
See [Delete your account](/delete-account). Deletions are
not retroactive to backups: an account can persist in an encrypted database backup until
that backup rotates on its own schedule.

**Everything else we hold** keeps its own clock, and none of it is tied to your account:
contact-form messages are kept so that we can answer you and so that we have a record of
who has asked us about the product — we do not delete them on a schedule, and you can ask
us to delete yours whenever you like; a partner application and its commission ledger are
kept for as long as the payments they describe have to stay auditable, which is longer than
the partnership itself; trial-drip and demo-drip enrollment rows on this site hold a copy of your
email, name and company only while the email series is running, lose those fields **90 days**
after the series ends, and are cleared immediately when your app account is deleted; a
live-demo visitor record loses the name, address and company name it was opened with — and
the record of any tick-box consent given with them — **90 days** after that person last
entered the demo, and what remains of it is counters and hashes with nobody in them; the cookieless
usage counters are aggregates with
nobody in them and are kept indefinitely as totals; and the photos, video and voice notes from a Magic Quote
walkthrough are deleted on the retention window your company chooses in Settings — 30
days, 90, a year, or kept — after which the timeline, the transcripts and the quote they
produced remain.

**Photo quotes** keep a clock of their own as well. The photos a customer sends, and the
details sent with them, are deleted **90 days** after the customer last sent photos, or
after the company last asked them for more, unless the quote they priced was accepted; then
they stay with that quote for as long as the account keeps it. An upload that was started
and never sent is closed after a day and deleted 90 days after it was started. A request it
filed in the company's account is kept like any other request.

**Quick Quote photos** a team adds but never uses in a Quick Quote are deleted, with their
images, a day after they were uploaded, and so are photos left in a Quick Quote that could
not be started. Photos in a Quick Quote stay with it for as long as the account keeps it.

You can ask us to delete your account sooner than any of this, at any time — see
[Delete your account](/delete-account) for self-service steps and what we remove.

## Your rights and your exit

Your company's data belongs to your company. An owner can export the whole account —
settings, team, customers, properties, templates, quotes and audit records — as a portable
file at any time, and can delete the account from **Settings → Delete account** in the web
or mobile app. Full instructions, retention exceptions and timelines are on
[Delete your account](/delete-account). You can also ask us to delete the account by
contacting hello@blastoclean.com from the email on the account. The export stays available
on a suspended account too. Being suspended for inactivity never holds your own records hostage.

**Privacy rights.** Depending on where you live, you may have the right to know what personal
information we hold about you, to get a copy, to correct it, to delete it, and to opt out of
selling, sharing or targeted advertising (see [Your Privacy Choices](/privacy-choices)). In the EEA,
the UK and Switzerland you may also object to or restrict our processing, ask for data
portability, withdraw consent, and complain to your local data protection authority. To make a
request, email hello@blastoclean.com. For access, correction or deletion requests, we may ask for identity verification. Sale/sharing opt-outs do not require identity verification; we ask only for information needed to identify the affected account, you may use an authorized agent, and we will not treat you differently
for using these rights. If we decline a request you can reply to appeal, and we will answer within
the time the law requires.

## Changes

If this policy changes, the date above changes with it, and material changes will be
announced in the application.

Questions? Email **hello@blastoclean.com**.

---

---
title: "Terms of Service · BlastoClean"
description: "The terms that govern your use of BlastoClean."
url: "https://www.blastoclean.com/terms"
---

# Terms of Service

Last updated October 8, 2026

These terms govern your use of the BlastoClean website and application operated by
BlastoClean Inc, a New York corporation. By creating an account you agree to them on
behalf of your company.

## The service

BlastoClean provides software for building cleaning quotes, sharing them with customers,
scheduling visits and collecting payments. We aim for the service to be available and
accurate, but it is provided "as is" and we do not guarantee uninterrupted availability.

## The live demo

The demo at `/try` is a shared sample company, not an account of your own. Everybody who
enters is inside the same company at the same time, so treat everything in it as public:
what you add there can be read, edited and deleted by other visitors. It is rebuilt from a
fixed sample every week, and everything added since the last rebuild is deleted with it.
Nothing in the demo is backed up, exportable or recoverable.

Do not put real information into the demo — not your customers' records, not anyone's
personal information, and nothing confidential.

Each visitor gets a limited allowance of AI assists and limited room to create records, and
the demo is provided "as is" with no availability commitment of any kind. We may change it,
limit one person's access to it, or withdraw it entirely, at any time and without notice —
in particular where it is being used automatically, at volume, or in any way that spoils it
for other visitors.

## Your account

You are responsible for the accuracy of the information you enter and for keeping your
team's credentials safe. An account owner controls who on the team can access the company
and at what level. You must not use the service to send spam or for any unlawful purpose.

## Your content and data

Everything you enter — customers, properties, task libraries, quotes — remains your
company's property. You grant us only the license needed to store and process it in order
to run the service. You can export your data at any time.

## Quotes and payments

BlastoClean calculates prices from the rates, times and multipliers your company
configures. The contract for cleaning work is between your company and your customer; we
are not a party to it. Payments are processed by your company's own payment provider under
that provider's terms, and funds settle directly with your provider.

## Fees

Paid plans are billed as described on the pricing page, monthly or yearly. A paid plan
renews automatically at the end of each billing period until you cancel.

You can cancel at any time from Settings → Billing, before the next renewal. Canceling
takes effect at the end of the current billing period and stops future charges. You keep
access through the end of the period you have already paid for.

## Refunds

Payments are generally non-refundable. BlastoClean may make an exception at its
discretion. To request a refund, contact support at hello@blastoclean.com.

## Text messages

When you or your customers opt in to text messages, message frequency varies. Msg & data
rates may apply. Reply STOP to opt out, or HELP for help. Mobile numbers and opt-in data
are not shared or sold to third parties for marketing.

## Termination

You may close your account at any time after exporting your data. We may suspend an
account that breaches these terms, and where practical we will warn you first.

**Inactive free accounts.** A Free-plan account that nobody signs in to for a year is
suspended, and we notify the account holder when that happens. All data stays intact, and
signing back in reactivates the account immediately. If nobody signs in within three months
of the suspension, the account may be reviewed and deleted along with everything in it.
Signing in at any point before the deletion stops it. Paid accounts and accounts inside
their trial are never suspended for inactivity, and the data-retention windows are set out in full in our Privacy
Policy.

## Liability

To the fullest extent permitted by law, our liability for any claim arising from the
service is limited to the fees you paid in the twelve months before the claim.

## Governing law

These terms are governed by the laws of the State of New York.

## Changes

We may update these terms; the date above reflects the latest revision. Material changes
will be announced in the application before they take effect.

Questions? Email **hello@blastoclean.com**.

BlastoClean Inc  
74 Willowick Dr  
Fairport, NY 14450
