For solo and small boat detailing and marine service businesses Do the visit. Send the report. Get paid.

A washdown every 2 weeks at the slip, a wash and wax on a 32-footer, a 100-hour service on a trailer. Schedule it, price it by the foot from your own list, send the owner a visit report, and bill each visit or the whole month, from your phone.

Available on the App Store and Google Play.

Start free

14 days free, no card to start.

Or get the app:

A job's visit log: Engine hours 289 h with "Last: 286" under the field; Battery 12.7 V with "Last: 12.7" under it; a note, "Compounded and waxed the hull and deck, cleaned the helm. Stern line is chafing at the cleat."; the line "Goes on the visit report you send. Keep codes and keys in the customer's Access field."; and six attached photos of a boat at a dock. Sample photos in a demo account. OnsiteBoard's Schedule screen on an iPhone: a day of boat service jobs in arrival windows, a washdown at a marina slip, a wash and wax with a $704.00 balance due and a Remind button, a one-time detail wash at a dry stack rack, a 100-hour outboard service on a trailer in a driveway and an engine flush on a lift, with an amber New job button. Service templates in Settings: the boat service list with starting prices. Washdown — wash and dry $5.00/ft, Monthly boat care plan (wash, checks, engine run) $15.00/ft, Boat check visit $75.00, Engine flush / run, per engine $50.00, Detail wash, one time $12.00/ft, Wash and wax $22.00/ft, and more below.
  • Schedule in time windows
  • 19 boat services, your prices
  • Visits on repeat
  • Washing and detailing by the foot
  • Invoices by visit or by month
  • Reports and what's owed

One day with OnsiteBoard

Five things you already do, in one app.

  1. Book.

    Customers pick a day and a window on your booking link. Or paste their text, "Wash every two weeks, 24 ft center console on a lift…": name, phone, address and the job fill in for you to check. Either way it lands in the app, and you confirm the booking.

  2. Drive.

    Tap On my way. The status changes, a text to the customer opens with your message already written, and navigation opens to the address.

  3. Do the work.

    Add Wash and wax and type the length: 32 ft × $22.00 = $704.00. Then open the visit log on the job and type the engine hours and the battery reading as plain numbers, with a note.

  4. Report.

    Owner not at the boat? Take photos on the job and send the visit report: a link the customer opens showing the services on the job, your readings as you typed them, your note and the photos you choose; no prices.

  5. Get paid.

    Bill each visit, or send one invoice for the month, by text or email, with your terms at the bottom. The customer can pay by card from the link. Card payments run through Stripe; its standard fees apply. Cash or check? Record it on the job.

What's in the box

Everything you need. Nothing you don't.

  • Your day, in time windows

    Jobs sit in the arrival windows you set, 8–10, 10–12, and so on, with a reminder before each one.

  • Booking requests from your link

    Customers pick a day and a window on your booking link. Or paste their text, and the name, phone, address and job fill in for you to check.

  • Boat services, ready to go

    Nineteen common jobs to start from, a $5-a-foot washdown to a $675 100-hour outboard service, each with a starting price you change in Settings.

  • Visits on repeat

    Weekly, every 2 weeks, monthly and longer, on the day or days you pick. Pause the visits, skip one or stop them, customer by customer.

  • Feet, counted

    Washdown, detail wash, wash and wax, compound and wax and ceramic coating start as per-foot lines. Type the length and the line reads 32 ft × $22.00, on the job, the invoice and the PDF.

  • A log for every visit

    Engine hours and the battery reading as plain numbers, and a note. The number from the customer's last logged visit shows under each reading.

  • A visit report by link

    For the owner who isn't at the boat: a link the customer opens showing the services on the job, your readings as you typed them, your note and the photos you choose; no prices. Nothing is shared until you send it.

  • One invoice for the month

    Bill each visit, or the month: a flat amount, or the month's completed visits added up. Monthly invoices wait in a list, ready for you to send.

  • Couldn't service, with the reason

    Boat was out, dock locked, weather: close the visit with the reason. On a monthly invoice the visit is named with its reason.

  • Dock codes stay with you

    The customer card has an Access field that only you see. It is not printed on the invoice or the visit report.

  • Awaiting part

    The impeller is on order. Mark the job Awaiting part, and the status shows on the job. The browser dashboard lists the jobs waiting on a part.

  • Draft from your notes

    Tap Draft and service lines are proposed from the job's notes for you to check. Prices come from your list only; you edit and save.

  • Remind in one tap

    Finished jobs that still owe money show the balance in red on your schedule, with a Remind button that writes the text for you.

  • Paid by card, no reader

    Customers can pay the invoice by card from a link and can add a tip. Card payments run through Stripe; its standard fees apply.

  • Customers and their jobs

    Search by name, street or phone, see every past job, import from a spreadsheet or CSV, export any time.

Also in there: hourly labor at your rate, on any service line · Boat, Location, Found and Service blanks on most service lines · estimates the customer signs on your phone or from a link · a deposit on any estimate · one-tap On my way, with a ready-made text and navigation · the day's stops in the order you drive them · alerts when a customer books, signs or pays · message templates · a PDF of every estimate and invoice · reports by week, month or year · in the phone app, jobs that save without signal and sync when you're back in range · Caller ID on iPhone · your trade in Settings, so the service list and the assistant fit boat service.

Priced by the foot. Type the length, the price follows.

A 24-foot bay boat and a 38-foot cruiser are not the same wash, so washing and detailing lines count feet. Engine work stays flat or hourly.

  1. Pick the service.

    Washdown is $5 a foot on your starting list, a one-time detail wash $12, wash and wax $22, compound and wax $35 and ceramic coating $75.

  2. Type the length.

    The length goes in as the quantity: 32 ft × $22.00 = $704.00. The line reads the same on the job, the invoice and its PDF.

  3. Engine work, flat or hourly.

    A 100-hour outboard service is $675 per engine, an engine oil and filter change $150, a water pump / impeller service $299 and a service call $75. Marine labor is $125 an hour.

  4. Say which boat, and where it sits.

    Most service lines start with Boat, Location, Found and Service blanks: "Boat: 19 ft skiff, single 115 hp outboard", "Location: Driveway, on the trailer". A blank you leave empty doesn't print.

The length is the number you type on the line. OnsiteBoard doesn't measure the boat and has no separate boat record. Every price here is a starting point you change in Settings.

Start free trial
Service templates in Settings: Washdown — wash and dry $5.00/ft, Monthly boat care plan (wash, checks, engine run) $15.00/ft, Boat check visit $75.00, Engine flush / run, per engine $50.00, Detail wash, one time $12.00/ft, Wash and wax $22.00/ft, each with edit and delete buttons. A job for a demo customer at a marina slip, scheduled 10am–12pm, with one service: Wash and wax, 32 ft × $22.00, $704.00, and a subtotal of $704.00.
Wash and wax at $22.00 a foot on the list, and the same service on a job: 32 ft × $22.00.

The owner is not at the boat. Log the visit, send the report.

The same boats on a schedule, and an owner who may be hundreds of miles away. Set the visits once, log each one on your phone, and send a report by link.

  1. Put the visits on repeat.

    Tap Make recurring on a job. Pick how often, for example every 2 weeks, the day or days, the arrival window and a start date. The next visits show before you save.

  2. Log the visit.

    Open the visit log on the job and type the engine hours and the battery reading as plain numbers, with a note. Under each reading the app shows the number from the customer's last logged visit: "Last: 286".

  3. Send the visit report.

    It is a link the customer opens showing the services on the job, your readings as you typed them, your note and the photos you choose; no prices. Label a photo Before or After if you want. Send the link by text or email, or copy it.

  4. Set an off-season.

    On weekly schedules, a slower rhythm, or no visits, for part of the year. On monthly and longer schedules, no visits for part of the year.

The readings are the numbers you type. OnsiteBoard shows them as you typed them and adds nothing to them. Nothing is shared until you send it, and you can turn the link off. Keep dock codes and key locations in the customer's Access field, not in the note: the note goes on the report. The photos shown here are sample photos in a demo account, not a customer's result.

Start free trial
The visit report as the customer sees it, from the demo business Harbor Line Boat Care: the visit's date and the slip; the service on the job, Compound and wax; Readings: Engine hours 289 h, Battery 12.7 V, and the line "Readings taken at the time of service, for your information."; the note, "Compounded and waxed the hull and deck, cleaned the helm. Stern line is chafing at the cleat.", and under it "Noted during the visit, for your information. Not an inspection."; and the first Before photos.
Further down the same report: three Before photos and three After photos of a center console boat at a dock, and the footer "Prepared by Harbor Line Boat Care for this address. This link is private; please don't forward it." with the date the link stops working.
The customer's page, top and bottom. Sample photos in a demo account.

Boat was out. Close the visit with the reason.

You drove to the slip and the boat was gone, or the dock was locked. Close the visit with the reason on record.

  1. Tap Couldn't service.

    It's on the job, next to the status.

  2. Pick the reason.

    Boat was out · No access / dock locked · Weather · Marina did not allow access · Customer asked to skip · Other, in your own words.

  3. Choose the charge.

    You choose: no charge, a trip fee or the full price. Then close the visit.

  4. It's named on the monthly invoice.

    On a monthly invoice the visit is named with its date and reason: "Sep 17 · Boat was out".

The app records the choice you make on each visit; it doesn't make it for you. Charge a trip fee or the full price only if your customer agreed to it beforehand.

Start free trial
A washdown visit with the question "Couldn't service — why?" and the reasons: Boat was out, No access / dock locked, Weather, Marina did not allow access, Customer asked to skip, Other. The next question on the same recurring visit: "Charge for this visit?" with No, Trip fee and Full, and Cancel and Close visit buttons.
The reason first, then the charge: No, Trip fee or Full.

One invoice for the month.

Set a customer's recurring visits to Monthly billing, and the month goes out on one invoice.

  • A flat amount, or the visits added up. Enter a flat amount per month, or leave it empty and the month's completed visits are added up.
  • Every visit dated. Added up by the visit, each washdown is its own line with the feet and the date under it: 24 ft × $5.00, Sep 3. With a flat amount, one line lists the month's visit dates.
  • The missed one is named. A visit you closed as Couldn't service shows with its date and reason: Not serviced, Sep 17 · Boat was out.
  • The month on the invoice. The invoice header reads "Service period: September 2026".
  • Drafted after the month ends. The invoice waits in a ready-to-send list. If the month had fewer visits than planned, you pick before it goes out: full month, prorated or per visit.
  • Sent like any invoice. By text or email, as a link. The customer can pay by card from the link. Card payments run through Stripe; its standard fees apply.
Start free trial
The month's services for one demo customer: Washdown — wash and dry, 24 ft × $5.00, $120.00, three times, dated Sep 3, Sep 10 and Sep 24; a Not serviced line, Sep 17 · Boat was out, $0.00; subtotal $360.00. The same month as an invoice ready to send by SMS or email, from the demo business Harbor Line Boat Care, Service period: September 2026: three Washdown — wash and dry lines, 24 ft × $5.00, $120.00 each, dated Sep 3, Sep 10 and Sep 24, a Not serviced line, Sep 17 · Boat was out, $0.00, and a balance due of $360.00.
A month of washdowns for one customer, and the invoice it becomes.

Engine work: signed first, deposit up front, part on order.

A job with one service, 100-hour outboard service, per engine, $675.00, with Boat: 19 ft skiff, single 115 hp outboard, Location: Driveway, on the trailer, and Service: engine oil and filter, gear lube, fuel filter, spark plugs, water pump check, grease points; a Deposit card, Asked up front $200.00, Not received yet, with Edit and Record deposit buttons; total $675.00, signed for $675.00.

The estimate, signed on the phone.

A 100-hour outboard service at $675. The customer signs for the total on your screen, and the estimate asks for $200 up front. Record the deposit as cash or check, or the customer can pay it by card from the estimate link. Card payments run through Stripe; its standard fees apply.

A job at a marina slip with the status Awaiting part and two services: Service call $75.00 and Water pump / impeller service $299.00.

Awaiting part.

You opened it up and the impeller has to be ordered. Mark the job Awaiting part. The browser dashboard lists the jobs waiting on a part.

A Book Online button for your website.

Every account comes with its own booking page. Put the link behind a button on your website, your business listing or your social pages, and customers send a booking request for a window you're free; you confirm it with one tap.

  • Your windows. The page offers the arrival windows you set in Settings, and nothing else.
  • Only times you're really free. The page reads your schedule, including jobs you put in by hand, so a customer can't book on top of work you already have.
  • Notice you control. Set the earliest day in Settings: one day means a full 24 hours from the moment they book.
  • It lands in the app for you to confirm. Name, phone, address and what they need done, in the arrival window they picked, with an alert on your phone. Tap Confirm booking and the customer gets their confirmation email.
  • Written for your trade. For boat service the notes box asks "What does the boat need?" and its example is a boat job.
  • One window, one request. Two people on the page at once can't both take the same window.
<a href="https://onsiteboard.com/book/your-link">Book online</a> Copy your own link from Settings → Your online booking link.
Start free trial
The customer's booking page for the demo business Harbor Line Boat Care in a phone browser: fields for name, phone, email and address, a "What does the boat need?" box with the example "24 ft center console on a lift, wash every two weeks, or 100-hour service on a 150 hp outboard", and arrival windows for the next days, some of them booked and crossed out.

Two small things you'll use every day.

An incoming call on an iPhone showing the customer's name, Jennifer Walsh, under the number, identified by OnsiteBoard.

Know who's calling.

Your customers' names show on incoming calls, even when they're not in your contacts. iPhone only.

New customer: a pasted text asking for a wash every two weeks for a 24 ft center console on a lift, the Fill in from message button, and what it filled in for you to check: a demo customer, Dana Brooks, a 555-01xx phone number, 14 Example St., and the note "Wants a wash every two weeks for a 24 ft center console on a lift."

A text becomes the customer.

Paste the message and tap Fill in from message. "Wash every two weeks, 24 ft center console on a lift…" becomes the customer's name, phone and address, with the job in the notes, for you to check. Save, then add the job.

Same account. Bigger screen.

The browser dashboard is for the evening at the desk: the week, the quotes, and who still owes you.

  • Today at a glance. What's on today, what came in this week, what's outstanding.
  • The week as a grid. Your time windows down the side, days across. An empty cell is a free window.
  • Today's stops, in order. The drive between each pair in miles and minutes, and a map, all estimated from the addresses on the jobs.
  • Needs attention. Unpaid invoices by age, jobs waiting on a part, and payments and bookings as they come in.

Nothing to install. Same sign-in as the phone. Book jobs, edit customers, send invoices, run reports and export CSV, with a keyboard.

Bring your customers and jobs with you.

Export a customer list or a job history from your old app or spreadsheet, as .xlsx or CSV, and pick it in Customers. A job history comes in too: each past job with its total and payment, so your work history and revenue reports are there from day one. OnsiteBoard works out which kind of file it is and shows you what it found before anything is imported.

It's built not to double anyone up. Every row is matched against the customers you already have — by phone number first, then by name and address. A match only gets its blank details filled in, nothing you typed is overwritten, and a repeat is skipped. Run the same file twice and you get the same customers, not two of each. Everything exports back out any time.

The Import data preview: what OnsiteBoard found in the file, before anything is added.
The Import data preview: what OnsiteBoard found in the file, before anything is added.

One plan. Every feature.

Try all of it free for 14 days. No card needed to start.

OnsiteBoard Pro
$49.99/mo

or $479.00 a year (about $39.92/mo). Save about $120 a year with the yearly plan, compared with paying monthly.

  • Online booking, signatures and payment reminders are in the one plan. No add-ons, no higher tier.
  • 14 days free, no card to start
  • iPhone, Android and the browser dashboard, one account
  • Cancel anytime in your App Store or Google Play settings

Billed through the App Store or Google Play; renews until you cancel. You can start in a browser. The plan itself is bought in the iPhone or Android app. After the trial, without a plan, your jobs, customers and invoices stay viewable and exportable. Creating new work and sending documents by email from OnsiteBoard need a plan. Stripe's card processing fees are separate.

More on this: Card payments · Online booking · Payment reminders · Import customers · Move your data from another app · Job estimate template

Questions boat service operators ask

Can I price by the foot?
Yes. Washdown ($5), detail wash ($12), wash and wax ($22), compound and wax ($35) and ceramic coating ($75) are on your starting list at a price per foot. Type the length as the quantity and the line total is worked out. The line reads "32 ft × $22.00" on the invoice, the PDF and the customer's page. Change any price in Settings.
Does the app know my customer's boat length?
Only as the number you type on a service line. OnsiteBoard doesn't measure the boat and has no separate boat record. Recurring visits keep their own service lines, so a length you set there stays on each visit.
Can I set up visits that repeat?
Yes. Tap Make recurring on a job, or add recurring visits from the customer. Pick weekly, every 2, 3 or 4 weeks, or monthly and longer, the day or days of the week, the arrival window and a start date. You can pause the visits, skip one, or stop them.
What goes in the visit log?
On a boat service job the visit log has two readings, Engine hours and Battery, typed as plain numbers, plus a note. Under each reading the app shows the number from the customer's last logged visit, as "Last: 286", so you see it while you work.
Does the app say anything about my readings?
No. It shows the numbers you typed, as you typed them.
What does the customer get after a visit?
Only what you send. The visit report is a link the customer opens showing the services on the job, your readings as you typed them, your note and the photos you choose; no prices. Nothing about a visit is shared until you tap Text, Email or Copy link for that visit, and you can turn a link off.
Can I bill once a month?
Yes. Set a customer's recurring visits to Monthly billing. Enter a flat amount per month, or leave it empty and the month's completed visits are added up. After the month ends its invoice is drafted and waits in a ready-to-send list. If the month had fewer visits than planned, you pick before it goes out: full month, prorated or per visit.
The boat was out when I got there. What do I do with the visit?
Tap Couldn't service and pick the reason: boat was out, no access / dock locked, weather, marina did not allow access, customer asked to skip, or your own words. Then choose whether to charge: no, a trip fee, or the full price. On a monthly invoice the visit is named with its reason. Charge a trip fee or the full price only if your customer agreed to it beforehand.
Where do I keep the dock code?
In the customer's Access field. Only you see it, on the customer and job cards. It is not printed on the invoice or the visit report. Keep codes out of the visit note: the note goes on the report.
Are the service prices set for me?
They're a starting point. You get nineteen common boat services, among them washdown at $5 a foot, wash and wax at $22 a foot, compound and wax at $35 a foot, ceramic coating at $75 a foot, a service call at $75, a 100-hour outboard service at $675 per engine, an engine oil and filter change at $150 and marine labor at $125 an hour. Change the names, prices and descriptions in Settings, add your own, or delete what you don't do.
Where do I note the boat and where it sits?
On the service line. Washdown, wash and wax and most other services start with Boat, Location, Found and Service blanks. Filled in, they print under the line on the invoice, the PDF and the customer's page. Left empty, they don't print.
Can I change a customer's price without changing past visits?
Yes. Edit the recurring visits, change the price and pick the day the new price starts. Visits before that day stay at the old price.
Can I move a whole day?
Yes, for a day of bad weather. Move every visit that hasn't started from one day to another, with the same arrival windows. The app then lists those customers with a text written for each one. You send each text yourself.
Can I put the day's stops in my own order?
Yes. Drag the stops into the order you drive them and save. Recurring visits keep their place the next week.
What about the off-season?
Weekly schedules have an off-season setting: a slower rhythm, such as every 2, 3 or 4 weeks, or no visits, for part of the year. Monthly and longer schedules can have no visits for part of the year.
Can I charge by the hour?
Yes. Turn on Charge by the hour on a service line and enter the hours and your rate; the line total is worked out to the cent as you type. The hours show under the line on the invoice. Marine labor, $125 an hour, is on your starting list.
A part is on order. How do I keep track of the job?
Mark the job Awaiting part. The status shows on the job, and the browser dashboard lists the jobs waiting on a part.
Can I take a deposit before a bigger job?
Yes, on any estimate: a percentage of the total or any amount. Record it as cash or check, or the customer can pay it by card from the estimate link. Card payments run through Stripe; its standard fees apply. When the estimate becomes the invoice, the deposit already counts as paid and the customer sees the balance. Check your state's rules before you set one.
Does it work for other trades?
Yes. You pick your trade when you sign up: appliance repair, auto detailing, boat service, dryer vent cleaning, electrician, garage doors, gutters, handyman, house cleaning, HVAC, irrigation / sprinklers, lawn care, locksmith, pest control, pet waste removal, plumbing, pool service, pressure washing and window cleaning are supported. It sets your starting service list and how the assistant reads customer messages and drafts services. You can change it later in Settings; a service list you've edited stays unless you choose to replace it.
Do I need a card reader?
No. The customer can pay by card from the invoice link, on their own phone or computer. Card payments run through Stripe; its standard fees apply. You never handle the card, and OnsiteBoard doesn't add a fee of its own.
Does it work offline?
In the phone app, partly. With no signal you can open your jobs, add a job and change its time; it syncs when you're back in signal. A job's services and parts open with a signal the first time; after that you can change them, and record a cash or check payment on its invoice, without one. The customer's signature, job photos, sending an estimate or invoice, card payments, the assistant (reading a message, drafting services) and the map need a connection, and so does the browser dashboard.
Can I import my customers?
Yes, from a spreadsheet (.xlsx) or a CSV file: export one from your old app and pick it in Customers. OnsiteBoard works out whether the file is a customer list or a job history and tells you what it found before anything is imported. Names, phones, emails and addresses come in. Rows are matched to customers you already have by phone, then by name and address: a match gets its blank fields filled in and nothing overwritten, a repeat is skipped, so importing the same file twice doesn't double anyone.
What about Android?
The Android app is on Google Play, with the same account as the iPhone app and the browser dashboard. One difference: Caller ID is an iPhone feature.
Can my customer pay without an account?
Yes. The invoice link opens in their browser, with no app and no sign-up. They can sign, add a tip if they want, and pay by card. Card payments run through Stripe; its standard fees apply.
What happens after the trial?
Nothing is charged when the trial ends: there is no card on file. You pick monthly or yearly in the app. If you don't, nothing is deleted: your jobs, customers and invoices stay viewable and exportable. Creating new work and sending documents by email from OnsiteBoard need a plan.
Is my data mine? Can I export it?
Yes. Export your customers and your payments as CSV, save or print any estimate or invoice as a PDF, and delete your account from Settings whenever you want.
Do you track my location?
No. The app never asks for it. Drive times between stops are estimated from the addresses on your jobs, and "On my way" and "Arrived" are times you tap yourself.
Can it draft my invoice?
Tap Draft on a job and OnsiteBoard proposes the service lines from the job's notes and your own service templates, each written up as Boat, Location and Service, for you to check. Prices come only from your templates. On a per-foot line, check the length. You change anything and save.
A customer texted me instead of booking. Do I retype it?
No. Copy the text, open a new customer or job, paste. The name, phone, address and the job fill in for you to check. Then save.

Free boat service invoice templateFree boat service estimate template

Start with tomorrow's jobs.

Download OnsiteBoard, pick Boat service when you sign up, add tomorrow's jobs, and send your first invoice from the truck. 14 days free, every feature, no card to start.

Start free

14 days free, no card to start.

Or get the app:

Available on the App Store and Google Play.