Understanding Feature Limits
Overview of feature restrictions based on your subscription plan
Understanding Feature Limits
Each LobbyFlight plan has different feature limits. This article explains all restrictions and how to work with them.
Feature Limits by Plan
Complete Feature Matrix
| Feature | Basic (€69) | Pro (€149) | Premium (€199) |
| --------- | ------------- | ----------- | ---------------- |
| **Airports** | 1 | 3 | Unlimited |
|---|---|---|---|
| **Info Slides** | 0 | 5 | Unlimited |
| **Languages** | 1 (EN) | 2 | All 11 |
| **Weather Widget** | ❌ | ✅ | ✅ |
| **Analytics** | ❌ | ❌ | ✅ |
| **Push Notifications** | ❌ | ❌ | ✅ |
| **Refresh Rate** | 60 min | 30 min | 5 min |
| **Logo Upload** | ✅ | ✅ | ✅ |
| **Custom Colors** | ✅ | ✅ | ✅ |
| **Display Rotation** | ❌ | ✅ | ✅ |
| **Multi-Display** | ✅ | ✅ | ✅ |
| **Offline Mode** | ✅ | ✅ | ✅ |
| **Support** | Priority | Priority + Phone |
Airport Limits
Basic Plan: 1 Airport
Restriction:
UI Behavior:
When 1 airport selected:
→ "+ Add Airport" button becomes disabled
→ Tooltip: "Upgrade to Pro for 3 airports"Use Case:
Upgrade Path: Pro plan for 3 airports
Pro Plan: 3 Airports
Restriction:
UI Behavior:
When 3 airports selected:
→ Additional airports grayed out
→ Tooltip: "Upgrade to Premium for unlimited airports"Use Case:
Upgrade Path: Premium for unlimited airports
Premium Plan: Unlimited Airports
Restriction: None (technical limit: 999)
UI Behavior:
Any number of airports can be added
Display rotates through all selected airportsUse Case:
Info Slides Limits
Basic Plan: 0 Info Slides
Restriction:
UI Behavior:
Portal → Content:
┌─────────────────────────────────┐
│ 🔒 Feature Locked │
│ │
│ Info slides require Pro plan │
│ or higher. │
│ │
│ [View Plans] [Upgrade to Pro] │
└─────────────────────────────────┘Workaround: None (upgrade required)
Pro Plan: 5 Info Slides
Restriction:
UI Behavior:
When 5 slides created:
→ "+ Add Slide" button disabled
→ Message: "You've reached your slide limit (5/5).
Upgrade to Premium for unlimited slides."Use Case:
Upgrade Path: Premium for unlimited slides
Premium Plan: Unlimited Info Slides
Restriction: None (technical limit: 999)
UI Behavior:
Any number of slides can be created
Display rotates through all slides
Recommended: Max 10 slides for appropriate rotation durationUse Case:
Language Limits
Basic Plan: 1 Language (English)
Restriction:
UI Behavior:
Settings → Languages:
EN: ✅ (locked, always active)
DE: 🔒 Pro or Premium required
ES: 🔒 Pro or Premium required
...Display Behavior:
Upgrade Path: Pro for 2 languages
Pro Plan: 2 Languages
Restriction:
UI Behavior:
Settings → Languages:
Select up to 2 languages:
☑ EN - English (selected)
☑ DE - Deutsch (selected)
☐ ES - Español (grayed out, limit reached)
☐ FR - Français (grayed out, limit reached)
☐ IT - Italiano (grayed out, limit reached)
☐ PT - Português (grayed out, limit reached)
☐ PL - Polski (grayed out, limit reached)
☐ CS - Čeština (grayed out, limit reached)
☐ SK - Slovenčina (grayed out, limit reached)
☐ HU - Magyar (grayed out, limit reached)
☐ SL - Slovenščina (grayed out, limit reached)
☐ ZH - 简体中文 (grayed out, limit reached)
☐ AR - العربية (RTL) (grayed out, limit reached)
☐ JA - 日本語 (grayed out, limit reached)
☐ RU - Русский (grayed out, limit reached)
☐ KO - 한국어 (grayed out, limit reached)
☐ NL - Nederlands (grayed out, limit reached)
☐ TR - Türkçe (grayed out, limit reached)
☐ EL - Ελληνικά (grayed out, limit reached)
☐ RO - Română (grayed out, limit reached)
☐ UK - Українська (grayed out, limit reached)
☐ SV - Svenska (grayed out, limit reached)
☐ DA - Dansk (grayed out, limit reached)
☐ NB - Norsk (grayed out, limit reached)
☐ FI - Suomi (grayed out, limit reached)
☐ HI - हिन्दी (grayed out, limit reached)
☐ TH - ไทย (grayed out, limit reached)
☐ VI - Tiếng Việt (grayed out, limit reached)
☐ ID - Bahasa Indonesia (grayed out, limit reached)
☐ MS - Bahasa Melayu (grayed out, limit reached)
☐ ZH-TW - 繁體中文 (grayed out, limit reached)
☐ HE - עברית (RTL) (grayed out, limit reached)
☐ FA - فارسی (RTL) (grayed out, limit reached)
☐ HR - Hrvatski (grayed out, limit reached)
☐ BG - Български (grayed out, limit reached)
☐ SR - Српски (grayed out, limit reached)
☐ LT - Lietuvių (grayed out, limit reached)
☐ LV - Latviešu (grayed out, limit reached)
☐ ET - Eesti (grayed out, limit reached)
☐ FIL - Filipino (grayed out, limit reached)
☐ BN - বাংলা (grayed out, limit reached)
☐ SW - Kiswahili (grayed out, limit reached)
Upgrade to Premium for all 42 languagesRecommended Combinations:
Upgrade Path: Premium for all 42 languages
Premium Plan: All 42 Languages
Languages available:
1. EN - English
2. DE - Deutsch
3. ES - Español
4. FR - Français
5. IT - Italiano
6. PT - Português
7. PL - Polski
8. CS - Čeština
9. SK - Slovenčina
10. HU - Magyar
11. SL - Slovenščina
12. ZH - 简体中文
13. AR - العربية (RTL)
14. JA - 日本語
15. RU - Русский
16. KO - 한국어
17. NL - Nederlands
18. TR - Türkçe
19. EL - Ελληνικά
20. RO - Română
21. UK - Українська
22. SV - Svenska
23. DA - Dansk
24. NB - Norsk
25. FI - Suomi
26. HI - हिन्दी
27. TH - ไทย
28. VI - Tiếng Việt
29. ID - Bahasa Indonesia
30. MS - Bahasa Melayu
31. ZH-TW - 繁體中文
32. HE - עברית (RTL)
33. FA - فارسی (RTL)
34. HR - Hrvatski
35. BG - Български
36. SR - Српски
37. LT - Lietuvių
38. LV - Latviešu
39. ET - Eesti
40. FIL - Filipino
41. BN - বাংলা
42. SW - KiswahiliAuto-Switching:
Weather Widget Access
Basic Plan: Not Available
Restriction:
UI Behavior:
Settings → Show Weather:
☐ Show Weather Widget 🔒
Weather widget requires Pro or Premium plan.
[Upgrade to Pro]Display: No weather widget visible
Pro & Premium: Available
Access:
Features:
Data Source: OpenWeatherMap API
Analytics Access
Basic & Pro: Not Available
Restriction:
UI Behavior:
Portal Navigation:
☐ Analytics 🔒 Premium OnlyPremium: Available
Metrics:
Use Case:
Refresh Rate by Plan
Refresh rates are automatically set based on your subscription tier and cannot be manually configured.
Basic: 60 Minutes (Hourly)
Automatic Setting:
Use Case:
Pro: 30 Minutes
Automatic Setting:
Use Case:
Premium: 5 Minutes
Automatic Setting:
Use Case:
Feature Lock Messages
In Settings
When feature is locked:
Feature: [Feature Name] 🔒
This feature requires [Plan Name] plan or higher.
Current plan: Basic (€69/month)
Required: Pro (€149/month) or Premium (€199/month)
[Learn More] [Upgrade Now]In Content Section
Info slides locked (Basic):
┌─────────────────────────────────────┐
│ Info Slides │
│ │
│ 📊 Create hotel information slides │
│ to display between flights. │
│ │
│ 🔒 Available on Pro & Premium │
│ │
│ [View Plans] [Get Started] │
└─────────────────────────────────────┘On Display
Feature not available:
Handling Limit Overages
Too Many Airports
Problem: You have 3 airports (Pro), downgrading to Basic
Before downgrade:
Settings → Airports:
⚠️ Warning: You have 3 airports selected.
Basic plan allows only 1 airport.
Please remove 2 airports before downgrading to
avoid display issues.
Selected airports:
✓ VIE - Vienna
✓ MUC - Munich
✓ ZRH - Zurich
[Remove MUC] [Remove ZRH] [Cancel Downgrade]After downgrade (if not resolved):
```
⚠️ You have 3 airports but Basic allows 1.
Please remove 2 airports or upgrade to Pro.
```
Too Many Info Slides
Problem: You have 7 slides (Premium), downgrading to Pro
Automatic behavior:
```
Slide 1 ✅
Slide 2 ✅
Slide 3 ✅
Slide 4 ✅
Slide 5 ✅
Slide 6 🔒 (Over limit, not displayed)
Slide 7 🔒 (Over limit, not displayed)
```
Solution: Delete or deactivate excess slides
Too Many Languages
Problem: You have 5 languages (Premium), downgrading to Pro
Automatic behavior:
```
⚠️ You have 5 languages selected but Pro allows 2.
Only first 2 (EN, DE) will be active.
[Adjust Languages] [Upgrade to Premium]
```
Upgrade Recommendations
When to Upgrade Basic → Pro?
Indicators:
ROI Calculation:
Pro upgrade: +€20/month
New features:
- Weather: Guest satisfaction ↑
- Info slides: Marketing channel for services
- 2 languages: 80%+ guests understand display
→ ROI: Increased bookings of shuttle/spa/restaurantWhen to Upgrade Pro → Premium?
Indicators:
ROI Calculation:
Premium upgrade: +€99/month
New features:
- Unlimited airports: Cover all locations
- 42 languages: 95%+ guests understand display
- Analytics: Data-driven decisions
→ ROI: Scaling across multiple locationsTechnical Details
Feature Access Check (Code Level)
Function: checkFeatureAccess(hotelId, feature)
Check:
1. Load hotel record from DB
2. Check subscriptionStatus → must be 'active' or 'trialing'
3. Check isActive → must be true
4. Check feature-specific limits:
- displays: count <= maxDisplays
- infoSlides: maxInfoSlides > 0
- whitelabel: brandingLevel === 'whitelabel'
- languages: languagesEnabled === true
- weather: weatherEnabled === true
- analytics: analyticsEnabled === true
5. Return: true/falseExample:
// Pro Plan
checkFeatureAccess(hotelId, 'weather') → true
checkFeatureAccess(hotelId, 'analytics') → false
// Premium Plan
checkFeatureAccess(hotelId, 'analytics') → trueDatabase Fields
hotels table:
max_airports: integer (1, 3, 999)
max_info_slides: integer (0, 5, 999)
languages_enabled: boolean
weather_enabled: boolean
analytics_enabled: booleanUpdated via webhook on plan change.
Frequently Asked Questions
What happens if I exceed a limit?
Excess elements are hidden/ignored. No errors, but warning in portal.
Can I temporarily increase a limit?
No. Upgrade to higher plan required. Contact Sales for custom Enterprise plans.
Are settings deleted on downgrade?
No. Settings remain saved but won't be actively used if over limit.
Can I purchase features individually?
No. Features are plan-based. Custom solutions: info@lobbyflight.com
Is there a free trial for features?
Yes! All plans include a 7-day free trial. Test all features risk-free.
Next Steps
Feature limits understood?
Support
Questions about feature limits?