For HVAC and sheet metal fab shops · Free, no meeting, no commitment
Shops that price by feel bill the same part at different numbers job to job, and it never shows up anywhere. Send one export of your charged history and we send back every part it is happening on, ranked by dollars at stake. Yours to keep either way.
No install, no screenshare, no sales call. Reply to the email this page came from with the export attached, or email ryan@ductly.ai, and the report comes back to you.
A size chart for straight duct, material times a multiplier for fittings, a feel for the fiddly stuff. Every shop has a version of it, and everyone who quotes carries a slightly different one in their head.
Quotes go out over the phone and in email replies. Nothing captures them, so nothing ever puts two prices for the same part side by side. The drift stays invisible until someone lines it up.
Your regular customers order the same fittings again and again. When the price moves, guess which number they remember. The low quote quietly becomes the list price.
01 · The fix
The report shows the leak. Ductly closes it: it reads the drawings your customers actually send, handwriting included, prices every line off your own rate card, and runs the job from quote to cash. One number for the same part, every time.
02 · Your job, easier
Pricing jobs after dinner. Typing the same order into three places. Chasing what got promised on the phone. That's the part of the trade that follows you home, and it's the part Ductly takes. Four things change on day one:
A senior estimator spends 30 to 60 minutes pricing a page. Ductly drafts it in minutes; your estimator reviews and approves every line. Your real number gets clocked on your own drawings during setup. We publish measured times, not promises.
The quote becomes the order, the order becomes the shop-floor traveler, the shipment drafts the invoice, the invoice feeds the books. No re-keying between systems, no transcription drift.
Nothing becomes an order until a human has reviewed every page with zero open flags. Committed orders freeze, money math runs in exact decimals, and corrections add a line instead of editing history.
Quotes, orders, deliveries, invoicing and AR, purchasing, stock, and accountant-ready books. One login, one customer record, one version of the truth.
03 · The math
$75-100K
That's what a senior estimator runs, call it $45 to $60 an hour with benefits on. Every hour of re-typing and paper-chasing bills at that rate. Ductly hands those hours back to the work only he can do.
2-6%
Industry average for fab work: wrong dims, re-keyed orders, quote-to-floor drift. Run your revenue against that spread. Our working target: under 0.5% inside six months, measured on your jobs, not asserted.
Year end
Real books all year mean the accountant stops reconstructing what happened and starts on what you actually pay them for: getting money out of the company with the least tax.
04 · How it works
That split is deliberate. The AI pulls every fitting off the page: type, dimensions, quantity, gauge, material. Prices come from one place only, the rate card you already trust.
Upload a photo, scan, or PDF. Or have customers email orders straight in, and the quote drafts itself before you open the message.
Handwritten dims, shorthand, sketches, item lists. Each field is tagged with where it came from. Anything uncertain gets flagged instead of guessed.
Review flagged lines, approve the page, convert. From there the job runs to cash: traveler, delivery, invoice, books. Your judgment stays in charge.
05 · See it run
The recorded pitch, start to finish. Watch it before you book anything, then bring one of your own drawings and we run it live.
06 · Proof
Anyone can demo their own sample data. Before we ask for a decision, we show the system working against your shop's real history.
During setup we load your rate card and re-run jobs you have already quoted. You compare our numbers to what you actually charged, line by line, before the system touches a live job.
The report this page opens with. Send an export of your charged history, and we send back every part you have billed at more than one price, ranked by dollars at stake. Yours to keep whatever you decide about the rest.
We're rebuilding their pricing from their real costs, the rate card everything else runs on. The software numbers publish here when they are measured, not before. If a vendor shows you a case study with round numbers and no shop name, ask how it was measured.
07 · Built for Canada
The incumbents are American quoting tools. Billing in Ontario has rules they have never heard of. Ductly was built inside them.
Holdback and its release get their own invoices, and the HST on held-back amounts defers the way the Excise Tax Act actually requires, not the way a US template guesses.
Sales and purchase registers, a period-locked GST34 prep panel, and a year-end package that ties to the trial balance. Ductly preps the books; your accountant still reviews and files.
Customers pay the way Canadians pay. E-transfer claims are tracked through the system, pay links are built in, and overdue balances chase themselves onto one aging board.
Tax is calculated correctly from the day you switch on, with your registration number printed where it belongs. No spreadsheet bolt-on, no catch-up cleanup at year end.
None of this is a promise about software that might ship. All four are in the product today.
No price field even exists in what the AI outputs. It reads the page. Your rate card, and only your rate card, turns that into dollars.
We do not quote accuracy percentages or time savings we have not measured on your drawings, in your shop. Setup is where the real numbers get established.
Every extraction goes to a human before it is used. The value is speed with your judgment kept in the loop, not a robot quoting unsupervised.
None of this ships today. It is where the system goes next, and the first shops shape it.
Finished fittings will go out as cut files for your plasma or laser table, built with the first shops that run them.
Owner, office, and floor will each get their own view — the owner sees margins and the whole business, staff see the work in front of them. Configured to your shop as part of setup.
Full blueprint sets will be read the way fitting drawings are today: drafted, flagged, and approved by your estimator.
08 · Who you're dealing with
When you call Ductly you get one of the two people whose names are on it, and both of them will be in your setup.
Ryan built every module of Ductly and runs the setup on every deployment. Questions about what the system can do get answered by the person who wrote it.
Evin spent three years pricing sheet metal work as an estimator. He runs the demos and keeps the system reading drawings the way a real estimator reads them.
09 · Straight questions
No. Setup configures the system to your rate card, your naming, your conventions. The incumbents make the shop bend to the software. Ductly bends to the shop. That is the whole point of it.
Handwritten dims, shorthand, and sketches are the normal case, not the exception. Reading gets validated on your own drawings during setup, and anything the system is not sure about gets flagged for your estimator instead of guessed silently.
Not yet, and we would rather tell you that here than have you find out in a demo. It is the next integration we build, and it gets built with our first shops that run tables: your table, your post-processor, your nesting software shape it. Until then, the finished quote and order come out as clean files your office works from. Our working plan: the first table wired in within six months of our first table-running customer.
No. Ductly can replace it, or sit in front of it as the quoting and intake layer: finished quotes and orders come out as clean CSV or Excel files your current system imports. Shops usually decide after seeing both options in the demo.
Your pricing is yours alone. Every tenant is fenced at the database layer, staff and customer and admin logins are three separate systems, and your rates are never used to price another shop's work. A shop with no rate card sees "Needs pricing" on every line — the system refuses to invent a number rather than borrow one. Exactly what runs where is written down in our data processing agreement. Ask and we'll send it.
We quote after we have re-priced some of your own past jobs in front of you, so the number lands next to what estimating actually costs you today. That takes one screenshare. Bring a drawing and your last few quotes.
Start free, decide after
Send one export of your charged history and the report comes back with every inconsistent price, ranked by dollars at stake. If the number at the bottom bothers you, bring a drawing and watch the system quote it live. The point of all of it: the paperwork stays at the shop, and the evenings go back to being yours.
Or just reply to the email this page came from, email ryan@ductly.ai, or call Ryan at 416-725-2062. A real person answers, and it is one of the two founders.