BuddyPress Automations
Add a Role When a BuddyPress Member Uploads a Profile Photo
Communities with real faces feel friendlier and safer. A common way to encourage that is to hold back a perk — posting rights, access to a members-only area, a badge — until a member has added a profile photo. Zapify makes this hands-off: the A user updates their avatar trigger notices the new photo, and the Add a role to a user action hands out the role that unlocks the perk.
What this automation does
The automation is one trigger plus one action:
- Trigger: A user updates their avatar (
BP_AVATAR_UPDATED, BuddyPress) - Action: Add a role to a user (
WP_ADD_USER_ROLE, WordPress)
When a member uploads or changes their profile photo, Zapify grants them the role you specify.
The trigger is about member profile photos only. Changing a group's avatar does not start it.
Before you start
- BuddyPress must be installed and active, with member avatar uploads allowed. Zapify's BuddyPress integration is not available on sites running BuddyBoss Platform.
- The role you want to grant must already exist, for example a role called Verified Member, and whatever it unlocks should already be set up.
How to build the automation
Step 1: Create a new automation
- In the WordPress admin, go to Zapify → Automations.
- Click Add New to open the builder.
- Name it clearly, such as Unlock posting after profile photo.

Step 2: Add the "A user updates their avatar" trigger
- Click Add Trigger.
- Choose BuddyPress as the app.
- Select the trigger A user updates their avatar.
This trigger has no settings to fill in.


![]()
Step 3: Add the "Add a role to a user" action
- Click Add Action.
- Choose WordPress as the app.
- Select Add a role to a user.



Step 4: Configure the action
| Field | Required | What it does |
|---|---|---|
| Role | Yes | The role to grant — pick from your site's registered roles. |
| Replace existing roles | No | Off (default) keeps the roles the member already has. On replaces them with just this one. |
| User | No | Leave empty to use the person the automation is running for — the member whose photo changed. |

Be careful with Replace existing roles
Leave Replace existing roles switched off unless you are sure. When it is on, the member keeps only the new role, so an administrator or editor who changes their photo could lose their existing access.
Step 5: Set the steps Live and save
- Set both the trigger and the action to Live.
- Click Save.

Tokens you can use
| Token | What it holds |
|---|---|
| Avatar URL | The web address of the member's new full-size photo. |
| How it was set (crop, camera or recycle) | How BuddyPress recorded the change: crop, camera or recycle. |
The member whose photo changed is available as the usual user tokens, such as User email and Display name. If an admin changes someone else's photo, the member whose photo it is gets the role, not the admin.
How to test it
- Log in as a test member and upload a new profile photo from Profile → Change profile photo.
- Open Users in the WordPress admin and confirm the test member now has the role.
- If the role was not added, open Zapify → Logs to see whether the run fired.
Conclusion
With the A user updates their avatar trigger and the Add a role to a user action, Zapify turns "add a profile photo" into a real unlock for your members. Next, review banner images the same way with send an email when a member updates their cover image.
FAQs
Does the role get added again if the member changes their photo later?
The automation runs each time the photo changes, but adding a role the member already has changes nothing, so there is no harm in it.
Does it run when someone deletes their photo?
The trigger is for new or changed photos. It is not built to react to a photo being removed.
Is this feature free?
Yes. BuddyPress is a free Zapify integration, and both the A user updates their avatar trigger and the Add a role to a user action are included in the free plan.
Do I need to write any code?
No. Everything is configured in the Zapify visual builder.