Free for AV teams

Quote faster.
Win more jobs.

QuoteAV is built for small AV integrators — residential and commercial. Track margins, generate proposals, and move quotes to won projects without the enterprise bloat.

  • Equipment, labor, and freight in one clean quote
  • Send professional proposals and work orders
  • Keep your margins healthy across every job

Create your free account

No credit card required. Start quoting in minutes.

{{ signupError }}

Already have an account?

Welcome back

Sign in to your QuoteAV account.

{{ loginError }}
New to QuoteAV?

Reset your password

Enter your email and we'll send a reset link.

Check your email

We sent a password reset link to {{ resetEmail }}. Check your spam/junk folder if you don't see it within a minute.

{{ resetError }}
© 2026 QuoteAV. All rights reserved.

Built for the way AV teams work

QuoteAV replaces spreadsheets and bloated enterprise tools with a focused quoting workflow designed for audio visual integrators.

Structured AV Quotes

Build quotes organized by room, system, and equipment — the way AV projects are actually designed and installed.

Professional Proposals

Generate clean, client-ready PDF proposals and work orders with your company branding in one click.

Margin Visibility

See your cost, sell price, and margin on every line item. No hidden math, no surprises — keep your margins healthy across every job.

AV Equipment Catalog

Search thousands of products from major AV manufacturers like Extron, Biamp, and Allen & Heath. Add to quotes instantly.

How it works

1

Add your products

Set up your equipment and labor rates, or search the built-in AV catalog.

2

Build your quote

Organize by room and system. Add equipment, labor, and freight to each.

3

Send and track

Generate professional proposals, track margins, and move quotes to won projects.

Frequently asked questions

What is QuoteAV?
QuoteAV is lightweight quoting software built specifically for small and mid-sized audio visual integrators. It helps you create structured quotes organized by room, system, and equipment, generate professional proposals and work orders, and track margins across every job — without the complexity or cost of enterprise AV software.
How much does QuoteAV cost?
QuoteAV is free to use — 10 active quotes, 50 products, 10 clients, and clean professional proposals with no watermarks. That's enough to run real jobs. If your business outgrows the free plan, Premium ($29/mo) removes all limits and adds your company logo to proposals and invoices.
What is AV quoting software?
AV quoting software is a specialized tool that helps audio visual integrators create accurate project quotes and proposals. Unlike generic spreadsheets or enterprise ERP systems, AV quoting software understands AV-specific workflows — rooms, systems, equipment, labor — so your quotes match how projects are actually designed and installed.
Who is QuoteAV for?
QuoteAV is built for small to mid-sized AV integration companies with 2 to 50 employees — both residential and commercial. It's ideal for hands-on owners, sales leads, or design engineers who manage quotes themselves and want a simple, affordable tool without the overhead of enterprise software.
Do I need to install anything?
No. QuoteAV is a web application that runs entirely in your browser. There's nothing to install, no servers to manage, and no IT setup required. Create a free account and start quoting in minutes.
Can I generate professional proposals?
Yes. QuoteAV generates clean, client-ready PDF proposals and work orders with your company branding. Proposals include itemized equipment, labor, and freight organized by room and system — ready to send to your clients.

QuoteAV

Simple AV quoting software for small integrators.

© 2026 QuoteAV. All rights reserved.

About QuoteAV

QuoteAV is built specifically for small and mid-sized AV integrators.

It helps you create clean, structured quotes without dealing with bloated enterprise systems or generic tools that don’t match how AV projects are actually designed.

Everything revolves around the quote — rooms, systems, equipment, and labor — so what you design is exactly what your client sees and what your team installs.

You control your pricing.

  • You set your costs
  • You define your margins
  • Adjust per project or client

QuoteAV handles the structure and presentation so you can move faster and quote with confidence.

Verify your email — check inbox & spam

Syncing QuoteAV Cloud...

Projects

Won quotes — {{ wonQuotes.length }} active installation{{ wonQuotes.length !== 1 ? 's' : '' }}

{{ project.quoteNumber }}
{{ project.jobName || 'Untitled Project' }}
{{ project.customer?.company || '—' }} {{ formatCurrency(calculateQuoteTotal(project).systemTotal) }}

No projects found

Try changing your filter or search

{{ client.company }}
{{ client.contactName }} · {{ client.title }}
{{ client.email }}
{{ client.city }}, {{ client.state }}
{{ quotes.filter(q => q.clientId === client.id).length }} quote(s)

No clients yet

Add your first client to get started

Clients

{{ clients.length }}/{{ FREE_LIMITS.clients }}

{{ clients.length }} client{{ clients.length !== 1 ? 's' : '' }}

{{ client.company }}
{{ client.contactName }} · {{ client.title }}
{{ client.email }}
{{ client.city }}, {{ client.state }}
{{ quotes.filter(q => q.clientId === client.id).length }} quote(s)

No clients yet

Add your first client to get started

Dashboard

Open quotes you're working to win.

{{ activeQuoteCount }}/{{ FREE_LIMITS.activeQuotes }} active
Exploring with demo data ·

Create your first quote

Add equipment, set your markup, and generate a professional proposal — all in a few minutes.

Equipment & labor Proposals & work orders

Open Quotes Draft Quotes Sent Quotes Won Quotes Lost Quotes

Quotes not yet won. Tap a row to edit — mark as Won to move it to Projects. Won quotes also live in the Projects tab for installation tracking. Filtered by status. Tap a row to open the editor.

{{ quote.quoteNumber }} CO #{{ quote.changeOrderNumber }}
{{ quote.customer?.company || 'No Company' }}
{{ quote.jobName || 'Untitled Job' }}
{{ formatDate(quote.createdAt) }}
{{ formatCurrency(calculateQuoteTotal(quote).systemTotal) }}

No {{ dashboardFilter === 'all' ? 'open' : dashboardFilter }} quotes

Start a new quote — or won quotes are in Projects. No quotes with this status yet.

Product Database

{{ products.length }}/{{ FREE_LIMITS.products }}

Build your go-to product library. Save equipment you use often so you can add it to quotes in seconds.

{{ product.mfg }}
{{ product.model }}
{{ product.desc }}
{{ product.cost ? formatCurrency(product.cost) : '—' }}
{{ productSearch ? 'No matching products' : 'No products yet. Tap Add Custom to get started.' }}

{{ editingProductId ? 'Edit Product' : 'Add Product' }}

Browse AV Catalog

{{ catalogManifest.brands.length }} brands • {{ catalogTotalProducts.toLocaleString() }} products • growing every week

{{ selectedCatalogBrand.name }}

{{ (selectedCatalogBrand.productCount || 0).toLocaleString() }} products
Loading catalog...
Loading...
No catalog matches
{{ prod.mfg }} {{ prod.model }}
+ Add to Library
{{ prod.desc }}
Premium Plan
$29/mo · All limits removed
ACTIVE
Next billing date: {{ user.currentPeriodEnd }}
Premium Plan
Active until {{ user.currentPeriodEnd }} end of billing period
CANCELING
Premium Plan
Payment failed — please update your payment method
PAST DUE

Company Settings

Manage your business profile, branding, and defaults.

Business Profile

Contact & Legal

Internal Labor Costs

Setting your internal labor costs is essential for accurate profit tracking. These are what labor costs you per hour — not what you charge the client. Without these, QuoteAV can't calculate your true margins on installation and programming work. Even a rough estimate is better than leaving them at zero.

$ / hr cost

Your fully burdened hourly cost for field installation technicians (wages, insurance, vehicle, etc.)

$ / hr cost

Your fully burdened hourly cost for programming and commissioning staff.

Profit and margin figures across your quotes won't be accurate until you set your labor costs. Tip: if you're unsure, a common starting point for AV technicians is $45–$65/hr fully burdened.

Proposal Defaults

{{ activeQuote.quoteNumber }}
{{ activeQuote.customer?.company || 'New Project' }}
Change Order #{{ activeQuote.changeOrderNumber }}
Original
{{ formatCurrency(activeQuote.parentQuoteTotal || 0) }}
This CO
{{ formatCurrency(totals.systemTotal) }}
Delta
{{ (totals.systemTotal - (activeQuote.parentQuoteTotal || 0)) >= 0 ? '+' : '' }}{{ formatCurrency(totals.systemTotal - (activeQuote.parentQuoteTotal || 0)) }}
Linked Client
{{ clients.find(c => c.id === activeQuote.clientId)?.company || 'Unknown Client' }}
No clients found.

{{ terms.jobLabel }} Information

Site Details

Quote Pricing

Set the rates and margins for this quote. These numbers drive every calculated total — adjust them any time without affecting other quotes.

Equipment Markup

Multiplied against each product's cost to set the sell price. Higher number = wider margin.

+{{ ((activeQuote.settings.defaultMarkup - 1) * 100).toFixed(0) }}% over cost
1.25 → 25% markup on cost
1.40 → 40% markup on cost

Field Installation Rate

Your sell rate per hour for on-site installation labor. Multiplied by estimated install hours per line item.

per hour
$ / hr sell price

Programming & Commissioning Rate

Your sell rate per hour for system programming and commissioning. Multiplied by estimated programming hours per line item.

per hour
$ / hr sell price

Freight

Added as a line item at the bottom of the quote. Calculated as a percentage of total equipment sell price.

% of equip sell
%

Sales Tax

Applied to equipment sell price where required. Set to 0 for tax-exempt projects.

% of equip sell
%
{{ system.name || 'System ' + (sysIndex + 1) }}
{{ formatCurrency( system.items.reduce((sum,i)=>sum + (i.qty * calculateItemSell(i)),0) ) }}
Equipment {{ formatCurrency(totals.equipSell) }}
{{ terms.installLabel }} {{ formatCurrency(totals.installSell) }}
{{ terms.progLabel }} {{ formatCurrency(totals.progSell) }}
Freight {{ formatCurrency(totals.freight) }}
Sales Tax {{ formatCurrency(totals.tax) }}
Total {{ formatCurrency(totals.systemTotal) }}

Add Item

{{ selectedCatalogBrand.name }}

{{ (selectedCatalogBrand.productCount || 0).toLocaleString() }} products

{{ catalogManifest.brands.length }} brands • {{ catalogTotalProducts.toLocaleString() }} products

Loading catalog...
{{ prod.mfg }} {{ prod.model }}
{{ prod.desc }}
{{ prod.cost ? formatCurrency(prod.cost) : 'No cost set' }}
{{ itemSearchQuery ? 'No matches in your library' : 'No products yet' }}
Loading...
No catalog matches
No matches in {{ selectedCatalogBrand.name }}
{{ prod.mfg }} {{ prod.model }}
{{ prod.desc }}

Additional {{ terms.installLabel }}

Additional {{ terms.progLabel }}

Labor costs not set

Profit figures only reflect equipment margins. Set your internal labor cost rates in for accurate profitability.

Revenue
{{ formatCurrency((totals.systemTotal || 0) - (totals.tax || 0)) }}
excl. tax
Total Cost
{{ formatCurrency(totals.totalCost || 0) }}
equip + labor
Gross Profit
{{ formatCurrency(totals.profit || 0) }}
revenue − cost
Margin
{{ (totals.margin || 0).toFixed(1) }}%

Equipment

Cost{{ formatCurrency(totals.equipCost || 0) }}
Sell{{ formatCurrency(totals.equipSell || 0) }}
Profit {{ formatCurrency((totals.equipSell || 0) - (totals.equipCost || 0)) }}
Margin {{ totals.equipSell > 0 ? ((totals.equipSell - totals.equipCost) / totals.equipSell * 100).toFixed(1) : '0.0' }}%

{{ terms.installLabel }}

Cost{{ formatCurrency(totals.installCost || 0) }}
Sell{{ formatCurrency(totals.installSell || 0) }}
Hours{{ (totals.totalInstallHours || 0).toFixed(1) }}h
Profit {{ formatCurrency((totals.installSell || 0) - (totals.installCost || 0)) }}

{{ terms.progLabel }}

Cost{{ formatCurrency(totals.progCost || 0) }}
Sell{{ formatCurrency(totals.progSell || 0) }}
Hours{{ (totals.totalProgHours || 0).toFixed(1) }}h
Profit {{ formatCurrency((totals.progSell || 0) - (totals.progCost || 0)) }}

Per-System Breakdown

System Equip Profit Labor Profit Total Profit Margin
{{ row.name }} {{ formatCurrency(row.eqSell - row.eqCost) }} {{ formatCurrency(row.instSell + row.progSell - row.instCost - row.progCost) }} {{ formatCurrency(row.profit) }} {{ row.margin.toFixed(1) }}%
Total {{ formatCurrency((totals.equipSell || 0) - (totals.equipCost || 0)) }} {{ formatCurrency((totals.installSell || 0) + (totals.progSell || 0) - (totals.installCost || 0) - (totals.progCost || 0)) }} {{ formatCurrency(totals.profit || 0) }} {{ (totals.margin || 0).toFixed(1) }}%

Quote Configuration

Project Scope

Single Room Project
Multi-Room Project
Controls whether items are grouped by room or listed together.

Danger Zone

Deleting this quote cannot be undone.

Preparing PDF…
Your download will begin shortly
{{ companyProfile.name }}
{{ companyProfile.address }}
{{ companyProfile.city }}, {{ companyProfile.state }} {{ companyProfile.zip }}
{{ companyProfile.phone }}
{{ companyProfile.email }}
PROPOSAL
Quote # {{ activeQuote.quoteNumber }}
Date      {{ formatDate(activeQuote.createdAt) }}
Valid Until {{ formatDate(getExpiryDate(activeQuote.createdAt)) }}
Prepared For
{{ activeQuote.customer?.company || '—' }}
{{ activeQuote.customer.contactName }}
{{ activeQuote.customer.email }}
Project
{{ activeQuote.jobName }}
{{ activeQuote.site.address }}, {{ activeQuote.site.city }}, {{ activeQuote.site.state }}
Prepared By
{{ companyProfile.preparedByName }}
{{ companyProfile.preparedByTitle }}
{{ system.name || terms.spaceLabel }}
Qty Manufacturer Model Description Unit Total
Labor & Services
{{ terms.installLabel }} {{ formatCurrency(totals.installSell) }}
{{ terms.progLabel }} {{ formatCurrency(totals.progSell) }}
Equipment {{ formatCurrency(totals.equipSell) }}
Labor {{ formatCurrency(totals.installSell + totals.progSell) }}
Freight {{ formatCurrency(totals.freight) }}
Sales Tax {{ formatCurrency(totals.tax) }}
Total Investment {{ formatCurrency(totals.systemTotal) }}
Payment Terms

{{ companyProfile.paymentTerms }}

Terms & Conditions

{{ companyProfile.proposalFooter }}

Accepted By (Signature)
Date
Preparing PDF…
Your download will begin shortly

Work Order

WORK ORDER
Project #{{ activeQuote.quoteNumber }}
{{ companyProfile.name }}
{{ companyProfile.address }}
{{ companyProfile.city }}, {{ companyProfile.state }} {{ companyProfile.zip }}
{{ companyProfile.phone }}
Client
{{ activeQuote.customer?.company }}
{{ activeQuote.customer.contactName }}
{{ activeQuote.customer.email }}
Job Site
{{ activeQuote.jobName }}
{{ activeQuote.site.address }}
{{ activeQuote.site.city }}, {{ activeQuote.site.state }} {{ activeQuote.site.zip }}
General Notes / Directions

{{ activeQuote.notes }}

Quoted Labor
Installation
{{ totals.totalInstallHours }} hrs
{{ Math.ceil(totals.totalInstallHours / 40) }} {{ Math.ceil(totals.totalInstallHours / 40) === 1 ? 'installer' : 'installers' }} · {{ Math.ceil(totals.totalInstallHours / Math.ceil(totals.totalInstallHours / 40) / 8) }} {{ Math.ceil(totals.totalInstallHours / Math.ceil(totals.totalInstallHours / 40) / 8) === 1 ? 'day' : 'days' }}
Programming
{{ totals.totalProgHours }} hrs
{{ Math.ceil(totals.totalProgHours / 40) }} {{ Math.ceil(totals.totalProgHours / 40) === 1 ? 'programmer' : 'programmers' }} · {{ Math.ceil(totals.totalProgHours / Math.ceil(totals.totalProgHours / 40) / 8) }} {{ Math.ceil(totals.totalProgHours / Math.ceil(totals.totalProgHours / 40) / 8) === 1 ? 'day' : 'days' }}
{{ index + 1 }}
{{ system.name || 'Main System' }}
Qty Done Item Description Model / Part #
Technician Signature
Client Acceptance
Preparing Invoice…
Your download will begin shortly

Invoice

{{ companyProfile.name }}
{{ companyProfile.address }}
{{ companyProfile.city }}, {{ companyProfile.state }} {{ companyProfile.zip }}
{{ companyProfile.phone }}
{{ companyProfile.email }}
INVOICE
Invoice #   INV-{{ activeQuote.quoteNumber }}
Quote Ref   {{ activeQuote.quoteNumber }}
Date       {{ formatDate(activeQuote.createdAt) }}
Terms     {{ companyProfile.paymentTerms.split('\n')[0] }}
Bill To
{{ activeQuote.customer?.company }}
{{ activeQuote.customer.contactName }}
{{ activeQuote.customer.email }}
{{ activeQuote.site.address }}
{{ activeQuote.site.city }}, {{ activeQuote.site.state }} {{ activeQuote.site.zip }}
Project
{{ activeQuote.jobName || 'Untitled Project' }}
{{ activeQuote.quoteNumber }}
Summary
Equipment & Materials {{ formatCurrency(totals.equipSell) }}
Installation Labor {{ formatCurrency(totals.installSell) }}
Programming & Commissioning {{ formatCurrency(totals.progSell) }}
Freight & Shipping {{ formatCurrency(totals.freight) }}
Subtotal {{ formatCurrency(totals.systemTotal - totals.tax) }}
Sales Tax ({{ activeQuote.settings?.taxRate || 0 }}%) {{ formatCurrency(totals.tax) }}
Amount Due
{{ formatCurrency(totals.systemTotal) }}
Payment Terms
{{ companyProfile.paymentTerms }}
Notes
{{ activeQuote.notes }}
Thank you for your business — {{ companyProfile.name }}
{{ companyProfile.email }} · {{ companyProfile.phone }}

You're growing!

{{ limitModalConfig.current }} of {{ limitModalConfig.max }} {{ limitModalConfig.resource }} on free plan

You've used all {{ limitModalConfig.max }} {{ limitModalConfig.resource }} on the free plan — that means QuoteAV is working for you. Go unlimited so nothing slows you down.

Premium — $29/mo
  • Unlimited quotes, products & clients
  • Unlimited rooms & change orders
  • Company logo on proposals & invoices

Tip: Mark existing quotes as Won or Lost to free up slots.

Step {{ onboardingStep + 1 }} of 8

Welcome to QuoteAV

Quote. Propose. Win.

This 2-minute guide walks you through everything — from your first quote to sending a proposal. Let's go.

Your Dashboard

Your pipeline at a glance. Every quote flows through four stages:

Draft
Building
Sent
Waiting
Won
Closed
Lost
Passed
Tap any stat card to filter your quote list. Change a quote's status anytime from the dropdown.

Start a New Quote

Hit Start New Quote from the Dashboard. You'll pick two things:

Project Type
Residential or Commercial — changes labels throughout the quote
Scope
Single room or multi-room — determines how systems are organized

You can also link a client from your contacts — their info auto-fills into the quote.

The Quote Editor

This is where you build. The sidebar tabs walk you through each section:

Customer Info Contact + site details
Quote Pricing Markup, labor rates, tax
Equipment Where you'll spend most time
Install + Programming Labor hours & rates
Profit Analysis Margin breakdown

Everything autosaves as you work. No save button needed.

Adding Equipment

Three ways to add gear to a quote:

1
Type it in
Add any item manually — MFG, model, cost, quantity
2
From your library
Build a reusable product library in the Products tab
3
AV Catalog
Search 3,000+ products from Extron, Biamp, Crestron, and more

Sell prices calculate automatically from your markup. You set cost — QuoteAV handles the math.

Pro tip

Install Notes

Every line item has an optional Install Note — specific instructions for your crew on-site.

Example

"Mount 65" display at 54" AFF. Route HDMI through west wall cavity. Label cable CH-1 at rack."

These are private — they show on your Work Order but never on the client proposal.

Three Documents. One Quote.

Generate all three from the editor sidebar. Change a price once — every document updates.

Proposal
  • Client-facing PDF
  • Equipment + pricing
  • Signature block
Work Order
  • Internal checklist
  • Install notes
  • For your crew
Invoice
  • Billing document
  • Itemized totals
  • Payment terms

Won a job and the scope changed? Create a Change Order from any won quote — it copies everything so you can adjust.

You're ready.

Your first quote takes about 5 minutes. Hit Create My First Quote and try it on a real job.

One more thing — head to Settings to add your company name, address, and logo. That info shows on every proposal.

Reopen this guide anytime: Settings → Show Guide

Parsing Excel file...

{{ editingClient ? 'Edit Client' : 'Add Client' }}

Contact Information

Address

Linked Quotes ({{ quotesForClient.length }})

{{ q.quoteNumber }} {{ q.jobName || 'Untitled' }}
{{ formatCurrency(calculateQuoteTotal(q).systemTotal) }}

No quotes linked to this client yet.

{{ toastMessage }}