Skip to content

PaintOps Tutorial

PaintOps runs on your own WordPress website and takes a painting job from the first phone call to a signed quote, a scheduled crew, collected payments, and a real profit number. This tutorial walks the whole road once, in the order a job actually happens. Use the contents to jump to the part you need.

1. First-time setup

Install and open the app. After activating the plugin, PaintOps creates its own app page on your site. Everything your team touches day to day lives on that one page; the WordPress admin is only for settings.
Fill in your Company Profile. Under PaintOps > Business, enter your business name, phone, email, and website. These appear on every quote, invoice, and email you send.
Review Job Categories. PaintOps ships with painting categories (interior, exterior, commercial, and so on). Each category can carry its own calculators, email phrasing, and reusable scope wording, so tune the list to match the work you actually sell.
Check Setup Health. PaintOps > Settings opens with a status board covering your app page, HTTPS, email deliverability, offline support, and optional keys. Green rows mean go; each yellow row links straight to its fix.
Put it on your phone. Open the app page on your phone and use the install prompt (or your browser’s Add to Home Screen). PaintOps works as an installed app with offline check-in support, which matters on jobsites with weak signal.
Optional keys. A Google Maps key turns on address autocomplete, geocoding, and map previews. Stripe keys Pro enable online card deposits. An OpenAI key Pro powers the AI photo estimator, receipt scanning, and quote write-ups. All three live under PaintOps > Settings, and none is required to start quoting.

2. Quotes, Estimates, Bids, and Jobs

Every piece of work in PaintOps is a record. A record starts as a request (something you might do) and becomes a Job (something you will do). When you create or edit a record you pick its current status:

Quote is a fixed price offer for a homeowner. Estimate is an approximate price you expect to refine. Bid is a formal proposal, usually to a general contractor, and its document says Inclusions instead of Description of Work. Job means it is won and schedulable.

PaintOps uses your chosen word everywhere: the document heading, the email subject, the buttons, the follow-ups. A contractor sending an Estimate never sees the word Quote on it. The app also remembers the status you picked last time and defaults new requests to it, since most companies quote the same way over and over.

3. Creating a request

Tap New Request in the app menu. Pick a customer you already have, or type a new one; with a Maps key set, the address autocompletes.
Pick the category and Work Areas. Ticking Interior, Exterior, or both filters the tools you see later, so an exterior repaint never offers you baseboard wording.
Write the job description. A rough note is fine here; the polished customer-facing wording happens on the quote document.
Tip. Once a record is marked as a Job, a Paint Colors table appears on its edit form for logging color, code, product, area, and sheen. Future touch-ups stop being archaeology.

4. Building and sending the quote document

Create the document. From the record, create its quote document. The Description of Work editor supports formatting, and the collapsed Scope wording helper above it can insert your standard lines for the category with one tick each.
Price it. Category calculators (walls, ceilings, exteriors, cabinets, and more) feed their numbers into an itemized card, and you can show the customer one total or an itemized breakdown. Your configured markup is applied automatically to suggestions.
Protect it. Add Exclusions so the boundary of the work is printed on the document, and tick any situational clauses that apply. Your Terms & Conditions from Business settings print on every document automatically.
Send it. Email or text the document. The message is editable before sending and includes a secure link where the customer can read, accept, and sign online. Every send is logged in the job’s Communications drawer, so “did we follow up?” always has an answer.
AI shortcuts Pro. Photograph a room and the AI photo estimator drafts dimensions, paint quantities, a supplies list, and starter wording. You can also ask AI for feedback on a description you wrote, or have it rewritten.

5. Winning the work

When the customer accepts online, the acceptance is stamped with their name and date. When they accept by phone or in person, open the record and mark it as a Job yourself; PaintOps records the win either way. The Job Board shows your whole pipeline as columns, from open requests through scheduled and completed jobs, and dragging a card between stages keeps the win and loss statistics honest in both directions.

Watch your acceptance rate. The Request Performance panel counts every request and every win by year, using the job’s scheduled date. If the rate is high, your prices may be low. If it is low, look at speed of quoting and follow-up before touching price.

6. Scheduling and the calendar

Set the start date and length. A Job carries a start date, a start time, and a number of days, and the calendar draws it across those days.
Assign the crew. Add Painters and Helpers to the job. They see their own jobs on their phones with directions, the schedule, and master notes, and never see your pricing or profit.
Record time off. The Time Off page blocks out vacation days (one time or repeating annually) so you do not schedule someone who is at the beach.
Glance at today. The dashboard shows today’s jobs with schedules, assigned workers, and anyone who is off today.

7. Running the job day to day

The job view is home base. A status chip tells you where the job stands in time (Starts in 3 days, Day 2 of 4, Completed). Below it: customer contact, address, schedule, the assigned crew with one-tap call and text, and the description of work the customer actually signed.
Master Notes. A pinned box for gate codes, parking, pets, paint staging, and quiet hours. Everyone on the job reads it; only staff edit it.
Time Clock. Crew members check in and out on the job itself, and the hours flow straight into that job’s labor cost. It works offline and syncs when signal returns.
Photos and add-on work. Attach before and after photos, pair them into comparisons, and schedule callback or add-on visits (paint the porch too, for $800) that keep their own price and paperwork.

8. Expenses, hours, invoices, and payments

Log expenses at the store. The Add Expense page takes a photo of the receipt (or a PDF), and with AI enabled Pro one tap reads the photo and fills in the vendor, category, amount, and date for you to double-check. Vendors are remembered in a dropdown so spellings never drift.
The Financials page. One page per job with the profit tiles up top and collapsible sections for Billable, Payments, Hours, Invoices, and Expenses, each showing its totals while closed (Due $2,400, 120 hours logged). One Save button saves everything.
Invoices and getting paid. Create an invoice for the remaining balance, include job photos if you like, and print it or send it. With Stripe connected Pro, customers pay deposits and invoices online by card on your own Stripe account, and the payment logs itself. Cash and check payments are logged in seconds, and completed jobs with a balance due appear on your dashboard until the money is in.

9. Profit and business reports

Pro Every job gets a real profit number: gross, expenses, labor from the time clock, margin, and profit per hour. The Profits dashboard rolls those up by year, by crew, by worker, and by job classification, so you learn which work actually pays. At tax time, the Business reports total your receipts by receipt date, print with the receipt images attached, and cover vehicle costs by either the mileage method or actual expenses, whichever you chose. Printable coversheets give your accountant a tidy packet instead of a shoebox.

10. Setting up your team

Add people. Under PaintOps > Painters/Helpers, Option A creates a new Painter/Helper and invites them in one step. Option B finds an existing WordPress user and adds the role to them.
Set rates and permissions. Each worker can carry an hourly rate (feeding labor cost), a phone number for on-site contact, and per-person permissions like uploading receipts. The Team Login Duration setting keeps crews logged in on their phones for weeks instead of every morning.
What workers never see. Pricing, profit, customer payment history, and other companies’ jobs. A painter’s view is their jobs, directions, schedule, check-in, and notes. That separation is built in, not a setting you could forget.

That is the whole loop: request, quote, win, schedule, work, collect, learn. Questions or stuck on a step? Get in touch.