How to Use Custom Attributes for Relationship Data
Every organization is unique. So it's expected that each one would have its own specific details to track for relationships beyond basic contact information. For example, a non-profit animal shelter might want to keep tabs on the name, breed, and age of dog that a supporter has adopted. Or an education foundation might want to track areas of expertise for mentors that help with their tutoring programs.
In MonkeyPod, we call these custom attributes, and you can define any number of custom attributes to capture the data you need about your relationships.
Here are some important characteristics of custom attributes:
- Custom attributes are grouped together in sets to help keep related information organized. This is a powerful way to easily record and report on program participation, donor interests, or other relationship details that are specific to your organization.
- Custom attributes can be selected for inclusion in any exported reports.
- Custom attributes can be used in advanced relationship searches to locate specific donors and segment donor lists.
- The display of advanced search results can be modified to show important custom attribute values right there in the list.
When should you create a custom attribute?
Before we get into how to create these attributes, let's talk a bit about when you should or should not create a custom attribute.
Let's start with some good examples.
Good examples of custom attributes include expanding your relationship data in ways that MonkeyPod doesn't already cover by default. Some good examples for custom attributes include:
- Additional demographic data
- Donor preferences (program interests, communication preferences, etc.)
- Volunteer interests and skills
- Program application data
- Supporting documentation including photos or PDFs
And here are some unnecessary uses
You should avoid creating custom attributes to gather information that is already tracked in MonkeyPod some other way. Here are some examples to avoid:
- "Gave over $10,000 last year": There's no need to create attributes for donor giving levels. MonkeyPod can report on that information for you so it's redundant and also requires manual maintenance which can be error prone.
- Volunteered or attended an event: attendance can easily be tracked with MonkeyPod's interactions.
- Donated to a specific fundraiser: All donations that come through MonkeyPod's fundraising pages are automatically tagged with that information and manual donations may be tagged as well. This means that donors can be found easily via the advanced relationship search and on fundraising reports "out of the box" in your MonkeyPod
Where do I create custom attributes?
To get started, choose Relationships > Custom Attributes from the main menu.

How do custom attributes work?
Custom attributes work by putting together two concepts:
- Attributes: The individual fields you create to track specific pieces of information. For example, an attribute called "Donor Preferences" might let you record which types of events or fundraisers a donor likes to participate in.
- Role-Based Attribute Sets: Groups of related attributes that appear together as a tab on a relationship's record. For example, a "Donor Information" tab might include both "Donor Preferences" and "Contact Preferences." These sets also group the related attributes together in the Relationship Search criteria list to make them easier to find when building your searches.
Attribute Definitions
The Attribute Definitions tab shows all of the custom attributes you've created in your MonkeyPod.

To add a new one, click Add a custom attribute and fill in the following fields.

Attribute
The name of the field as it will appear in your MonkeyPod. Choose something clear and consistent with how your team talks about the data, for example, "T-Shirt Size" or "Volunteer Interests."
Data Type
The kind of data the attribute will store. This determines what kind of input the field accepts. Choose carefully because this cannot be changed after the attribute is created. The available data types are:
- Text: For basic text input. You have a variety of choices for the input options here: short text (single line text fields), long text (a larger text box for multiple lines), radio buttons, a select list, a date selector, or email. The email option turns the email into a "mailto" link when shown in search results.
- Text (Multiple): Allows multiple values to be selected for a single attribute. A good choice when a relationship might have more than one applicable answer, such as "Areas of Interest" or "Volunteer Skills." Display options include checkboxes, a select list, or tags. If you use tags, they will draw from your existing MonkeyPod tags, which can include events and programs.
- True/False: A simple yes/no checkbox. Useful for binary tracking, such as an "Inactive" flag or "Receives Print Newsletter."
- Integer: For whole numbers, such as "Number of Household Members" or "Years as a Member."
- Currency: Use for monetary input (USD).
- File: Allows a file to be uploaded to the record, such as a signed volunteer agreement. Note: for W-9s specifically, MonkeyPod has a dedicated place to store those — don't use a custom file attribute for those.
- Image: Allows an image to be uploaded to the record. Useful for things like board member headshots or profile photos.
- User: Allows for a select list of names of the users in your MonkeyPod.
Form Field
Controls how the attribute appears on the relationship record, for example as a short text box, a dropdown, checkboxes, or tags. The options available here will depend on the data type you selected.

Choices
If your attribute allows the user to select from a list of options, enter those options here as a comma-separated list. For example, a "Contact Preference" attribute might include choices like Email, Phone, Text, and Direct Mail. Choices are required if you select a radio button or select list form field.

Sensitive
Check this box if the attribute contains information that should only be visible to certain users. Viewing sensitive attributes is controlled by a user permission setting in MonkeyPod, so only users who have this enabled will be able to see the data in this attribute.
Role-Based Attribute Sets
The second part of making a custom attribute is a Role-Based Attribute Set. This is where you choose which attributes will show up for relationships based on their Roles. The name of the set appears as a new tab at the bottom of any relationship page with a matching role.
For example, the screenshot below shows:
- A Role-Based Attribute Set named Donor Preferences
- that applies to any relationship with the role Donor
- it contains two custom attributes (Program Interests and Contact Preferences)
- which were defined in the Attribute Definitions page described above

Making a Role-Based Attribute Set
To group your custom attributes into Role-Based Attribute Sets
- Return to Relationships > Custom Attributes and select the Role-Based Attribute Sets tab.
- Select the option to Add an attribute set.

- Give the attribute set a name. This will be the name of the tab displayed on the relationship page.
- Choose which relationship roles should display the set.
- Choose which attributes you want in the set.
- Select the check mark to save your changes.
For example, the image below shows a set named "Donor Preferences" that will display for anyone who is given the "donor" role. The attributes "Contact Preferences" and "Program Interests" are included in this particular role-based attribute set.

Frequently Asked Questions
Can I use my custom attributes for searches?
Absolutely. Not only can you search on custom attributes, you can also customize the display of your search results to show custom attribute values right there in the list! Check out the article on How to Use the Relationship Search to learn more.
Can I use a custom attribute to keep track of event participation?
Yes! You can use a custom attribute whose data type is "text (Multiple)" and whose form field option is set to "Tags". Doing this will display all of the tags you have in MonkeyPod, which can include your events!
Not sure of the answer above or need more guidance? Check out our article specifically on Custom Attribute Data Types.
Quick plug here for Eventbrite—if you want MonkeyPod to automatically track program/event attendance check out our Eventbrite Integration!
Want more amazing video content? Check out our YouTube channel!