How to Add Custom Icons in FlutterFlow

Custom icons can give your FlutterFlow project a unique look and help you maintain a consistent design language. FlutterFlow allows you to upload and use your own custom icons, but the process requires converting image files into font files first. Below is a step-by-step guide to help you create and integrate custom icons into your project.


Step 1: Prepare Your Image

  • Start by choosing the image you want to use as an icon.

  • Ensure that the image is in SVG format. If your image is in PNG or JPG format, you’ll need to convert it into SVG.

  • You can use an online converter tool for this conversion.


Step 2: Convert SVG into Icon Font

  • Once you have your SVG file, go to Fluttericon. This is the ideal tool for converting SVGs into usable Flutter icons.

  • Drag and drop your SVG image into Fluttericon.

  • The tool will generate the icon in font format.

  • Click the Download button (top right corner) to download your icon set.


Step 3: Extract the Downloaded Files

  • The icon set will be downloaded as a ZIP file.

  • Unzip the file to access its contents. Inside, you will find:

    • A TTF font file (TrueType Font)

    • A Dart file containing the mappings for your custom icon


Step 4: Add the Icon to FlutterFlow

  1. Open FlutterFlow and go to the left sidebar.

  2. Navigate to Theme → Typography & Icons.

  3. Scroll down to the Custom Icons section.

  4. Click on the Add Icon button.

  5. Upload the TTF file from your extracted folder.

  6. Next, upload the corresponding Dart file from the same folder.

  7. Click Add Icons to complete the process.


Step 5: Use Your Custom Icon

  • Once added, your custom icons will be available alongside FlutterFlow’s default icons.

  • You can now use them in your widgets, buttons, or anywhere an icon is required.


Tips for Better Results

  • Use simple and clean SVGs for best visibility at different sizes.

  • Keep your icons consistent in style to maintain UI/UX harmony.

  • Test your custom icons across multiple screen sizes to ensure they render well.


This way, you can create a fully personalized FlutterFlow project with icons tailored to your app’s branding and design.


1 Like