Contractor Demand Letter

A former contractor took your money and left you with unfinished or defective work. Generate a formal breach of contract demand letter, get your states contractor board info, and learn how to escalate through bond claims or small claims court.

Disclaimer: This tool generates a draft demand letter for informational purposes only. It does not constitute legal advice. You should review the letter carefully before sending. If you have significant financial exposure, consult a licensed attorney in your state.
1. Your Information 2. Contractor Details 3. Project and Problems 4. Your Results

Your Information

'); win.document.close(); win.focus(); setTimeout(function(){ win.print(); }, 500); } function printGuide() { var text = document.getElementById('smallClaimsGuide').innerText; var win = window.open('', '_blank'); win.document.write('Small Claims Guide

Small Claims Court Guide

' + text.replace(/\n/g, '
') + ' '); win.document.close(); win.focus(); setTimeout(function(){ win.print(); }, 500); } function showToast(msg) { var toast = document.getElementById('toast'); if (!toast) { toast = document.createElement('div'); toast.id = 'toast'; toast.style.cssText = 'position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#0a1628;color:#fff;padding:12px 24px;border-radius:8px;font-size:0.9rem;font-weight:600;z-index:9999;opacity:0;transition:opacity 0.3s;font-family:Inter,sans-serif'; document.body.appendChild(toast); } toast.textContent = msg; toast.style.opacity = '1'; setTimeout(function(){ toast.style.opacity = '0'; }, 2500); } function resetTool() { document.querySelectorAll('input, textarea, select').forEach(function(el) { if (el.type === 'checkbox' || el.type === 'radio') { el.checked = false; } else { el.value = ''; } }); document.querySelectorAll('.radio-item').forEach(function(el) { el.classList.remove('selected'); }); var firstRadio = document.querySelector('.radio-item:first-child'); if (firstRadio) { firstRadio.classList.add('selected'); firstRadio.querySelector('input').checked = true; } goToStep(1); window.scrollTo({ top: 0, behavior: 'smooth' }); }