Free embeddable widget
Put live market data on your boat listings
A small panel showing how a boat’s asking price compares to the market for its model and year, from 135,302+ tracked listings across 126 models — counted as distinct boats, not raw listings. One snippet, whole site. No account, no fee, no iframe.
See it with your own boat
Select an example boat to preview the panel — these controls are for this page only, not part of the snippet you paste.
Figures are Hulls’ GBP-sourced market data. The currency control sets what the snippet writes for your listings — it doesn’t convert these figures.
<div data-hulls-widget></div>
<script src="https://hulls.io/embed/v1/widget.js" async></script>One line across your whole site. Each listing page identifies its own boat, currency and theme from the markup you already have — and shows nothing if it can’t confidently match a tracked model.
Awkward page? Set the boat explicitly (always overrides detection)
<div data-hulls-widget
data-manufacturer="Lagoon"
data-model="42"
data-year="2016"
data-price="411346"
data-currency="GBP"></div>This is what the live preview above uses (the picker drives it), since this page isn’t a listing to detect from. data-currency is your listing currency; data-theme pins light or dark (omit it to follow the visitor’s device).
What to expect
The panel appears where the widget can confidently identify a tracked model with enough data behind it. On any other listing it renders nothing at all — no empty box, no error, no gap in your layout.
Coverage depends on your stock. We track around 126 production models — cruisers, sportsboats and catamarans from builders like Sea Ray, Beneteau, Sunseeker, Lagoon, Jeanneau and Fountaine Pajot — and a panel shows on roughly 100 of them, wherever the data runs deep enough to be worth showing. If you sell mostly superyachts, one-off vessels or rarer imports, expect it on few of your listings. The tracked list grows as the dataset does.
Not sure? Send us your website and we’ll tell you how many of your current listings would show a panel — before you paste anything.
The terms, plainly
- • Free — there is no charge to embed it, and no fee paid in either direction.
- • What it collects. When the panel appears on one of your listings, it records just four things — the boat’s model and year as already printed on that page, your site’s domain, and the date it was seen. That is the entire list. It does not record the asking price at this stage (a later phase may, and only with named partners).
- • What it’s for. Knowing which models appear, and where, tells us which boats to prioritise for market-data coverage — every listing a panel shows on, even ones we can’t yet show data for, helps us cover more boats.
- • Nothing about your visitors. No names, no emails, and no IP addresses are recorded — no analytics or tracking of the people browsing your site. Only the boat’s model and year, your domain, and the date.
- • How long, and opting out. Observations are kept for up to 24 months from when a listing was last seen. Opt out any time: add
data-noingestto the widget div to stop it immediately (the panel keeps working), or email us your domain and we’ll exclude it. If you opt out, your domain’s existing observations are deleted. - • No account needed. Copy the snippet and paste it. That is the whole process.
- • Link it however you like. The widget carries one plain “Hulls.io” link back to the model’s data page — a normal followed link by default. If you’d rather it didn’t pass SEO signal, add
data-nofollowto the widget div and the link renders withrel="nofollow". Your choice, never a condition of use. - • It won’t break your page. It renders in an isolated shadow root, so your CSS and ours never collide. If our data or server is unavailable, it renders nothing rather than a broken box.
How the figures are derived
These are asking prices, not sale prices. We track live and historical listings and compute, per model and model-year, the median asking price and the interquartile range (the middle 50% of asking prices). The widget places a boat’s asking price against that band for its year.
Every figure is shown with its sample size — the number of distinct boats it was computed from (repeat scrapes and cross-site duplicates of the same boat are merged first). A model or year with too little data is omitted rather than shown as a guess. The current snapshot is April 2026, covering 135,302 listings across 126 models.
The full underlying dataset is documented at market intelligence.
