Service Classification Code Lookup & Fee Estimator
ANA›Life Services Authority›National Calculator Authority›Service Classification Code Lookup & Fee Estimator
.calc-container { max-width: 640px; margin: 2rem 0; padding: 1.5rem; background: #fff; border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); font-family: system-ui, -apple-system, sans-serif; } .calc-container h3 { font-family: Georgia, serif; font-size: 1.15rem; color: #1a1a1a; margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-row { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; flex-wrap: wrap; } .calc-row label { min-width: 160px; font-size: 0.9rem; color: #333; font-weight: 500; } .calc-row input[type="number"], .calc-row select { flex: 1; min-width: 120px; max-width: 200px; padding: 0.5rem 0.6rem; border: 1px solid #ccc; border-radius: 4px; font-size: 0.9rem; font-family: system-ui, sans-serif; color: #1a1a1a; background: #fafaf8; } .calc-row input:focus, .calc-row select:focus { outline: none; border-color: var(--ac, #3d5a80); box-shadow: 0 0 0 2px rgba(26,74,138,0.12); } .calc-row .unit { font-size: 0.82rem; color: #888; min-width: 30px; } .calc-btn { display: inline-block; margin-top: 0.5rem; padding: 0.55rem 1.5rem; background: var(--ac, #3d5a80); color: #fff; border: none; border-radius: 4px; font-size: 0.9rem; font-weight: 600; cursor: pointer; font-family: system-ui, sans-serif; } .calc-btn:hover { opacity: 0.9; } .calc-result { margin-top: 1.25rem; padding: 1rem 1.25rem; background: #f0f6fc; border-left: 3px solid var(--ac, #3d5a80); border-radius: 0 6px 6px 0; display: none; } .calc-result.visible { display: block; } .calc-result-label { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; color: #666; margin-bottom: 0.25rem; } .calc-result-value { font-size: 1.6rem; font-weight: 700; color: var(--ac, #3d5a80); } .calc-result-detail { font-size: 0.85rem; color: #555; margin-top: 0.5rem; line-height: 1.5; } .calc-note { margin-top: 1rem; font-size: 0.8rem; color: #888; font-style: italic; } .calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-top: 0.75rem; } .calc-grid-item { padding: 0.6rem 0.8rem; background: #f8f9fa; border-radius: 4px; border: 1px solid #eee; } .calc-grid-item .label { font-size: 0.75rem; color: #888; text-transform: uppercase; letter-spacing: 0.04em; } .calc-grid-item .value { font-size: 1.1rem; font-weight: 600; color: #1a1a1a; } @media (max-width: 720px) { .calc-row { flex-direction: column; align-items: flex-start; gap: 0.3rem; } .calc-row label { min-width: auto; } .calc-row input[type="number"], .calc-row select { max-width: 100%; width: 100%; } .calc-grid { grid-template-columns: 1fr; } } .calc-chart { margin: 1rem 0; text-align: center; } .calc-chart svg { max-width: 100%; height: auto; } .calc-chart-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6rem 1.2rem; margin-top: 0.6rem; font-size: 0.8rem; color: #555; } .calc-chart-legend span { display: inline-flex; align-items: center; gap: 0.3rem; } .calc-chart-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 2px; font-style: normal; } .calc-related { max-width: 640px; margin: 2rem 0 1rem; padding: 1.25rem 1.5rem; background: #f8f9fa; border: 1px solid #e8e8e8; border-radius: 8px; } .calc-related h3 { font-family: Georgia, serif; font-size: 1rem; color: #1a1a1a; margin: 0 0 0.75rem; padding-bottom: 0.4rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-related-list { list-style: none; padding: 0; margin: 0 0 0.75rem; display: grid; grid-template-columns: 1fr 1fr; gap: 0.4rem 1.5rem; } .calc-related-list li a { font-size: 0.88rem; color: var(--ac, #3d5a80); text-decoration: none; } .calc-related-list li a:hover { text-decoration: underline; } .calc-browse-all { margin: 0.5rem 0 0; font-size: 0.9rem; font-weight: 600; } .calc-browse-all a { color: var(--ac, #3d5a80); text-decoration: none; } .calc-browse-all a:hover { text-decoration: underline; } @media (max-width: 720px) { .calc-related-list { grid-template-columns: 1fr; } }
Service Classification Code Lookup & Fee Estimator
Look up service classification codes (CPT, NAICS, SIC, or custom billing codes) and estimate associated fees based on service category, modifiers, and jurisdiction.
Service Category
-- Select Category -- Medical / Healthcare (CPT-based) Legal Services Consulting & Professional Services Construction & Contracting (NAICS) Technology & IT Services Financial & Accounting Services Education & Training Government & Public Services
Service Code
-- Select Category First --
Jurisdiction / Region
National Average Northeast (NY, NJ, CT, MA, PA) Southeast (FL, GA, NC, SC, VA) Midwest (IL, OH, MI, IN, WI) Southwest (TX, AZ, NM, OK) West (CA, WA, OR, NV) Mountain (CO, UT, ID, MT, WY) Rural / Remote Area
Number of Units / Hours
Enter quantity of service units or hours
Service Modifier / Complexity
Standard (no modifier) Complex / Specialized (+25%) Highly Complex / Expert (+50%) Simplified / Routine (-25%) Urgent / Rush (+15%) Bulk / Volume Discount (-15%)
Provider Experience Level
Mid-Level (5–10 years) Entry-Level (0–3 years) Junior (3–5 years) Senior (10–20 years) Expert / Principal (20+ years)
Overhead & Administrative Rate (%)
Typical range: 15–35% for most service businesses
Target Profit Margin (%)
Typical range: 10–30% for professional services
Applicable Tax / Surcharge Rate (%)
Enter 0 if service is tax-exempt in your jurisdiction
Client Discount (%)
Negotiated or promotional discount applied to final fee
Estimate Fee
### Fee Estimate Results
Service Code —
Base Rate (per unit) —
Adjusted Rate (modifiers applied) —
Subtotal (units × adjusted rate) —
Overhead Cost —
Profit Margin Amount —
Pre-Tax Fee —
Tax / Surcharge —
Discount Applied —
Total Estimated Fee —
Effective Rate per Unit —
Fee Range (±15%) —
// ── Service code database ────────────────────────────────────────────────── const SER_CODES = { medical: [ { code:"99213", label:"99213 – Office Visit, Established Patient (Level 3)", base:150, unit:"visit" }, { code:"99214", label:"99214 – Office Visit, Established Patient (Level 4)", base:215, unit:"visit" }, { code:"99203", label:"99203 – Office Visit, New Patient (Level 3)", base:185, unit:"visit" }, { code:"99204", label:"99204 – Office Visit, New Patient (Level 4)", base:260, unit:"visit" }, { code:"99232", label:"99232 – Subsequent Hospital Care", base:130, unit:"day" }, { code:"93000", label:"93000 – Electrocardiogram (ECG/EKG)", base:75, unit:"test" }, { code:"71046", label:"71046 – Chest X-Ray, 2 Views", base:95, unit:"study" }, { code:"80053", label:"80053 – Comprehensive Metabolic Panel", base:55, unit:"panel" }, { code:"99385", label:"99385 – Preventive Visit, New Patient (18–39 yrs)", base:195, unit:"visit" }, { code:"90837", label:"90837 – Psychotherapy, 60 min", base:175, unit:"session"} ], legal: [ { code:"L-CONS", label:"L-CONS – Initial Legal Consultation", base:350, unit:"hour" }, { code:"L-CONT", label:"L-CONT – Contract Drafting & Review", base:425, unit:"hour" }, { code:"L-LIT", label:"L-LIT – Litigation / Court Representation", base:550, unit:"hour" }, { code:"L-CORP", label:"L-CORP – Corporate Formation & Compliance", base:400, unit:"hour" }, { code:"L-IP", label:"L-IP – Intellectual Property (Patent/TM)", base:500, unit:"hour" }, { code:"L-RE", label:"L-RE – Real Estate Transaction", base:375, unit:"hour" }, { code:"L-FAM", label:"L-FAM – Family Law / Divorce", base:325, unit:"hour" }, { code:"L-CRIM", label:"L-CRIM – Criminal Defense", base:450, unit:"hour" } ], consulting: [ { code:"C-STRAT",label:"C-STRAT – Strategic Planning Consulting", base:300, unit:"hour" }, { code:"C-MGMT", label:"C-MGMT – Management Consulting", base:275, unit:"hour" }, { code:"C-HR", label:"C-HR – Human Resources Consulting", base:200, unit:"hour" }, { code:"C-MKT", label:"C-MKT – Marketing & Brand Strategy", base:225, unit:"hour" }, { code:"C-OPS", label:"C-OPS – Operations & Process Improvement", base:250, unit:"hour" }, { code:"C-FIN", label:"C-FIN – Financial Advisory Consulting", base:325, unit:"hour" }, { code:"C-ENV", label:"C-ENV – Environmental Consulting", base:210, unit:"hour" } ], construction: [ { code:"236115", label:"236115 – New Single-Family Housing Construction", base:185, unit:"sq ft" }, { code:"236220", label:"236220 – Commercial Building Construction", base:220, unit:"sq ft" }, { code:"237110", label:"237110 – Water & Sewer Line Construction", base:95, unit:"lin ft"}, { code:"238110", label:"238110 – Poured Concrete Foundation", base:12, unit:"sq ft" }, { code:"238210", label:"238210 – Electrical Contractors", base:125, unit:"hour" }, { code:"238220", label:"238220 – Plumbing Contractors", base:115, unit:"hour" }, { code:"238310", label:"238310 – Drywall & Insulation", base:3.5, unit:"sq ft" }, { code:"238910", label:"238910 – Site Preparation / Excavation", base:85, unit:"hour" } ], technology: [ { code:"T-DEV", label:"T-DEV – Software Development", base:150, unit:"hour" }, { code:"T-ARCH", label:"T-ARCH – Systems Architecture & Design", base:200, unit:"hour" }, { code:"T-SEC", label:"T-SEC – Cybersecurity Assessment", base:225, unit:"hour" }, { code:"T-DATA", label:"T-DATA – Data Engineering & Analytics", base:175, unit:"hour" }, { code:"T-CLOUD",label:"T-CLOUD – Cloud Infrastructure & DevOps", base:165, unit:"hour" }, { code:"T-PM", label:"T-PM – IT Project Management", base:140, unit:"hour" }, { code:"T-QA", label:"T-QA – Quality Assurance & Testing", base:110, unit:"hour" }, { code:"T-SUPP", label:"T-SUPP – Technical Support & Helpdesk", base:85, unit:"hour" } ], financial: [ { code:"F-AUDIT",label:"F-AUDIT – Financial Audit", base:275, unit:"hour" }, { code:"F-TAX", label:"F-TAX – Tax Preparation & Filing", base:225, unit:"hour" }, { code:"F-BOOK", label:"F-BOOK – Bookkeeping Services", base:75, unit:"hour" }, { code:"F-CFO", label:"F-CFO – Fractional CFO Services", base:350, unit:"hour" }, { code:"F-PLAN", label:"F-PLAN – Financial Planning & Analysis", base:250, unit:"hour" }, { code:"F-PAYRL",label:"F-PAYRL – Payroll Processing", base:50, unit:"employee/mo"}, { code:"F-FORE", label:"F-FORE – Financial Forecasting & Modeling", base:300, unit:"hour" } ], education: [ { code:"E-CORP", label:"E-CORP – Corporate Training (per participant)", base:125, unit:"person/day"}, { code:"E-INST", label:"E-INST – Instructional Design", base:100, unit:"hour" }, { code:"E-COACH",label:"E-COACH – Executive Coaching", base:250, unit:"hour" }, { code:"E-CURR", label:"E-CURR – Curriculum Development", base:90, unit:"hour" }, { code:"E-ELEARN",label:"E-ELEARN – eLearning Module Development", base:3500,unit:"module"}, { code:"E-TUTOR",label:"E-TUTOR – Private Tutoring", base:75, unit:"hour" } ], government: [ { code:"G-PERM", label:"G-PERM – Permit Processing Fee", base:250, unit:"permit"}, { code:"G-INSP", label:"G-INSP – Building / Safety Inspection", base:175, unit:"inspection"}, { code:"G-PLAN", label:"G-PLAN – Planning & Zoning Review", base:500, unit:"application"}, { code:"G-ENV", label:"G-ENV – Environmental Impact Assessment", base:2500,unit:"study" }, { code:"G-PROC", label:"G-PROC – Procurement / Contract Administration", base:150, unit:"hour" }, { code:"G-GRANT",label:"G-GRANT – Grant Writing & Administration", base:125, unit:"hour" } ] };
// Regional cost-of-living multipliers const SER_REGION = { national: 1.00, northeast: 1.28, southeast: 0.92, midwest: 0.95, southwest: 0.98, west: 1.35, mountain: 1.05, rural: 0.80 };
function serUpdateCodeList() { const cat = document.getElementById("ser_service_category").value; const sel = document.getElementById("ser_service_code"); sel.innerHTML = ""; if (!cat || !SER_CODES[cat]) { sel.innerHTML = '-- Select Category First --'; return; } sel.innerHTML = '-- Select Service Code --'; SER_CODES[cat].forEach(function(item) { const opt = document.createElement("option"); opt.value = item.code; opt.textContent = item.label; sel.appendChild(opt); }); serUpdateBaseRate(); }
function serGetSelectedItem() { const cat = document.getElementById("ser_service_category").value; const code = document.getElementById("ser_service_code").value; if (!cat || !code || !SER_CODES[cat]) return null; return SER_CODES[cat].find(function(i){ return i.code === code; }) || null; }
function serUpdateBaseRate() { // Just a UI hint update; actual calc happens on button click }
function serValidateUnits() { const v = parseFloat(document.getElementById("ser_units").value); const hint = document.getElementById("ser_units_hint"); if (isNaN(v) || v 10000) { hint.style.color = "#c0392b"; hint.textContent = "Units seem very high — please verify."; } else { hint.style.color = ""; hint.textContent = "Enter quantity of service units or hours."; } }
function serValidateOverhead() { const v = parseFloat(document.getElementById("ser_overhead_pct").value); if (isNaN(v) || v 100) { document.getElementById("ser_overhead_pct").style.borderColor = "#c0392b"; } else { document.getElementById("ser_overhead_pct").style.borderColor = ""; } }
function serValidateMargin() { const v = parseFloat(document.getElementById("ser_profit_margin").value); if (isNaN(v) || v 90) { document.getElementById("ser_profit_margin").style.borderColor = "#c0392b"; } else { document.getElementById("ser_profit_margin").style.borderColor = ""; } }
function serValidateTax() { const v = parseFloat(document.getElementById("ser_tax_rate").value); if (isNaN(v) || v 30) { document.getElementById("ser_tax_rate").style.borderColor = "#c0392b"; } else { document.getElementById("ser_tax_rate").style.borderColor = ""; } }
function serValidateDiscount() { const v = parseFloat(document.getElementById("ser_discount_pct").value); if (isNaN(v) || v 50) { document.getElementById("ser_discount_pct").style.borderColor = "#c0392b"; } else { document.getElementById("ser_discount_pct").style.borderColor = ""; } }
function serShowError(msg) { const el = document.getElementById("ser_error"); el.textContent = msg; el.style.display = "block"; document.getElementById("ser_result").style.display = "none"; }
function serClearError() { document.getElementById("ser_error").style.display = "none"; }
function serFmt(n) { return "$" + n.toLocaleString("en-US", { minimumFractionDigits:2, maximumFractionDigits:2 }); }
function serCalc() { serClearError();
// ── Gather inputs ────────────────────────────────────────────────────── const item = serGetSelectedItem(); const units = parseFloat(document.getElementById("ser_units").value); const modifier = parseFloat(document.getElementById("ser_modifier").value); const expLevel = parseFloat(document.getElementById("ser_experience_level").value); const overheadPct = parseFloat(document.getElementById("ser_overhead_pct").value); const marginPct = parseFloat(document.getElementById("ser_profit_margin").value); const taxPct = parseFloat(document.getElementById("ser_tax_rate").value); const discountPct = parseFloat(document.getElementById("ser_discount_pct").value); const region = document.getElementById("ser_jurisdiction").value;
// ── Validation ───────────────────────────────────────────────────────── if (!item) { serShowError("Please select both a service category and a service code."); return; } if (isNaN(units) || units 10000) { serShowError("Number of units exceeds maximum allowed (10,000). Please verify your input."); return; } if (isNaN(overheadPct) || overheadPct 100) { serShowError("Overhead rate must be between 0% and 100%."); return; } if (isNaN(marginPct) || marginPct = 100) { serShowError("Profit margin must be between 0% and 99%."); return; } if (isNaN(taxPct) || taxPct 30) { serShowError("Tax rate must be between 0% and 30%."); return; } if (isNaN(discountPct) || discountPct 50) { serShowError("Discount must be between 0% and 50%."); return; }
// ── Core Formula ─────────────────────────────────────────────────────── // // Step 1: Regional base rate // regionalBase = item.base × regionMultiplier // // Step 2: Adjusted rate (complexity + experience) // adjustedRate = regionalBase × complexityModifier × experienceMultiplier // // Step 3: Subtotal // subtotal = adjustedRate × units // // Step 4: Overhead cost // overheadCost = subtotal × (overheadPct / 100) // // Step 5: Cost base (subtotal + overhead) // costBase = subtotal + overheadCost // // Step 6: Profit margin (applied to cost base) // profitAmount = costBase × (marginPct / 100) // // Step 7: Pre-tax fee // preTaxFee = costBase + profitAmount // // Step 8: Tax // taxAmount = preTaxFee × (taxPct / 100) // // Step 9: Gross fee // grossFee = preTaxFee + taxAmount // // Step 10: Discount // discountAmount = grossFee × (discountPct / 100) // // Step 11: Total estimated fee // totalFee = grossFee - discountAmount // // Step 12: Effective rate per unit // effectiveRate = totalFee / units
const regionMult = SER_REGION[region] || 1.0; const regionalBase = item.base * regionMult; const adjustedRate = regionalBase * modifier * expLevel; const subtotal = adjustedRate * units; const overheadCost = subtotal * (overheadPct / 100); const costBase = subtotal + overheadCost; const profitAmount = costBase * (marginPct / 100); const preTaxFee = costBase + profitAmount; const taxAmount = preTaxFee * (taxPct / 100); const grossFee = preTaxFee + taxAmount; const discountAmount= grossFee * (discountPct / 100); const totalFee = grossFee - discountAmount; const effectiveRate = totalFee / units; const rangeLow = totalFee * 0.85; const rangeHigh = totalFee * 1.15;
// ── Populate outputs ─────────────────────────────────────────────────── document.getElementById("ser_out_code").textContent = item.code; document.getElementById("ser_out_base_rate").textContent = serFmt(regionalBase) + " / " + item.unit; document.getElementById("ser_out_adj_rate").textContent = serFmt(adjustedRate) + " / " + item.unit; document.getElementById("ser_out_subtotal").textContent = serFmt(subtotal); document.getElementById("ser_out_overhead").textContent = serFmt(overheadCost) + " (" + overheadPct.toFixed(1) + "%)"; document.getElementById("ser_out_profit").textContent = serFmt(profitAmount) + " (" + marginPct.toFixed(1) + "%)"; document.getElementById("ser_out_pretax").textContent = serFmt(preTaxFee); document.getElementById("ser_out_tax").textContent = serFmt(taxAmount) + " (" + taxPct.toFixed(1) + "%)"; document.getElementById("ser_out_discount").textContent = "-" + serFmt(discountAmount) + " (" + discountPct.toFixed(1) + "%)"; document.getElementById("ser_out_total").textContent = serFmt(totalFee); document.getElementById("ser_out_effective_rate").textContent = serFmt(effectiveRate) + " / " + item.unit; document.getElementById("ser_out_range").textContent = serFmt(rangeLow) + " – " + serFmt(rangeHigh);
// ── Classification info box ──────────────────────────────────────────── const cat = document.getElementById("ser_service_category").value; const catLabels = { medical:"CPT (Current Procedural Terminology) — AMA standard", legal:"Custom Legal Billing Code — ABA guidelines", consulting:"Custom Professional Services Code — industry standard", construction:"NAICS (North American Industry Classification System)", technology:"Custom IT Services Code — industry standard", financial:"Custom Financial Services Code — AICPA guidelines", education:"Custom Education & Training Code", government:"Government Services Classification Code" }; document.getElementById("ser_classification_info").innerHTML = "Classification System: " + (catLabels[cat] || "Standard") + "Unit of Measure: " + item.unit + "Regional Multiplier Applied: " + (regionMult * 100).toFixed(0) + "% of national average" + "Note: Estimates are indicative. Actual fees vary by provider, contract terms, and local market conditions.";
document.getElementById("ser_result").style.display = "block"; }
#### Formula
Step 1 – Regional Base Rate: Regional Base Rate = Published Base Rate × Regional Cost Multiplier
Step 2 – Adjusted Rate: Adjusted Rate = Regional Base Rate × Complexity Modifier × Experience Multiplier
Step 3 – Subtotal: Subtotal = Adjusted Rate × Number of Units
Step 4 – Overhead Cost: Overhead Cost = Subtotal × (Overhead Rate % ÷ 100)
Step 5 – Cost Base: Cost Base = Subtotal + Overhead Cost
Step 6 – Profit Margin: Profit Amount = Cost Base × (Profit Margin % ÷ 100)
Step 7 – Pre-Tax Fee: Pre-Tax Fee = Cost Base + Profit Amount
Step 8 – Tax / Surcharge: Tax Amount = Pre-Tax Fee × (Tax Rate % ÷ 100)
Step 9 – Gross Fee: Gross Fee = Pre-Tax Fee + Tax Amount
Step 10 – Discount: Discount Amount = Gross Fee × (Discount % ÷ 100)
Step 11 – Total Estimated Fee: Total Fee = Gross Fee − Discount Amount
Step 12 – Effective Rate per Unit: Effective Rate = Total Fee ÷ Number of Units
Fee Range (±15% market variability): Low = Total Fee × 0.85 | High = Total Fee × 1.15
#### Assumptions & References
- CPT Codes (Medical): Base rates derived from CMS Medicare Physician Fee Schedule national averages; actual reimbursement varies by payer, locality, and contract.
- Legal Billing Codes: Rates based on 2023–2024 NALP and Clio Legal Trends Report averages by practice area and firm size.
- Consulting Rates: Sourced from Bureau of Labor Statistics Occupational Employment Statistics and industry surveys (McKinsey, Deloitte benchmarks).
- NAICS Construction Codes: Unit costs from RSMeans Building Construction Cost Data 2024 and U.S. Census Bureau construction statistics.
- Technology Services: Rates based on Stack Overflow Developer Survey 2024 and Gartner IT services market data.
- Financial Services: Rates sourced from AICPA MAP Survey and Robert Half Accounting & Finance Salary Guide 2024.
- Regional Multipliers: Derived from BLS regional wage differentials and cost-of-living indices (Council for Community and Economic Research, C2ER).
- Overhead Rate: Typical professional services overhead ranges from 15–35%; includes rent, utilities, insurance, software, and administrative staff.
- Profit Margin: Industry benchmarks: legal 20–35%, consulting 15–30%, technology 15–25%, medical 5–15% (net).
- Tax Applicability: Many professional services are exempt from sales tax; verify with your state/local tax authority. Some jurisdictions tax digital services.
- Fee Range: The ±15% range reflects typical market variability in competitive bidding and negotiation outcomes.
- Disclaimer: This tool provides estimates for planning purposes only. Actual fees depend on specific contract terms, provider qualifications, market conditions, and regulatory requirements. Consult a licensed professional for binding fee agreements.
More Calculators
- EV vs Gas Vehicle Fuel Cost Comparison Calculator
- CVE Risk Score Calculator
- Navigation Depth & Click Distance Calculator
- Card Sorting Category Optimization Calculator
- Tile Square Footage and Grout Calculator
- Password Strength Calculator
- Security Compliance Cost Estimator
- Deck Material and Cost Calculator
- Drywall Material Calculator
- Duct Sizing Calculator
Read Next
Study Time Planner Authority Network America › Life Services Authority › National Calculator Authority .calc-container { max-width: 640px;...