Find Your Next Boat. Anywhere.

Canadian inventory available · Worldwide sellers welcome.

Canadian boats are listed and available today. Sellers worldwide are welcome to list with us — our first expansion focus is the United States, especially Florida, and international listings will appear here as sellers join.

Boat Type (e.g. Motor Yachts, Sailboats)
Region or Marina (e.g. Ontario, West Coast Canada, Atlantic Canada)

Free boat listings. We review enquiries and help connect interested buyers with the appropriate seller. Buyers and sellers arrange their own inspections and transactions.

Recently Listed

Browse current listings from private sellers and brokers, with full specifications and asking prices.

2016 Princecraft Ventura 194

19.2 ft | Saskatoon, Saskatchewan | $49900 CAD

Arrow Arrow sport

Noëlville, Ontario | $5000 CAD

1996 Hunter 26

26 ft | Guelph, Ontario | $11000 CAD

1984 Bayliner 3270

Kemptville, Ontario | $17500 CAD

2000 Maxum 2800 SCR

Port Moody, BC | $38500 CAD

1974 C&C 35 Mk II

35 ft | Chéticamp, NS | $7500 CAD

Popular Ways to Browse

Start your search with the boat types and locations yacht buyers look at most.

Three simple steps

How Yacht Pact Works

Whether you are buying or selling, YachtPact keeps it simple: browse, get introduced, and deal directly with the other party.

Step 1 — Find a Boat

Browse listings and compare specifications, asking prices, and locations.

Step 2 — Contact the Seller

Send an enquiry through YachtPact to connect with the owner or broker.

Step 3 — Arrange the Next Steps

Arrange viewings, independent marine surveys, and transaction details directly with the seller.

YachtPact is an online marketplace that helps buyers discover boats and connect with private sellers and brokers. Buyers and sellers arrange inspections, surveys, payment, and transaction details independently. YachtPact does not inspect boats, hold purchase funds, or act as the broker in a transaction. Terms

Why Yacht Buyers and Sellers Choose Yacht Pact

Canadian Listings

Browse boats located in Canada with asking prices in Canadian dollars.

Direct Connections

Connect with private sellers and brokers to ask questions and discuss available boats.

Free Seller Listings

List your boat without an upfront listing fee.

Buyer Safety Checklist

  • Verify ownership and documentation before paying
  • Arrange an independent marine survey
  • Inspect the boat in person or through your own representative
  • Check registrations and liens
  • Agree payment and closing arrangements directly with the seller in writing

YachtPact does NOT inspect or verify vessels, hold funds, or guarantee any sale.

Your Next Buyer Could Be Looking Right Now

Create a free listing, add your boat’s details and photographs, and connect with interested buyers. No upfront listing fee.

Already have an ad? We can help. YachtPact can prepare a draft listing from an existing advertisement for seller review before publication.

Discover New Boat Listings.

Receive updates about newly listed boats and useful boating information.

Subscription Form
/* VLT-YP-016 GA4 events - YachtPact (1) enquiry_submit: Fluent Forms ID 5 ("Listing Enquiry") on /enquire/, fired ONLY on a successful submission (Fluent Forms success event and/or the .ff-message-success confirmation appearing). Never fires on page view or on failed validation. (2) listing_enquiry_click: clicks on Enquire / Contact Seller CTAs on boat listing pages (single listings and the directory). No personal data is read or sent: no names, emails or message text. The existing GA4 tag (HFCM snippet 7, G-9W7E17FVPE) is untouched; this snippet only calls gtag('event', ...) if gtag exists. */ (function () { 'use strict'; var FORM_ID = '5'; function sendEvent(name, params) { try { if (typeof window.gtag === 'function') { window.gtag('event', name, params || {}); } else if (window.dataLayer && typeof window.dataLayer.push === 'function') { var p = params || {}; p.event = name; window.dataLayer.push(p); } } catch (e) {} } function getParam(name, href) { try { var u = new URL(href, window.location.origin); return u.searchParams.get(name); } catch (e) { return null; } } function absUrl(href) { try { return new URL(href, window.location.href).href; } catch (e) { return href || ''; } } function merge(target, source) { if (!source) return target; for (var k in source) { if (source.hasOwnProperty(k) && source[k]) { target[k] = source[k]; } } return target; } function contextFromEnquireHref(href) { var ctx = {}; var listing = getParam('listing', absUrl(href)); var listingId = getParam('listing_id', absUrl(href)); var listingUrl = getParam('listing_url', absUrl(href)); if (listing) ctx.listing = listing; if (listingId) ctx.listing_id = listingId; if (listingUrl) ctx.listing_url = listingUrl; return ctx; } function contextFromPage() { var ctx = {}; var path = window.location.pathname || ''; if (path.indexOf('/yachetdirectory/') === 0 && path.replace('/yachetdirectory/', '').replace(/\//g, '').length > 0) { var h1 = document.querySelector('h1'); if (h1 && h1.textContent) ctx.listing = h1.textContent.trim(); ctx.listing_url = window.location.href.split('?')[0]; } return ctx; } var enquiryFired = false; function form5Present() { return !!document.querySelector('form[data-form_id="5"], form#fluentform_5, .fluentform_wrapper_5'); } function onEnquiryPage() { return (window.location.pathname || '').indexOf('/enquire/') === 0; } function fireEnquirySubmit(source, detailFormId) { if (enquiryFired) return; if (detailFormId && String(detailFormId) !== FORM_ID) return; if (!onEnquiryPage() && !form5Present()) return; enquiryFired = true; var params = { form_id: FORM_ID, form_name: 'Listing Enquiry', source: source || 'unknown' }; merge(params, contextFromEnquireHref(window.location.href)); sendEvent('enquiry_submit', params); } function checkSuccessMessage() { if (enquiryFired) return; if (!onEnquiryPage() && !form5Present()) return; var scope = document.querySelector('.fluentform_wrapper_5') || document; var msg = scope.querySelector ? scope.querySelector('.ff-message-success') : null; if (msg && msg.textContent && msg.textContent.trim().length > 0) { fireEnquirySubmit('ff-message-success'); } } function startSuccessObserver() { if (!window.MutationObserver || !document.body) return; try { var observer = new MutationObserver(function () { checkSuccessMessage(); }); observer.observe(document.body, { childList: true, subtree: true }); } catch (e) {} } function successEventHandler(e) { var detailFormId = null; try { if (e && e.detail && e.detail.form_id) detailFormId = e.detail.form_id; if (!detailFormId && e && e.detail && e.detail.formId) detailFormId = e.detail.formId; } catch (err) {} fireEnquirySubmit('fluentform_submission_success', detailFormId); } document.addEventListener('fluentform_submission_success', successEventHandler); window.addEventListener('fluentform_submission_success', successEventHandler); try { if (window.jQuery) { window.jQuery(document).on('fluentform_submission_success', function (ev, form) { var fid = null; try { if (form && form.data) fid = form.data('form_id') || form.attr('data-form_id'); } catch (err2) {} fireEnquirySubmit('fluentform_submission_success', fid); }); } } catch (e) {} startSuccessObserver(); checkSuccessMessage(); document.addEventListener('click', function (e) { try { var target = e.target || null; if (!target || typeof target.closest !== 'function') return; var a = target.closest('a[href]'); if (!a) return; var href = a.getAttribute('href') || ''; var isEnquire = href.indexOf('/enquire/') !== -1; var chatMatch = href.match(/chat=p(\d+)/); var isContactSeller = href.indexOf('/inbox/') !== -1 && !!chatMatch; if (!isEnquire && !isContactSeller) return; var onListingPage = (window.location.pathname || '').indexOf('/yachetdirectory/') === 0; var ctx = {}; if (isEnquire) { ctx = contextFromEnquireHref(href); } else { ctx = contextFromPage(); if (chatMatch) ctx.listing_id = chatMatch[1]; } if (!onListingPage && !ctx.listing_id && !ctx.listing) return; var text = (a.textContent || '').replace(/\s+/g, ' ').trim(); var params = { cta_type: isEnquire ? 'enquire' : 'contact_seller', cta_text: text ? text.slice(0, 80) : '' }; merge(params, ctx); sendEvent('listing_enquiry_click', params); } catch (err) {} }); })();