Languages and Localization
Bilingual EN, ES, and PT UI across every screen, per-user language preference, translation fallback behavior, and the supported locales for field-ops crews.
Updated May 29, 2026
Klees is built bilingual from the ground up. Every screen, notification, email, and report header ships in English, Spanish, and Portuguese — and each user picks their own language on first login. Spanish and Portuguese aren’t an afterthought; they’re a first-class shipping target. For how localization shows up in specific flows, see Time Tracking, Scheduling, and PinShot.
Why this matters
Most field-ops apps treat language as a localization sprint. Klees treats it as an operational requirement. U.S. construction, cleaning, and delivery crews are heavily mixed — Spanish-primary, Portuguese-primary, English-primary on the same job, same shift, same foreman.
If the app is English-only, the foreman becomes a live translator. Multiply that across 40 crews and the dispatcher’s phone never stops ringing. The Alta Janitorial migration documented 22 dispatcher hours per week burnt on UI-translation calls — a number that dropped sharply once crews were on the bilingual Klees UI.
Supported languages
| Language | Locale codes | Coverage |
|---|---|---|
| English | en-US, en-CA | Full |
| Spanish | es-US, es-MX, es-LA | Full |
| Portuguese | pt-BR, pt-PT | Full |
Full coverage means every UI string, notification, email, PDF report header, error message, and support article is translated. There are no English-only screens. Other locales (French, French-Canadian) are on the roadmap with a partial-coverage opt-in on Enterprise.
How a user picks their language
On first login the app detects device locale and proposes a default. The user confirms or picks from a list. The choice persists across devices. Change anytime in Profile → Language. Per-user language is non-overridable by admins — workers always control their own UI.
Company-wide defaults
While users control their own UI, admins set defaults for new users, outbound emails to leads/customers, PDF report headers (body still respects per-user language), and public-facing pages. From Settings → Company → Localization: pick the default language for new users, for outbound emails, for shared public pages, and the currency and date format.
Fallback behavior
Klees ships at 100% coverage for EN, ES, and PT. If a new feature lands with a string not yet translated, fallback runs: requested language → English → internal key (visible to support only). In practice workers only see English fallback in the rare hour-or-two window after a feature ships. Klees does not ship features to ES or PT users with raw internal keys.
Bilingual notifications
Every push, SMS, and email respects the recipient’s language. A scheduled-shift reminder lands in Spanish for a Spanish-primary worker; a PinShot enrollment prompt lands in Portuguese for a Portuguese-primary worker. Manager free-text (rejection notes, schedule messages, daily logs) is not auto-translated — keeping the audit record honest. Auto-translation is on the roadmap as an Enterprise add-on.
Bilingual support
The Klees support team operates in EN, ES, and PT. In-app chat routes to the next available agent in the worker’s language. This applies to onboarding sessions, foreman training (per-language cohorts), migration consulting, and day-to-day tickets. For multi-language operators, the assigned customer success manager typically speaks at least two of the three.
Code-level locale handling
For developers integrating with the REST API, every endpoint accepts an Accept-Language header:
GET /api/v1/timesheets
Authorization: Bearer <token>
Accept-Language: es-MX
Localized field labels, error messages, and PDF rendering follow. Worker-facing data (names, notes, addresses) is never auto-translated — returned verbatim.
A practical checklist
For a multi-language operator setting up Klees:
- Set the company default language to the workforce primary (often Spanish for cleaning, English for construction)
- Ensure the new-hire signup link carries the right language hint
- Schedule foreman training in both languages from day one
- Set notification times that match shift patterns (overnight crews don’t want 7am push)
- Audit the first week’s reports for English-fallback strings — Klees treats fallback as a bug
Localization is included in all plans — see pricing. Not gated behind Pro or Enterprise.