Title: pre_get_avatar
Published: April 23, 2015
Last modified: May 20, 2026

---

# apply_filters( ‘pre_get_avatar’, string|null $avatar, mixed $id_or_email, array $args )

## In this article

 * [Description](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#description)
 * [Parameters](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#parameters)
 * [Source](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#changelog)

[ Back to top](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#wp--skip-link--target)

Allows the HTML for a user’s avatar to be returned early.

## 󠀁[Description](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#description)󠁿

Returning a non-null value will effectively short-circuit [get_avatar()](https://developer.wordpress.org/reference/functions/get_avatar/),
passing the value through the [‘get_avatar’](https://developer.wordpress.org/reference/hooks/get_avatar/)
filter and returning early.

## 󠀁[Parameters](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#parameters)󠁿

 `$avatar`string|null

HTML for the user’s avatar. Default null.

`$id_or_email`mixed

The avatar to retrieve. Accepts a user ID, Gravatar MD5 hash, user email, [WP_User](https://developer.wordpress.org/reference/classes/wp_user/)
object, [WP_Post](https://developer.wordpress.org/reference/classes/wp_post/) object,
or [WP_Comment](https://developer.wordpress.org/reference/classes/wp_comment/) object.

`$args`array

Arguments passed to [get_avatar_url()](https://developer.wordpress.org/reference/functions/get_avatar_url/),
after processing.

More Arguments from get_avatar_url( … $args )

Arguments to use instead of the default arguments.

 * `size` int
 * Height and width of the avatar in pixels. Default 96.
 * `default` string
 * URL for the default image or a default type. Accepts:
    - `'404'` (return a 404 instead of a default image)
    - `'retro'` (a 8-bit arcade-style pixelated face)
    - `'robohash'` (a robot)
    - `'monsterid'` (a monster)
    - `'wavatar'` (a cartoon face)
    - `'identicon'` (the "quilt", a geometric pattern)
    - `'initials'` (initials based avatar with background color)
    - `'color'` (generated background color)
    - `'mystery'`, `'mm'`, or `'mysteryman'` (The Oyster Man)
    - `'blank'` (transparent GIF)
    - `'gravatar_default'` (the Gravatar logo) Default is the value of the `'avatar_default'`
      option, with a fallback of `'mystery'`.
 * `force_default` bool
 * Whether to always show the default image, never the Gravatar.
    Default false.
 * `rating` string
 * What rating to display avatars up to. Accepts:
    - `'G'` (suitable for all audiences)
    - `'PG'` (possibly offensive, usually for audiences 13 and above)
    - `'R'` (intended for adult audiences above 17)
    - `'X'` (even more mature than above) Default is the value of the `'avatar_rating'`
      option.
 * `scheme` string
 * URL scheme to use. See [set_url_scheme()](https://developer.wordpress.org/reference/functions/set_url_scheme/)
   for accepted values.
 * `processed_args` array
 * When the function returns, the value will be the processed/sanitized $args plus
   a "found_avatar" guess. Pass as a reference.

## 󠀁[Source](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#source)󠁿

    ```php
    $avatar = apply_filters( 'pre_get_avatar', null, $id_or_email, $args );
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/pluggable.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/7.0/src/wp-includes/pluggable.php#L3251)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/7.0/src/wp-includes/pluggable.php#L3251-L3251)

## 󠀁[Related](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#related)󠁿

| Used by | Description | 
| [get_avatar()](https://developer.wordpress.org/reference/functions/get_avatar/)`wp-includes/pluggable.php` |

Retrieves the avatar `<img>` tag for a user, email address, MD5 hash, comment, or post.

  |

## 󠀁[Changelog](https://developer.wordpress.org/reference/hooks/pre_get_avatar/?output_format=md#changelog)󠁿

| Version | Description | 
| [4.2.0](https://developer.wordpress.org/reference/since/4.2.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fhooks%2Fpre_get_avatar%2F)
before being able to contribute a note or feedback.