Files
boc/docs/products/quixzoom-case-study-flatenbadet.md
T

365 lines
11 KiB
Markdown
Raw Normal View History

# Case Study: Glasskiosken i Flatenbadet
> **quiXzoom + Landvex Intelligence i praktiken**
> **Plats:** Flatenbadet, Stockholm
> **Kund:** Glasskioskägare (säsongsbaserad verksamhet)
> **Datum:** 2026-07-14
---
## Bakgrund
Flatenbadet är ett populärt strandbad i södra Stockholm. En glasskiosk drivs där under sommarmånaderna (juniaugusti). Ägaren, Lisa, har svårt att:
1. **Veta hur mycket glass att beställa** — för mycket = svinn, för lite = förlorad försäljning
2. **Planera personal** — för få anställda = långa köer, för många = onödiga lönekostnader
3. **Veta när säsongen startar/peakar/slutar** — väder och skollov påverkar, men hur mycket?
4. **Förstå konkurrensen** — andra kiosker, food trucks, närbutiker
5. **Optimera öppettider** — öppna för tidigt/sent = onödiga kostnader
---
## Traditionellt beslutsfattande
Lisa gissar baserat på:
- Förra årets försäljning (men vädret var annorlunda)
- Väderprognosen (men sol ≠ besökare)
- Magkänsla (men magkänslan har fel 30% av tiden)
**Resultat 2025:**
- Vecka 28: 40 liter glass över = 2,800 kr svinn
- Vecka 30: Slut på chokladglass vid 15:00 = 1,500 kr förlorad försäljning
- Vecka 32: 3 anställda för 12 kunder = 1,200 kr onödiga lönekostnader
**Total förlust 2025:** ~45,000 kr på en säsong
---
## quiXzoom + Landvex-lösningen
### Steg 1: Datainsamling (quiXzoom)
Lisa beställer ett **Recurring Mission** via quiXzoom API:
```bash
POST /v1/orders
{
"client_reference": "flatenbadet-glasskiosk-2026",
"category": "beach_facility_status",
"description": "Daily monitoring of Flatenbadet beach area for crowd density, facility usage, and surrounding activity",
"locations": [
{
"location_id": "flaten_main",
"name": "Flatenbadet huvudstrand",
"coordinates": {"lat": 59.2456, "lng": 18.1534},
"requirements": {
"angles": ["overview", "kiosk_area", "parking_lot"],
"time_of_day": "midday"
}
},
{
"location_id": "flaten_north",
"name": "Flatenbadet norra delen",
"coordinates": {"lat": 59.2470, "lng": 18.1550},
"requirements": {
"angles": ["overview"],
"time_of_day": "midday"
}
}
],
"recurring": {
"enabled": true,
"frequency": "daily",
"time_window": "11:00-15:00",
"season": "summer_only",
"pause_conditions": {
"weather_extreme": true
}
},
"delivery": {
"format": "structured_json",
"include_metadata": true,
"include_ai_analysis": true,
"webhook_url": "https://api.landvex.com/flatenbadet/photos"
},
"budget": {
"max_total": 2000,
"currency": "USD"
}
}
```
**Kostnad:** $8/dag × 90 dagar = $720 för hela säsongen
---
### Steg 2: AI-analys (Landvex)
Varje dag kl 12:00 tas foton. Inom 30 minuter levereras:
```json
{
"mission_id": "mis_flat_20260714",
"captured_at": "2026-07-14T12:15:00Z",
"photos": [
{
"photo_id": "img_flat_001",
"url": "https://cdn.quixzoom.com/...",
"ai_analysis": {
"amos_vision": {
"object_detection": ["people", "umbrellas", "beach_chairs", "kiosk", "parking_cars"],
"scene_classification": "beach_recreational",
"condition_assessment": "sunny_clear"
},
"amos_crowd": {
"density_level": "moderate",
"estimated_count": 340,
"peak_areas": ["kiosk_area", "main_beach"],
"confidence": 0.91
},
"amos_sentiment": {
"crowd_mood": "positive",
"engagement_level": "high",
"atmosphere": "summer_vacation",
"children_ratio": 0.35
},
"amos_parking": {
"occupancy_rate": 0.72,
"estimated_cars": 85,
"trend": "increasing"
},
"amos_commerce": {
"nearby_food_trucks": 2,
"competitor_activity": "moderate",
"queue_length_at_kiosk": 8
}
}
}
]
}
```
---
### Steg 3: Beslutsintelligens (Landvex BI)
Landvex kombinerar quiXzoom-data med externa datakällor:
| Datakälla | Typ | Uppdatering |
|-----------|-----|-------------|
| quiXzoom foton | Primär | Dagligen |
| SMHI väder | Extern | Timvis |
| Google Places besökstrender | Extern | Dagligen |
| Skollovskalender | Extern | Årligen |
| Konkurrenters öppettider | Extern | Veckovis |
| Råvarupriser (mjölk, socker) | Extern | Dagligen |
**Landvex BI-modell genererar:**
```json
{
"recommendation": {
"date": "2026-07-15",
"confidence": 0.87,
"glass_order": {
"total_liters": 180,
"breakdown": {
"vanilla": 45,
"chocolate": 54,
"strawberry": 36,
"pistachio": 27,
"sorbet": 18
},
"urgency": "order_by_18:00"
},
"staffing": {
"recommended": 3,
"shift_hours": "10:00-19:00",
"peak_expected": "14:00-16:00",
"rationale": "Moderate crowd (340), high sentiment, 72% parking, increasing trend"
},
"pricing": {
"recommended_adjustment": "none",
"competitor_pricing": "stable",
"demand_elasticity": "normal"
},
"hours": {
"open": "10:00",
"close": "20:00",
"rationale": "High engagement, 35% children (families stay later)"
}
},
"forecast": {
"next_3_days": [
{"date": "2026-07-15", "expected_visitors": 380, "confidence": 0.82},
{"date": "2026-07-16", "expected_visitors": 290, "confidence": 0.75},
{"date": "2026-07-17", "expected_visitors": 420, "confidence": 0.79}
],
"week_ahead_trend": "increasing",
"season_peak_estimate": "2026-07-28 to 2026-08-05"
},
"alerts": [
{
"type": "weather_risk",
"severity": "medium",
"message": "Thunderstorm predicted Friday 14:00-17:00. Consider closing early or reducing stock.",
"recommended_action": "Reduce order by 30% for Friday"
},
{
"type": "competitor",
"severity": "low",
"message": "New food truck registered 200m north. Monitoring impact.",
"recommended_action": "None yet — watch weekend sales"
}
]
}
```
---
## Resultat: Säsongen 2026
### Vecka 28 (juli)
| Dag | Besökare (faktiskt) | qiXzoom est. | Landvex rekomm. | Lisa gjorde | Resultat |
|-----|---------------------|--------------|-----------------|-------------|----------|
| Mån | 290 | 310 | 160L, 2 pers | 160L, 2 pers | ✅ Perfekt |
| Tis | 340 | 380 | 180L, 3 pers | 180L, 3 pers | ✅ Perfekt |
| Ons | 420 | 400 | 200L, 3 pers | 190L, 3 pers | ⚠️ -10L (ok) |
| Tor | 280 | 290 | 150L, 2 pers | 150L, 2 pers | ✅ Perfekt |
| Fre | 150 | 180* | 80L, 1 pers | 100L, 2 pers | ⚠️ +20L (åskoväder) |
| Lör | 510 | 480 | 250L, 4 pers | 250L, 4 pers | ✅ Perfekt |
| Sön | 460 | 450 | 230L, 3 pers | 230L, 3 pers | ✅ Perfekt |
*Landvex varnade för åskoväder — Lisa hade kunnat minska mer.
**Vecka 28 resultat:**
- Svinn: 180 kr (vs 2,800 kr 2025)
- Förlorad försäljning: 0 kr (vs 1,500 kr 2025)
- Onödiga lönekostnader: 200 kr (vs 1,200 kr 2025)
- **Total besparing: 4,920 kr på en vecka**
---
### Säsongssammanställning 2026
| Mått | 2025 (gissning) | 2026 (qiXzoom+Landvex) | Skillnad |
|------|-----------------|------------------------|----------|
| Svinn | 18,500 kr | 2,100 kr | **-16,400 kr** |
| Förlorad försäljning | 12,000 kr | 1,800 kr | **-10,200 kr** |
| Onödiga lönekostnader | 14,500 kr | 3,200 kr | **-11,300 kr** |
| **Total förlust** | **45,000 kr** | **7,100 kr** | **-37,900 kr** |
| qiXzoom/Landvex kostnad | 0 kr | 6,800 kr | +6,800 kr |
| **Nettobesparing** | — | — | **+31,100 kr** |
**ROI: 457%**
---
## Utökad användning: Proaktiv intelligens
Efter några veckor lär sig Landvex mönster:
### Mönster 1: "Glassvädret"
Landvex upptäcker att besökare inte bara kommer vid sol — de kommer vid **"glassväder"**:
- Sol + 25°C + lätt vind = hög efterfrågan
- Molnigt + 22°C + hög luftfuktighet = låg efterfrågan
- Sol + 30°C + vindstilla = extrem efterfrågan (men kortare besök)
Lisa justerar automatisk beställning baserat på väderprognos + historiskt mönster.
### Mönster 2: "Skolveckoeffekten"
Landvex ser att:
- Vecka 26-27 (före skollov): Familjer, högt värde per besök
- Vecka 28-31 (skollov): Tonåringar, lägre värde men högre volym
- Vecka 32 (efter skollov): Bara lokala, lägre volym
Lisa justerar sortiment: mer premium före skollov, mer volym under.
### Mönster 3: "Konkurrensrespons"
När en ny food truck dyker upp 200m bort:
- Dag 1-2: Ingen märkbar effekt
- Dag 3-5: -15% försäljning 12:00-14:00
- Lisa svarar med "lunchdeal" 11:30-13:30
- Dag 6-10: Försäljning återhämtad
Landvex flaggar konkurrensändringar automatiskt.
---
## Teknisk implementation
### Lisa's dashboard (enkel webbapp)
```html
<!DOCTYPE html>
<html>
<head>
<title>Flatenbadet Glasskiosk — Beslutsstöd</title>
</head>
<body>
<h1>Dagens rekommendation</h1>
<div id="recommendation">
<!-- Landvex API svar -->
</div>
<h2>Live från Flatenbadet</h2>
<img id="live-photo" src="" alt="Senaste foto">
<h2>3-dagars prognos</h2>
<div id="forecast">
<!-- Chart.js graf -->
</div>
<script>
// Hämta dagens rekommendation
fetch('https://api.landvex.com/flatenbadet/today')
.then(r => r.json())
.then(data => {
document.getElementById('recommendation').innerHTML = `
<p><strong>Glass:</strong> ${data.glass_order.total_liters}L</p>
<p><strong>Personal:</strong> ${data.staffing.recommended} pers (${data.staffing.shift_hours})</p>
<p><strong>Öppet:</strong> ${data.hours.open}${data.hours.close}</p>
`;
});
// Hämta senaste foto
fetch('https://api.quixzoom.com/v1/photos?order_id=ord_flat_2026&limit=1')
.then(r => r.json())
.then(data => {
document.getElementById('live-photo').src = data.photos[0].url;
});
</script>
</body>
</html>
```
---
## Sammanfattning
| Komponent | Funktion | Kostnad | Värde |
|-----------|----------|---------|-------|
| **quiXzoom** | Dagliga foton av stranden | $720/säsong | Verklighetsdata |
| **Landvex AI** | Bildanalys + crowd counting | Ingår | Strukturerad data |
| **Landvex BI** | Prediktion + rekommendationer | $200/säsong | Beslutsstöd |
| **Total** | Komplett intelligensplattform | $920/säsong | +31,100 kr besparing |
**Nyckelinsikt:** Lisa behöver inte längre gissa. Hon har samma datakvalitet som en kedja med 50 butiker — till en bråkdel av kostnaden.
---
## Nästa steg för Lisa
1. **Vinter 2026/27:** Använda quiXzoom för att fotografera isbanan vid Flatenbadet — bedöma skridskoåkningpotential
2. **Vår 2027:** Förhandsbeställa glass baserat på väderprognos + historisk data
3. **Sommar 2027:** Automatiska beställningar kopplade till leverantörs-API
---
*quiXzoom + Landvex = Beslutsinfrastruktur för verkliga företag.*