Plan Enforcement
Plan limits by tier, feature flag mappings, integration status, and corrected default values for quota enforcement
Corrected plan limit values aligned with the feature-plan-integration specification.
Plan Limits by Tier
| Feature | Free | Starter | Pro | Enterprise |
|---|
| Surveys | 5 | 30 | 100,000 | Unlimited |
| Responses/Month | 1,000 | 100,000 | 10,000,000 | Unlimited |
| Storage (MB) | 5,120 (5 GB) | 102,400 (100 GB) | 524,288 (512 GB) | Unlimited |
| Max Webhooks | 1 | 10 | 100 | Unlimited |
| Team Members | 50 | 500 | 1,000 | Unlimited |
| Max Tenants | 1 | 5 | 100 | Unlimited |
| Exports/Month | 20 | 100 | 1,000 | Unlimited |
| API Calls/Min | 100 | 500 | 1,000 | Unlimited |
| Max File Size (MB) | 512 | 1,024 | 2,048 | Unlimited |
| Max Questions/Survey | 50 | 1,000 | Unlimited | Unlimited |
Service Integration Summary
| Service | Endpoint | Limit Key | Status |
|---|
| survey-service | POST /surveys/ | surveys | Integrated |
| survey-service | POST /surveys/import-xlsform | surveys | Integrated |
| data-service | POST /responses/ | responses_per_month | Integrated |
| media-service | POST /media/upload | storage_mb | Integrated |
| sync-service | POST /sync/push | responses_per_month | Integrated |
| webhook-service | POST /webhooks/subscriptions | webhooks | Integrated |
| workspace-service | POST /workspaces/ | tenants | Integrated |
| workspace-service | POST /workspaces/{id}/members | team_members | Integrated |
Feature Flag Key Mapping
| Service | Feature Flag Key | Quota Key | Unit Conversion |
|---|
| survey-service | survey.max_surveys | surveys | 1:1 |
| data-service | data.responses_per_month | responses_per_month | 1:1 |
| media-service | storage.max_gb | storage_mb | MB (multiply GB x 1024) |
| webhook-service | notification.webhooks | webhooks | 1:1 |
| workspace-service | core.max_users | team_members | 1:1 |
| workspace-service | core.max_tenants | tenants | 1:1 |
| media-service | storage.max_file_size | max_file_size_mb | 1:1 |
| survey-service | survey.max_questions | questions_per_survey | 1:1 |
Feature Flags per Plan Tier
| Feature | Free | Starter | Pro | Enterprise |
|---|
| xlsform_import | Yes | Yes | Yes | Yes |
| odk_sync | No | Yes | Yes | Yes |
| dashboards | Yes | Yes | Yes | Yes |
| sms_notifications | No | No | Yes | Yes |
| slack_notifications | Yes | Yes | Yes | Yes |
| api_access | No | No | Yes | Yes |
Files Requiring Updates
| File | Location |
|---|
| quota-service/config.py | quota-service/src/quota_service/ |
| plans.py | feature-flags-service/api/interfaces/api_controllers/ |