Update cost estimate to reflect actual usage (50x more accurate)

Issue: UI showed estimated cost of $0.15 per check, but actual
usage data shows average cost of only $0.003 per check - a 50x
difference!

Analysis from actual usage report:
- L'Oreal: 2 analyses, 6 checks total
- Cost: $0.02 total = $0.003 per check
- Old estimate: $0.15 per check (way too high)
- New estimate: $0.01 per check (conservative but realistic)

Changes:
- Updated cost calculation from 0.15 to 0.01 per check
- Updated display text from "$0.15 each" to "~$0.01 each"
- Applied to both web_ui.html and frontend/index.html

Example:
- Before: 3 checks = $0.45 estimated
- After: 3 checks = $0.03 estimated
- Actual: 3 checks = ~$0.01 (based on real usage)

New estimate is much closer to reality and based on actual
Gemini API usage data from production analyses.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
nickviljoen 2026-02-02 13:43:50 +02:00
parent a40cf48979
commit ed0c362683
2 changed files with 5 additions and 5 deletions

View file

@ -512,7 +512,7 @@
<div class="cost-display" id="costDisplay" style="background: #e3f2fd; padding: 12px; border-radius: 8px; border-left: 4px solid #2196f3; display: none;">
<strong>Estimated Cost: <span id="estimatedCost">$0.00</span></strong>
<br>
<small style="color: #666;">Based on <span id="checkCount">0</span> selected checks at $0.15 each</small>
<small style="color: #666;">Based on <span id="checkCount">0</span> selected checks at ~$0.01 each</small>
</div>
</div>
<div class="form-group">
@ -1088,7 +1088,7 @@
if (profileSelect.value && availableProfiles[profileSelect.value]) {
const profile = availableProfiles[profileSelect.value];
const numChecks = profile.enabled_count;
const cost = numChecks * 0.15;
const cost = numChecks * 0.01; // Updated based on actual usage: ~$0.01 per check
estimatedCost.textContent = `$${cost.toFixed(2)}`;
checkCount.textContent = numChecks;

View file

@ -584,7 +584,7 @@
<div class="cost-display" id="costDisplay" style="background: #e3f2fd; padding: 12px; border-radius: 8px; border-left: 4px solid #2196f3; display: none;">
<strong>Estimated Cost: <span id="estimatedCost">$0.00</span></strong>
<br>
<small style="color: #666;">Based on <span id="checkCount">0</span> selected checks at $0.15 each</small>
<small style="color: #666;">Based on <span id="checkCount">0</span> selected checks at ~$0.01 each</small>
</div>
</div>
<div class="form-group">
@ -1722,8 +1722,8 @@
if (profileSelect.value && availableProfiles[profileSelect.value]) {
const profile = availableProfiles[profileSelect.value];
const numChecks = profile.enabled_count;
const cost = numChecks * 0.15;
const cost = numChecks * 0.01; // Updated based on actual usage: ~$0.01 per check
estimatedCost.textContent = `$${cost.toFixed(2)}`;
checkCount.textContent = numChecks;
costDisplay.style.display = 'block';