Medical Marijuana Dosage Calculator
ANA›Life Services Authority›National Calculator Authority›Medical Marijuana Dosage Calculator
.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; } }
Medical Marijuana Dosage Calculator
Estimates an initial medical marijuana dosage (THC/CBD in mg) based on body weight, condition severity, tolerance, and administration method. Always consult a licensed healthcare provider before use.
Body Weight (lbs)
Condition Severity
-- Select -- Mild (e.g. minor anxiety, mild pain) Moderate (e.g. chronic pain, insomnia) Severe (e.g. cancer pain, severe nausea, seizures)
Tolerance Level
-- Select -- Naive (never used or <1 month) Low (occasional use, 1–6 months) Moderate (regular use, 6–24 months) High (daily use, 2+ years)
Administration Method
-- Select -- Oral / Edible (capsule, gummy, oil) Sublingual (tincture under tongue) Inhaled (vaporized flower or concentrate) Topical (cream, patch — localized only)
THC : CBD Ratio Preference
-- Select -- THC-Dominant (20:1) — stronger psychoactive effect Balanced (1:1) — moderate effect, reduced anxiety CBD-Dominant (1:20) — minimal psychoactive effect
Calculate Dosage
function medCalc() { const resultDiv = document.getElementById('med-result'); resultDiv.innerHTML = '';
const weightLbs = parseFloat(document.getElementById('med-weight').value); const severity = document.getElementById('med-severity').value; const tolerance = document.getElementById('med-tolerance').value; const method = document.getElementById('med-method').value; const ratio = document.getElementById('med-ratio').value;
// --- Validation --- if (isNaN(weightLbs) || weightLbs 500) { resultDiv.innerHTML = 'Please enter a valid body weight between 50 and 500 lbs.'; return; } if (!severity) { resultDiv.innerHTML = 'Please select a condition severity.'; return; } if (!tolerance) { resultDiv.innerHTML = 'Please select a tolerance level.'; return; } if (!method) { resultDiv.innerHTML = 'Please select an administration method.'; return; } if (!ratio) { resultDiv.innerHTML = 'Please select a THC:CBD ratio preference.'; return; }
// --- Step 1: Convert weight to kg --- const weightKg = weightLbs / 2.20462;
// --- Step 2: Base dose (mg total cannabinoid per kg body weight) --- // Clinical micro-dosing literature: 0.05–0.10 mg/kg naive, up to 0.5 mg/kg severe/high tolerance const severityFactor = { mild: 0.05, moderate: 0.10, severe: 0.20 }; const toleranceFactor = { naive: 1.0, low: 1.5, moderate: 2.5, high: 4.0 };
const baseDoseMgPerKg = severityFactor[severity]; const tolMultiplier = toleranceFactor[tolerance];
// Total cannabinoid dose before method adjustment (mg) let totalCannabinoidMg = baseDoseMgPerKg * weightKg * tolMultiplier;
// --- Step 3: Bioavailability adjustment --- // Oral ~6–20% (use 12%), Sublingual ~20–35% (use 25%), // Inhaled ~30–56% (use 40%), Topical ~1–5% (use 3%) // We adjust the administered dose upward to achieve the same systemic effect // Reference effective dose target = totalCannabinoidMg (systemic) // Administered dose = effective dose / bioavailability const bioavailability = { oral: 0.12, sublingual: 0.25, inhaled: 0.40, topical: 0.03 }; const bav = bioavailability[method]; const administeredDoseMg = totalCannabinoidMg / bav;
// --- Step 4: Split into THC and CBD based on ratio --- // Ratios: THC-dominant 20:1, Balanced 1:1, CBD-dominant 1:20 const ratioMap = { thc_dominant: { thcFrac: 20/21, cbdFrac: 1/21, label: '20:1 THC:CBD' }, balanced: { thcFrac: 1/2, cbdFrac: 1/2, label: '1:1 THC:CBD' }, cbd_dominant: { thcFrac: 1/21, cbdFrac: 20/21, label: '1:20 THC:CBD' } }; const r = ratioMap[ratio]; const thcDose = administeredDoseMg * r.thcFrac; const cbdDose = administeredDoseMg * r.cbdFrac;
// --- Step 5: Onset & duration by method --- const methodInfo = { oral: { onset: '30–90 min', duration: '4–8 hours', note: 'Start low; effects are delayed and prolonged.' }, sublingual: { onset: '15–45 min', duration: '2–4 hours', note: 'Hold under tongue 60–90 seconds before swallowing.' }, inhaled: { onset: '2–10 min', duration: '1–3 hours', note: 'Effects felt quickly; easier to titrate.' }, topical: { onset: '15–45 min', duration: '2–6 hours', note: 'Localized relief only; minimal systemic absorption.' } }; const mInfo = methodInfo[method];
// --- Step 6: Frequency recommendation --- // Naive/low: once daily or as needed; moderate/high: up to 3x daily const freqMap = { naive: 'Once daily (or as needed) — "Start Low, Go Slow"', low: 'Once to twice daily', moderate: 'Twice daily', high: 'Up to three times daily' };
// --- Format output --- const fmt = (n) => n.toFixed(2);
let html = '### Estimated Starting Dosage '; html += ''; html += 'ParameterValue'; html += 'Body Weight' + weightLbs + ' lbs (' + fmt(weightKg) + ' kg)'; html += 'Administration Method' + method.charAt(0).toUpperCase() + method.slice(1) + ' (Bioavailability ≈ ' + (bav100).toFixed(0) + '%)'; html += 'Ratio' + r.label + ''; html += 'Total Administered Dose' + fmt(administeredDoseMg) + ' mg*'; html += 'THC Dose*' + fmt(thcDose) + ' mg*'; html += 'CBD Dose**' + fmt(cbdDose) + ' mg'; html += 'Onset Time' + mInfo.onset + ''; html += 'Duration' + mInfo.duration + ''; html += 'Suggested Frequency' + freqMap[tolerance] + ''; html += '';
html += ''; html += 'Method Note: ' + mInfo.note; html += '';
if (tolerance === 'naive') { html += ''; html += '⚠ First-Time User: Begin with the lowest possible dose (even half the calculated amount). Wait the full onset period before re-dosing. Increase by no more than 2.5 mg per session.'; html += ''; }
html += 'This calculator provides educational estimates only. It is not medical advice. Consult a licensed physician or cannabis clinician before starting any medical marijuana regimen.
';
resultDiv.innerHTML = html; }
#### Formula
Step 1 — Base Effective Dose (mg): Base Dose = (Severity Factor × Weightkg) × Tolerance Multiplier • Severity Factors: Mild = 0.05 mg/kg, Moderate = 0.10 mg/kg, Severe = 0.20 mg/kg • Tolerance Multipliers: Naïve = 1.0×, Low = 1.5×, Moderate = 2.5×, High = 4.0×
Step 2 — Administered Dose (accounting for bioavailability): Administered Dose (mg) = Base Effective Dose ÷ Bioavailability • Oral ≈ 12%, Sublingual ≈ 25%, Inhaled ≈ 40%, Topical ≈ 3%
Step 3 — THC / CBD Split: THC Dose = Administered Dose × THC Fraction CBD Dose = Administered Dose × CBD Fraction • THC-Dominant (20:1): THC = 20/21, CBD = 1/21 • Balanced (1:1): THC = 1/2, CBD = 1/2 • CBD-Dominant (1:20): THC = 1/21, CBD = 20/21
#### Assumptions & References
- Bioavailability estimates: Oral 6–20% (mean 12%) — Grotenhermen, 2003, Clin Pharmacokinet; Sublingual 20–35%; Inhaled 30–56% (mean 40%) — Huestis, 2007, Chem Biodivers; Topical 1–5%.
- Tolerance multipliers are approximations based on receptor downregulation research (Hirvonen et al., 2012, Mol Psychiatry).
More Calculators
- Training Load & Recovery Calculator
- Sprinkler System Pipe Sizing Calculator
- Language Fluency Timeline Calculator
- Spanish Vocabulary Retention Estimator
- Immersion Hours to Proficiency Level Calculator
- Depreciation Calculator for Property Claims
- Actual Cash Value vs Replacement Cost Calculator
- Building vs Contents Coverage Allocator
- Flood Damage Replacement Cost Estimator
- NFIP vs Private Flood Insurance Cost Comparison Calculator
Read Next
Building Vs Contents Coverage Allocator ANA › Life Services Authority › National Calculator Authority › Building vs Contents Coverage Allocator .calc-container {...
Study Time Planner Authority Network America › Life Services Authority › National Calculator Authority .calc-container { max-width: 640px;...