UI Avatars

Generate avatars with initials from names.

UI Avatars has a simple-to-use API with no limiting or login. No usage tracking and no information is stored. The final images are cached, but nothing else. Just write name or surname, or both.

NEW! Bold font weight option

NEW! There is now a official Laravel Wrapper

Example avatars
- Daily Requests
-ms Avg. Response Time


All requests returns a image stream to be used directly in a <img/> tag.

Generate a avatar with default settings, for user "John Doe".


Generate a blue avatar



Image Size (size)

Avatar image size in pixels. Between: 16 and 512. Default: 64


Font Size (font-size)

Font size in percentage of size. Between 0.1 and 1. Default: 0.5


Initial Characters (length)

Length of the generated initials. Default: 2


Name (name)

The name used to generate initials. You can specify the initials yourself as well. Default: John Doe


Rounded Image (rounded)

Boolean specifying if the returned image should be a circle. Default: false


Bold (bold)

Boolean specifying if the returned letters should use a bold font. Default: false


Background Color (background)

Hex color for the image background, without the hash (#). Default: ddd


Font Color (color)

Hex color for the font, without the hash (#). Default: 222


Uppercase (uppercase)

Decide if the API should uppercase the name/initials. Default: true


Format (format)

Decide if the API should return SVG or PNG. Default: svg if the Accept header includes image/svg+xml, png otherwise


All settings above can be mixed together as you desire.

With Gravatar or similar

A good use-case would be using it as a fallback for Gravatar. Example:


Because of limitations in Gravatar, we must pass in the parameters as sub-directories, instead of query-parameters. You should also consider urlencoding the name, in case it contains special characters. It's a limitation by Gravatar, not UI Avatars.

The order is as follows:


I recommend using 1.5x or 2x sizes for your avatars, but keeping the img tag the original size, to ensure crisp avatars on high DPI screens.

Language/Script support

I have added support for some unicode scripts/languages that are not supported by the typical fonts. Current support:

WordPress plugin

It has WordPress plugin! If you have a WordPress site, you can use the WordPress plugin, which is also free.


Servers are setup in the following countries/cities:

Privacy and Monitoring

No data is being stored on our serveres. Monitoring & logging is entirely disabled.