Skip to main content



This page is archived and might not reflect the latest version of the FlutterFire plugins. You can find the latest information on GitHub:

FlutterFire UI for Auth supports localization, so every single text label can be customized.

If your app supports only a single language, and you want to override labels โ€“ you will need to provide a custom class that implements DefaultLocalizations, for example:

import 'package:flutterfire_ui/i10n.dart';
class LabelOverrides extends DefaultLocalizations {
const LabelOverrides();
String get emailInputLabel => 'Enter your email';
String get passwordInputLabel => 'Enter your password';

Once created, pass the instance of LabelOverrides to the localizationsDelegates list in your MaterialApp/CupertinoApp:

class MyApp extends StatelessWidget {
Widget build(BuildContext context) {
return MaterialApp(
localizationsDelegates: [
// Creates an instance of FirebaseUILocalizationDelegate with overridden labels
FlutterFireUILocalizations.withDefaultOverrides(const LabelOverrides()),
// Delegates below take care of built-in flutter widgets
// This delegate is required to provide the labels that are not overridden by LabelOverrides
// ...

If you need to support multiple languages โ€“ follow the official flutter localization guide and make sure that your custom delegate extends LocalizationsDelegate<FlutterFireUILocalizations>.

Note: check out API reference to learn what labels are used by specific widgets