Using Civi

People with signs at a rally


The Civi platform was launched as part of DemTools, NDI’s Democracy Toolkit. DemTools provides basic and easy-to-use solutions for common tech problems in democracy and human rights spaces that are accessible to programs lacking funding for sophisticated software development. Of course, the right political and program factors still need to be in place, along with adequate funding for implementation and partner training. The Civi suite features three main flavors: CiviParty, CiviMP and CiviSociety. Each is basically the same but customized with different feature sets and defaults that make sense for these different user communities.

This guide is designed to provide a basic starting point for groups trying out Civi; it is not meant to be comprehensive and may not be up to date with the most recent changes to the larger platform. For the authoritative - if dense - guide to CiviCRM, please see the official user and administrator book.

CiviParty is customized for political parties and their staff to help them better organize, understand and connect to their supporters. Developing stronger connections to voters and building public trust are essential for any successful political party. With CiviParty, political parties can better achieve these and other goals by:

  • Building active, smart and integrated lists of members, supporters and voters
  • Sending invitations to and tracking attendance of rallies and other events
  • Communicating with targeted groups of supports via SMS or mass email blasts
  • Defining and managing party membership, including collecting membership dues or fees

CiviMP is customized for members of parliament and other elected officials to help them move their constituent office online. Successful MPs understand their constituents, listen to their common concerns and are responsive to their needs. With CiviMP, elected officials can perform better by:

  • Building categorized and prioritized lists of constituents and constituent concerns
  • Communicating with constituents using email, SMS or printed mail merge
  • Tracking casework to more easily know the who, what, where and when of all constituent interactions
  • Log and monitor citizen requests and use reports to measure how often certain types of problems occur and how rapidly issues are resolved.

CiviSociety is customized for civil society organizations and other actors to assist in the organization of supporters and the implementation of issue campaigns. An active civil society is essential for a successful democratic society - helping develop active and informed citizens to master the techniques needed to initiate action and solve complex problems. With CiviSociety, civil society organizations and other groups can more effectively operate by:

  • Leveraging lists of contacts for easier organization of interested citizens around key issues and campaigns
  • Tracking the activity of staff and volunteers
  • Encouraging the participation of citizens through blast SMS and email messages
  • Managing trainings, rallies and other campaigns, including logging the participation of citizens

Getting Started#

Now that you have a basic understanding of what Civi and its various flavors can do, it is important to think about how this contact management tool can support the management and operationalization of information that is important to you. Take a moment to think about the system you currently have in place and how your data is organized. For instance, do you know what types of people you typically interact with and how they differ from one another? Do you have a list of existing contacts, whether in a spreadsheet, someone’s phone or a list of email recipients?

The data you have in a current system may exist in multiple formats, such as electronic or paper-based spreadsheets. Be prepared to take this information, which may have been labeled in a certain way, and transfer it into a standard format that can be imported into the Civi platform. For an example of what this looks like, please check out the Appendix. To learn more about how to complete the import of data in Civi using the CSV (Comma Separated Values file type) import functionality of the tool, contact your site administrator or check out the Import Contacts section of this manual. Do not underestimate the time required to gather and “clean” or standardize your information. Getting a good data set ready to be uploaded will enable you to begin using the system with all of your existing information.

Managing Your Data#

No matter your answers to the above questions, or how much time it takes to clean or standardize your data, using Civi to improve your contact and relationship management processes is straightforward and simple. It all starts with the management of data, and in CiviCRM, there is a range of basic terms and concepts essential for anyone looking to understand and effectively use the system. These terms will be described in more detail and with more context later in this manual, but a general understanding of the organizational structure of CiviCRM is an important place to start.

  • Contacts - Contacts are the heart of CiviCRM. Individual people or organizations (i.e. businesses or political parties) can be created or bulk imported into the system. These contacts can then be easily searched, edited and categorized using a variety of identifying information, including their name and address as well as their demographic info, gender and communication preferences.
  • Groups and Tags - Groups and tags allow you to categorize contacts in CiviCRM. Groups should be used to categorize individual contacts with multiple characteristics that need to be treated as members of a cohesive unit (for instance, Likely Female Youth Voters), while tags should be used for the singular descriptive categorization of contacts (for instance, Likely Voters). Groups are the most flexible way to organize contacts and can be used to structure efficient mailing and outreach. Tags can be used to more easily search your contact database. The difference between groups and tags will be explained in further detail later in this manual.
  • Smart Groups - Smart Groups are automatically populated groups that include members who share a set of characteristics or activities. They can be directly created from the results generated by an advanced search. For instance, after running a search for contacts under 24 years old who had voted in the last election, you could create a smart group called “Youth Voters”. This Smart Group would automatically include any contacts in the CiviCRM database who have voted (an activity) and are under 24 years old (a characteristic), and when new contacts are added to CiviCRM that fit those parameters, they will be automatically added to the Smart Group.
  • Activities - Activities are used to track interactions with specific contacts. Activities include phone calls, emails, SMS, events attended, meetings attended and any other point of interaction with a contact.
  • Relationships - Relationships represent connections between contacts in CiviCRM. For instance, employee-employer relationships can be tracked by connecting “individual” contacts with “organization” contacts.
  • Custom Fields - Custom fields can be used to capture a wider range of information beyond that which CiviCRM allows by default. For instance, if you have a contact type “Staff,” you could create custom fields listing different staff positions that they might occupy.
  • Profiles - Profiles allow you to collect and display data using CiviCRM, and can be used internally (i.e. to display member directories) and externally (i.e. to collect data on a sign-up form).

For a further description of each of these concepts, please see the corresponding sections of the CiviCRM User and Administrator Guide.

Accessing Your Account#

The next step is to access your account. Accounts are managed by a trained project administrator, who will have the ability to create accounts with varying levels of permissions. Using your assigned username and password, you can log in to your specific Civi site and begin to manage your contacts, relationships and activities.

Using Civi#

The first page you see when you log in to Civi is the homepage, which will contain buttons to the tool’s common functions and dashboards displaying data and metrics about your site. The navigation menu bar at the top of the page also allows you to access almost every function of your website. The menu is organized into headings that denote individual components, such as “Contacts”, “Events”, “Mailings” and “Reports”. Additional modules will also be available and seen based upon your flavor of the Civi DemTool. CiviParty users will see the Memberships module, CiviMP users will see the Grants module and CiviSociety users will see the Campaigns module. In addition to these headings, you’ll also see “Search” and “Administrator,” both of which cover all components of CiviCRM.

It is mainly from this menu that you will access your content (although there are some shortcuts available on the home screen of your Civi site as well), so we’ll take some time in this manual to walk you through each of the menu tabs. In doing so, we’ll explain the basic functions of Civi, and give you instructions on how to access these basic yet important site functionalities.

Navigation menu
Navigation menu


Contacts are central to CiviCRM, and creating and managing these contacts is the basis for effective use of any Civi tool. For this reason, the “Contacts” tab found towards the left side of the navigation toolbar is an important tab with which to familiarize yourself.

Individuals, Households, and Organizations and Sub-Organizations

Effectively managing your contacts is key to mobilizing your supporters and achieving your desired goals. Since using CiviCRM successfully depends on your ability to create and store information in the right place and in the right way, becoming familiar with the three contact types that are used to organize information in CiviCRM will be important. These contact types are: Individual, Household, and Organization.

In addition to these main contact types, there can also be ‘subtypes’ for any of these “parent” contact types. A common subtype would be a ‘Sub-Organization’ or, as we often term it, a ‘Department’. This subtype is associated with the Organization contact type.

Individuals are singular people. Examples of individual contacts could be John Doe, Sally Johnson, etc. To manually create a new individual contact in your system, go to the Toolbar at the top of your screen, select the “Contacts” menu and click ‘New Individual’ (see below).

New individual link in navigation menu
New individual link in navigation menu

After selecting ‘New Individual’, you will come to a page (see below) where you can fill in the relevant information for this individual contact. This can include name, email, address, demographics - including age and gender, groups and tags (which we will discuss in more detail later in this manual), and other personal info.

New individual page
New individual page

For example, say that while canvassing you meet a person who has expressed interest in supporting your party or your organization as it prepares for an upcoming event. Using a paper form your team has created, you ask them to write down their contact information so that you can contact them at a later time. Once back at your office, you can now easily store this information by creating a new individual contact in your CiviCRM database, as shown below. Using the various drop-down tabs, you can enter the person’s contact and demographic information. Make sure to also add notes describing how and why this contact was added to your database.

Creating households (which are families that share a location) follows the same process as described above for Individuals. Households are most frequently used to generate mailings when an organization would like to make sure it does not send more than one item to multiple people living at the same address.

Organizations are the largest contact type in Civi. They represent units like companies, non-profits, universities, etc. Sub-organizations (or what we term Departments) are teams, units or sections within a larger organization. An example of this might be that NDI is an organization, but our Technology Team is a Department. To create a new organization, follow the same process described above, except you select ‘New Organization’ from the dropdown menu as opposed to ‘New Individual’ or ‘New Household’. To create a new ‘Sub-Organization’ or ‘Department’, hover over the ‘New Organization’ tab, and you should see an option for ‘New Department’. Click that tab if you’d like to create a new Department. As you’ll see in the next section, you can associate this ‘Organization’ and ‘Department’ together by creating a relationship. Please note that these contact types and subtypes can be fully customized to fit your needs by your site administrator.


In order to truly understand who and what your contacts are, you’ll need to create relationships between them. Creating a relationship between your contacts - for instance between contacts from the same family or political party - is also a useful way to manage the information in your CiviCRM database. Your ability to track relationships between organizations or between individuals and organizations is yet another way that you can effectively mobilize your supporters and achieve your desired goals.

If the appropriate relationship types are created by your site administrator, the process of creating relationships between Individual, Household, Organization and Department contacts is simple. The key Relationship types that we’ll highlight in this manual are the relationship between an Individual and his/her Organization, the relationship between an Individual and his/her Department, and the relationship between a Department and its parent Organization. There are other Relationship types within your Civi site - some of which are customized based upon whether you’ve chosen the CiviParty, CiviMP or CiviSociety flavor - but we’ll focus on the aforementioned ones in this manual.  

Relationships are established between an “Individual” contact and an “Organization” contact when the contact is first created. For instance, if you include an organization as the employer of an individual contact, then a relationship is automatically established between the individual and the organization, as well as between the individual and other individuals that are listed as employees of the given organization. This relationship between the Individual and Organization is termed an “Employee-Employer” relationship.

For other relationships, however, the connection might have to be manually created. This is the case for the relationships between an Organization and its Department and an Individual and his/her Department. To add any relationship, go to the contact’s screen - this can be found by clicking on the name of a contact in your system - and selecting the ‘Actions’ button. From here (as you can see in the image below) a variety of choices will appear. Select ‘Add Relationship’.

Add Relationship option
Add Relationship option

From the ‘Add Relationship’ screen, you can select the appropriate relationship for the given contact, select the contact with which you’d like to create the relationship, fill in a start date for the relationship (often helpful for relationships of employment), add description and notes, and save.

If you are operating from the Individual’s contact page and want to associate this Individual with a Department, select “Employee of (Department)” for the relationship type and select the desired Department as the ‘Contact’. For the reverse of this relationship (if you are operating from the Department’s contact page, you’ll want to select “Employer (Department) of”. For relationships between an Organization and Department, you will want to select the relationship types ‘Main Organization of’ and ‘Department of’.

Groups and Tags#

The core categorization tools of a Civi system are Groups and Tags. Although used for different reasons, Groups and Tags will help you categorize information and more easily search for it when needed. By adding contacts to Groups or assigning Tags to contacts, you can begin to structure your contact information in a way that flexibly and powerfully turns your list of people and organizations into a structured and searchable database where you can locate anyone or anything at just about anytime.

As mentioned earlier, it is important to note that groups and tags differ in several ways and have their own set of benefits and limitations. A brief introduction of groups and tags is provided in the Managing Your Data section of this manual, but the table below provides a more detailed look at the differences between these two methods of contact categorization and description.

  Groups Tags Smart Groups
  • Groups are the most flexible way of segmenting your contacts for a wide variety of purposes
  • Groups facilitate recurring tasks, like sending an electronic newsletter, printing mailing labels, etc.
  • Visibility settings allow you to decide which groups are shown to end-users on profile forms (i.e. some groups can be set as "private")
  • Easy to setup and use
  • Easy to search by tags using either Basic or Advanced Search (we’ll talk about searching in the next section)
  • Easy to combine with other properties (like residence state/province) to create Smart Groups


  • Allow users to create groups based upon predetermined criteria that automatically keep updated when contacts are changed or newly created.
  • Can base groups on multiple characteristics.
  • All existing groups are listed under Manage Groups and in the search forms. This may cause group "overload" if your organization winds up with "too many" groups
  • Groups used for short-term projects should be "purged" when they're no longer needed
  • When exporting contact records, all the groups a contact belongs to are exported as a single comma-separated list (e.g. "Administrators,Newsletter Subscribers")
  • You can’t create tags for specific contact types (i.e. individuals, organizations and households), but only with individual contacts
  • When you export tags, all tags assigned to a record are exported in a single "cell" as a list (e.g. "Teacher, Volunteer")
  • Tags allow multiple selections, so they may not be appropriate for mutually exclusive characteristics (i.e. "Democrat", "Republican", "Green Party")
  • You cannot selectively hide or permission tags


  • Smart Groups can only be created by running an ‘Advanced Search’.
  • Smart Groups rely on keeping your individual contacts updated frequently to remain relevant.

While groups and tags differ from one another in several ways, one benefit of using both is that you can perform more refined searches. For instance, if you have volunteers and party members as groups and use tags to identify topics of interests such as development, Internet freedom and transparency, you can find all the volunteers or party members in your database that are interested in any one or a combination of these topics.

A couple other helpful hints about differentiating Groups and Tags:

  • Tags should never include more than one specific idea, concept or descriptor.
    • In other words, it is not best practice to have a tag called “Francophiles Interested in Tech”. Rather, you would want two separate tags: one called ‘Francophile’ and the other called ‘Tech Interest’.
  • Create Groups for sets of contacts upon which you will want to perform recurring tasks. This could be something like sending a mass email or a newsletter. Be sure to delete groups that are no longer relevant. After all, if groups are set up properly based upon advanced search criteria, then they can always be recreated at the click of a few buttons.

Create New Group and Edit Group Contents

To create a new Group, select “New Group” from the “Contacts” tab in the navigation toolbar. From here, provide a name and description, and then choose a group type. If you plan on using this group to send mass mailings, be sure to select ‘Mailing group’. If desired, you can also make a group a “child” group of another existing group through the ‘Parent Group’ select bar.

Groups can also be managed from the “Contacts” tab in the navigation bar. Select “Manage Groups” to see a full list of your existing groups (see image below). From here you can use the ‘Settings’ tab at the right side of the column for each group to change name, description and group type. To view all contacts in a group, add a new contact to a group or perform actions upon a group, select the ‘Contacts’ tab at the right side of the column for each group.

To delete or disable a group, select the ‘More’ tab at the right side of the column for a given group and click the desired option. Disabling a group will make it unusable until the moment it is re-enabled. Deleting a group will mean that the group is completely erased. Please note that deleting a group does NOT delete the contacts within a group. Rather, it only gets rid of that group and its associations. As mentioned before, it is a good idea to delete groups that are no longer of use to you or your organization.

Manage Groups page
Manage Groups page

In addition to adding new contacts to a group via the method explained in the above paragraph, you can also add a specific contact to a group from that contact’s page. On a given contact’s page there exists a tab for “groups”. If you click on this tab, you will be taken to a screen from which you can easily view the groups that the contact is a part of, remove or delete the contact from a particular group and also add that contact to any pre-existing group through the ‘Add to a group’ drop-down bar.

Create New Tag and Edit Tags

New tags can be created and managed by a user with admin access from the “Contacts” tab in the navigation bar as well. Following much of the same procedure as described for Groups in the above section, a user can create a New Tag and Manage Tags. You can also, as with Groups, edit the Tags for a specific contact from that contact’s page.

Please note that when creating a new tag you will see a “Used for” box. In this box, select the type of entity for which you want this tag to be an option. As you will see in this box, you can use tags to describe contacts, activities, cases and even attachments.

If you find that you have multiple tags that you’d like to combine into one tag - let’s say for example one user created ‘English-Speaking’ and another created ‘Fluent in English’ - you can always “merge” these tags. Just click on the ‘Merge’ option for a given tag on the far right side of the Manage Tags screen and select the tag with which you’d like to merge.


Activities are any interactions between you and your system’s contacts. Civi “Activites” could easily be confused with the concept of an “Event;” an event is an actual happening at a particular place and time, such as a conference, gala dinner, or rally. An activity is any single atomic engagement between one individual and your organization. Activities can be customized by the site administrator and include things like Phone calls, Meetings, Events, Emails, etc. For instance, the act of registering for an event, receiving an email, attending a meeting and making a donation are all activities.

Please note that many Activities, such as Emails received and Events registered for and attended, are automatically created by Civi whenever the activity occurs. For example, if you register a contact for an event (something that will be mentioned in more detail later in this email), the activity will be automatically created. You will not need to manually create that activity for your system.

Individual event regsitration
Individual event regsitration

Some activities, however, might need to be manually created based upon your needs. For example, if you want the Civi system to know that you called Contact X or had a meeting with Contact Y, you can add those activities by visiting the ‘Contacts’ tab in the menu toolbar. Select ‘New Activity’ and proceed.

New Activity page
New Activity page

From this ‘New Activity’ screen (see above image) you can select the activity type (once again, these available activities can be customized by your site administrator - for more information about this, visit the Admin Manual section of this document) and provide further information about the activity. Notice that you can choose ‘Activity Status’ in the middle of this screen. If you want to schedule an activity and assign it to another user, be sure to select “Scheduled” and assign the appropriate user as the “Assigned to” contact. If you are adding this activity after it has already occurred, you can select “Completed” as the activity status and, if desired, list the user that completed the activity with the contact. You can also tag activities, add location, date, and description and schedule a follow-up if desired.

Just as with groups and tags, you can view a contact’s activities from the given contact’s page. From the Activities tab, you can view all past and future activities involving that contact and add a new activity from the “New activity” tab towards the top of the screen.

Import Contacts#

There are many situations in which you will want to import a large list of contacts. To do this, follow the steps below. Please note that contact importation often requires work beforehand to correctly format and clean your contacts. For further information about this process, please consult CiviCRM documentation. Also check out the Appendix for an example of a clean, Civi-ready spreadsheet.

Once your data is cleaned and formatted, you can begin the import process by selecting ‘Import Contacts’ from the Contacts menu in the toolbar. Choose your spreadsheet, which must be saved as a “comma-separated variable” or CSV format; Microsoft Excel and most spreadsheet programs can save files as CSVs. Be sure to select ‘First row contains column headers’ if your CSV file’s first row contains the title of your categories. Select the appropriate contact type that you are importing - this will most likely be the 'Individual' contact type.

Please note that if you are importing a list of individuals that includes their organizations, you should select ‘Individual’ for the contact type that you are importing. The only situation in which you would select ‘organization’ is if you are importing a list of only organizations (without associated individual contacts).

Select how you would like to treat duplicate contacts. The options are Skip (this means that duplicate contacts will not be imported); Update (this means that the duplicate contact will be updated with any new information from the import); Fill (this means that any type of information - like phone number, address, etc. - for a duplicate contact that exists in the import but not in the existing version of the contact will be added to the contact, but none of the existing information will be changed); No Duplicate Checking (this means that all contacts in the import will be imported - please note that this is NOT recommended, as it can lead to the creation of many duplicate contacts, which makes the Civi system more difficult to manage).

Next you can select your Dedupe rule - this is the rule that selects how Duplicate contacts will be identified in the import. The default options are Name and Email, Email only, or Name and Address. You might see that next to these options there are the words general, supervised and unsupervised. For the purposes of importing contacts, these do not matter. You can simply select the dedupe rule that you prefer.

Next, select your preferred date format and saved field mapping (if applicable), and then select continue. From the next page you will map the Import CSV file fields to the relevant categories in CiviCRM. Most of the fields will be relatively straightforward. However, selecting the proper fields for automatically creating relationships between an individual and his or her organization is a bit less straightforward. For an example of how to establish the relationships between an individual and his/her organization and department during an import, see the graphic below:

Field mapping for importing contacts
Field mapping for importing contacts

Please note that for relationship matching, you must select the desired relationship first and then, in the second dropdown box, select the contact type that includes “(match to contact) *”. Please also note that for many matching fields you can select between various option types, such as Home and Work for phone, email and address. Please be sure to select the desired type, as this will allow you to better organize your system and manage more accurate data about your contacts.

If you’d like to save your field matching efforts for future imports, be sure to select ‘Save Field Mapping’ and name it as desired. After doing this, select “continue” to move forward with the import.

Next you will be taken to a page that lists the numbers of rows in the CSV, the number of errors, and the number of rows that will be imported (usually the number of rows without errors). If your import has errors, select the “Download Errors” link and your browser will download a CSV document with a detailed explanation of the error type and location. If possible, read through the errors and fix them in the original CSV document, then try the import again. If your import is corrected and/or error free, the next step is to select the groups or tags that you’d like to associate with the imported contacts.

From this page, you can select or create a group (or groups) and a tag (or tags) to place your contacts in or associate with your contacts, respectively. Please note that from this process, ALL contacts in the import will be added to the selected group or given the selected tag. For this reason, if you have pre-defined tags or groups, it can be helpful to import contacts in batches based upon those descriptions.

After selecting the groups or tags (if you desire to choose any), choose ‘Finish Import’. Your database will process for a few seconds or more (depending upon the size of the import), and a confirmation message will appear once the import is complete.


Contacts are the heart of Civi, but they are of limited use if they cannot actually be located when you need them. Thanks to CiviCRM’s detailed search capabilities, finding the specific contact or contacts that you want is always just a few clicks away. Whether your goal is to find a specific contact, perform an action on a contact based upon certain criteria, or perform ad hoc reporting, you can conduct a search to find the information that you have stored in your database. The following sections of this manual will describe how to do so.

Quick Search

One way to conduct a search is to use the Quick Search box that appears in the navigation menu at the top left of the screen. You can search by one of several criteria, including a person’s name, city or job title. Contacts that match the phrase you enter will appear in a dropdown list below the box.

For example, if you are searching with Name/Email, entering "john" will find people whose first or last name is John; people who have John appearing as part of their name (i.e. Bill Johnson); people who have John as part of their e-mail address (i.e. [email protected]); or organizations with John in their name (i.e. Johnson Foundation).

Quick search
Quick search

Your site might also have a search bar enabled on the home page that allows you to search, based upon dropdown selection, for contacts, activities, participants or other elements of your Civi site. If this bar is enabled, it can be very helpful for quick searches.

In addition to these search “shortcuts”, there is also a full Quick Search page that can be found under the “Search” tab by selecting “Find Contacts”. From this page (see below), you will be able to search by name or email, contact type (like individual, organization, etc.), groups and/or tags.

Find Contacts page
Find Contacts page

Advanced Search

Should you be interested in performing a search across all the information you have about contacts stored in your database, you can use an Advanced Search. For instance, you could find “all women party members” or “all contacts in southern region” and even combine the two search criteria to find “all women party members in southern region.” In short, Advanced Search is the way in which you can access the real power of your Civi contact management system to find and perform actions (discussed in the next sections) on any cross-section of contacts in your database.

The Advanced Search screen is accessible from the navigation menu by clicking “Search” > “Advanced Search”. On this screen, search criteria are grouped into sections which refer to different types of data that you can search on. Each group of criteria (whether it be address information, events, or some other module) is shown as a gray bar. If you click on the gray bar, it expands to reveal the options within that group.

Advanced search grouped criteria
Advanced search grouped criteria

For example, if you want to search for all people in your database from 18 to 24 years old, click on the Demographics bar. It expands, as shown above, and you can specify the birth date range you are interested in as well as the contact’s gender.

Under the ‘Basic Criteria’ search section (the only required section of the advanced search), there are a couple of parameters that are important to note. The first is the ‘Search View’ option. From this option bar, you can select the columns of information that you want to appear in the results for the various contacts that match your search. Information on how to create custom search views can be found later in this document in the Admin section of the manual. Another important option to be aware of under this ‘Basic Criteria’ section is the ‘Search Operator’ selection. From this option bar, you can select ‘AND’ or ‘OR’, depending on whether you’d like to search for contacts that include all the selected criteria or just one of the selected criteria.

Another option to note: if you have deleted contacts (not permanently, of course) and want to search through them as well, be sure to check the ‘Search in trash’ box in the upper right hand side of the ‘Basic Criteria’ section. If you click this box, the search will run for only items that exist in the trash.

One tip while conducting advanced searches: any search criteria section that has something filled in or selected will appear as a blue bar instead of a grey bar. So, before running your search, be sure that there are no unanticipated sections in blue that are part of your search (see image below).

Highlighted search criteria
Highlighted search criteria

If there is a “blue” section that you want to erase from the search, click the ‘X’ at the right of that section. Accidently including these sections is a common way to throw off your search and cause frustration. If you’d like further information on using the search features of CiviCRM, please see the CiviCRM User and Administrator Guide.


Advanced Searching is ultimately important and helpful because it allows the user to find specific subsets of contacts and perform actions upon them. At various places on your Civi site, including on the page that you are taken to after you have run an advanced search, you will come across an ‘Actions’ toolbar (see below). From this dropdown toolbar, you will have a full list of actions that you can perform upon any given subset of contacts.

Search actions
Search actions

These actions include adding contacts to events, groups or organizations, creating relationships, creating smart groups based upon a certain set of characteristics, sending mass emails or SMS messages, tagging and untagging contacts, exporting contacts, deleting contacts, and much more. It is from this action drop-down bar that much of the work in Civi gets accomplished. We recommend that you get familiar with these actions and the relevant scenarios in which you and your organization, party, group or team could make most use of them.

To perform actions on all results of a search, select the “All records” button at the top of the actions screen. If you’d like to perform an action on just a select number of the search results, you should choose the ‘Selected records only’ button and individually check the contacts that you’d like to include. Once you’ve selected the contacts and chosen the action type, you will be taken to the relevant screen to begin that action (whether it be constructing a mailing, setting up an event, or choosing a group/tag with which to associate the contacts).

Communicating with Civi#

Communicating Using CiviMail#

Communicating with the contacts stored in your CiviCRM database is central to effectively mobilizing your members and other supporters. Using the CiviMail mass-mailing feature, you can reach out to your constituents and volunteers with personalized email blasts and newsletters. You can also manage constituent relationships, organize voters and recruit volunteers using CiviMail.

For example, let’s say you need to raise money for a political campaign, as well as identify potential political officers, organizers or observers. Using CiviMail, you can send an email to certain contacts or send a bulk SMS to all the people who live within a designated area that you’ve specified. In order to send bulk communications, you must first configure the basic functionality necessary for your server to send and process emails. For instance, you can connect CiviMail with your favorite email server like Outlook, Gmail or Yahoo. For more information on how this can be configured, please contact your Systems Administrator and visit the Email System Configuration page of the CiviCRM User and Administrator Guide.

CiviMail uses groups to manage recipients of mass mailings. To create a group, go to “Contacts” > “New Group”. When you create and configure a group for this purpose, make sure to check Mailing List under Group Type, so that it is available as a Mailing List in CiviMail. You can then do a search and add contacts to the group. You can also create Smart Groups, which were discussed earlier in the manual. The bottom line is that groups and smart groups can combine very well with the CiviMail feature to improve the effectiveness of your communication efforts.

Once your mailbox is setup, the CiviMail process is fairly simple. The mail composition screen found at “Mailings” > “New Mailings” will look like this:

Define mailing page
Define mailing page

As you can see from this screen, the ‘Mailing’ tab gives you the bulk of your options. From here, your email can be composed in both HTML and Plain Text format, and it can also be selected from a pre-created template listed under the ‘Template’ drop-down bar. After giving your email a name, you can select the “From address” (which will be set up by your Site Administrator) and Recipient groups and give the message a subject. Please note that the ‘Mailing Name’ is what CiviCRM will use to identify your mailing in the system, whereas the Subject is the title of the message that recipients will see. From this screen, you can also preview the message, send a test to an individual email address or send a test to a group.

From the ‘Attachments’ tab in the mail constructor you can include attachments, and from the ‘Header and Footer’ tab you can include custom headers and footers, which can be developed by the Site Admin. The ‘Publication’ tab allows you to select who can view the email - the entire public or just registered site users - and the ‘Tracking’ and ‘Responses’ tab allows you to set options for tracking mail metrics, such as clickthroughs, as well as track and customize replies, including unsubscribe and opt-outs.

During the mail creation process, you can select the ‘Save Draft’ button to save your progress. To find and return to your drafts, go to “Mailings” > “Draft and Unscheduled Mailings” and select ‘Continue’ for the desired mailing.

When you are finished composing your email and selecting the settings, click ‘Next’ at the bottom left of the composition screen. Then proceed to schedule and send your email. You can then check your scheduled and sent mailings by going to “Mailings” > “Scheduled and Sent”.

If your mailings are not being received as intended, contact your site administrator. This might likely be a result of the Cron task not running correctly or on its desired schedule on your Civi site.

To view the metrics for a given mailing, go to the Scheduled and Sent page referenced above. From this page, select ‘Report’ for the mailing in which you are interested. Depending upon the mailing’s settings, you will be able to view the success rate of delivery, the number of opens, number of clickthroughs, and other detailed information about the performance and success of the various links and content included in your message. You can also run reports (by clicking the ‘Reports’ link) on various categories of the broader mailing examination - including ‘Tracked Opens’ and ‘Click Throughs’.

Communicating Using CiviSMS#

In addition to communicating using email through CiviMail, the Civi DemTool can also help you reach less connected audiences via SMS. The CiviSMS module can help you connect your Civi site to a bulk SMS gateway to send mass messages out ot your constituents’ mobile phones. The two SMS gateway options provided by default for the Civi DemTool are Clickatell and Twilio.

Once the extensions are enabled and correctly setup by your system administrator, you will be able to send mass SMS in much the same way that you can send mass email described in the section above.

To do this, navigate to the toolbar and select “Mailings” > “New SMS”. You should see the screen below after this step:

New Mass SMS page
New Mass SMS page

From this screen, you can name your SMS and select the groups to include for the message. Use the ‘SMS Content’ tab to select the SMS provider (which as mentioned will need to be setup previously by your system admin) and compose the message, and navigate to the ‘Schedule or Send’ tab to, much like an email through CiviMail, schedule and send your message.

You can then track your sent message history through the ‘Find Mass SMS’ tab under the “Mailings” menu tab.

Creating and Managing Events Using CiviEvent#

Your ability to build crowds and manage attendee lists for events is central to effectively mobilizing your staff and supporters. As an event registration and management feature, CiviEvent can be used for both paid and free events that you choose to host.

For example, let’s say your organization is planning a women’s leadership workshop that seeks to prepare and empower women for successful political participation and potential public office candidacy. To get started, a member of your staff would first need to create an events page that includes an online registration. Information such as a participant’s contact, food and lodging preferences, among other things, can then be collected using a CiviCRM feature called a "profile." Using the existing contacts stored in your database, your staff can proceed to send personalized invitations to a targeted list of women leaders.

To better promote the event, you can include a direct link to the event page on the invitation, allowing participants to arrive at the online registration form with a single click. Using the organization's website and the "Tell-a-friend" function enabled in CiviCRM, you can also publicly announce the event. In addition to facilitating the self-registration of the participants you’d like to attend the women’s leadership workshop, you can process credit card payments online if the event has a registration fee. By designating a staff person on your team to manage how participants register for your workshop, you can ensure that payments are being made, waitlists are being managed and questions are being answered.

On the day of your event, CiviEvent allows you and your staff to check in your participants on-site (if applicable) using any computer with an Internet connection. After the conclusion of the women’s leadership workshop you’ve organized, your staff can evaluate the success of the event by generating reports that detail the number of attendees, the total event fees that were paid or the total amount of fees that are still outstanding.

Now that you have a general example of what an event is, what you can do with it, and why it might be important and helpful for your organization or party, here are a few basic steps on how to create an event.

To start, go to the menu toolbar and select “Events” > “New Event”. From this page, you can choose the Event Type (these can be customized by your site admin) and the default Participant Role (options for this can also be customized by the site admin). You can also provide a title and description for your event on this page, and select other event parameters such as the start date and time.

New Event page
New Event page

After creating the event design, select continue. You will be brought to the event configuration page. From this page, you will be presented with a series of tabs where you can fill out the other important settings and options for your event.

After filling out the location under the ‘Event Location’ tab and selecting any Fees information if relevant, you should select the ‘Online Registration’ tab. It is from this tab (see image below) that you can set up your event to be available to the public, and to provide the options necessary to allow outsiders to visit a link and register for your event.

Configure Event page
Configure Event page

If you’d like people to be able to register for your event publicly online, the first step is to check the ‘Allow Online Registration’ box on the ‘Online Registration’ tab page. After that you’ll have the option to set the registration parameters and customize the registration, confirmation and thank you screens. You can also select an option to set up automatic confirmation emails at the bottom of this page. Be sure to save your changes.

Once you have your event settings - which can also include setting reminders in the ‘Schedule Reminders’ tab - fully customized and saved, navigate to “Events” > “Manage Events”. From this page you’ll see a list of your active events. Also on this page is where you can easily collect the link for your event and share it publicly by selecting ‘Event Links’ on the right side of the row for the relevant event and then selecting ‘Registration (Live)’ (or ‘Registration (Test Drive)’ if you’re looking to test out the registration process). The page you will be brought to is the URL that you can use to send as a link to potential participants to get them to register for the event. You can also embed this registration page in another website for easy registration.

There are certain settings that have to be enabled for these options to be available to any public visitors to your site, so contact your site administrator or refer to the admin section of this manual if you have further questions about making events publicly accessible.

Of course, in addition to having people register themselves, you can also manually add or mass import participants for a certain event. To manually add a participant, go to the menu bar and select “Events” > “Register Event Participant”. If you’d like to import a CSV of participants, select “Events” > “Import Participants” and follow the import process as outlined on your site.

For more information on how to manage events, see the Events section of the CiviCRM User and Administrator Guide.

Generating Reports Using CiviReport#

CiviReport is a feature that allows you to create, run and schedule reports based upon the information you have stored about your contacts in CiviCRM. In addition to generating reports to evaluate the impact of the events your staff has organized, CiviReport can be used to track fundraising efforts and monitor financial accounting.

For example, let’s say your organization has launched a drive to raise money for a political campaign. As the manager, your goal is to reach out to donors who have supported your cause in recent years, but have yet to make a contribution towards your current efforts. By creating an instance of the LYBUNT report (“Last year but unfortunately not this”) in CiviCRM, you can filter data to show who gave money in previous years and then run a report using the “Add to Group” button, which will put these donors into a new group that you can send emails to later. To help you track the donations from contacts in this group, you can add the report to your CiviCRM Dashboard. Anyone who donates will be automatically removed from your list, since they no longer fit the criteria you set. The remaining list can be used to direct your outreach to potential donors. Another instance when generating a report may be useful involves tracking the volunteers that have served most often or the supporters that have attended events frequently. As previously described, by setting the correct filters and generating a report, which you can then add to your Dashboard, you can help your organization better evaluate its impact and goals achievement.

To access reports, go to the menu bar and select “Reports”. From here, you can select “All Reports” or select a list of specific report types, such as Contact Reports.

Once you’ve selected the report you’d like to run, you will be brought to a screen that allows you to change the ‘Report Criteria’. The various reports you can initially choose from will have several set features, but you can also tweak the ‘Report Criteria’ options to exactly fit your needs.

Among the criteria that can be changed are ‘Columns’, ‘Sorting’, ‘Filters’, ‘Title and Format’ and ‘Email Delivery’.

Changing the ‘Columns’ of the report allows you to indicate which data you want to show up in the report. For example, if you want your report output to show the relevant contacts’ First Name, Last Name and Gender, then check the boxes for those columns. The default report types will come pre-configured with certain columns selected, but these can be customized each time a report is run.

Changing the ‘Sorting’ option allows you to alter the order of the report output. For example, you can choose to organize the report by Last Name in either descending (Z through A) or ascending (A through Z) order.

Changing the ‘Filters’ are what allow you to truly customize your report’s contents. It is under filters that you can, for example, select who or what you want to appear in a report. In the example seen below of a contact type report, you can see that we are filtering our report to include only Individual contacts that both live in the United States and are a part of the Case Resources group. The filter options vary depending on the type of report being run (Event report, Contact report, Case report, Mailing report).

Report filters
Report filters

After changing filters, you can also change the “Title and Format” of the report. This allows you to customize the name and description of the report if desired, as well as the appearance of any headers and footers. It is through this setting that you could, for example, add a custom logo for your reports!

Use the “Email Delivery” settings to choose if you’d like the report to be sent to specific email addresses once it is run. Your site administrator will need to setup an instance of the Scheduled Job "Mail Reports" to trigger creation and delivery of each report. So until that is set up by your site administrator, the automatic email delivery will not occur.

Once all of the desired changes are made, you can click on ‘Preview Report’ to see the results. You can then select ‘Print Report’, ‘PDF’, or ‘Export to CSV’ to get your one-time report output.

If you want to permanently change the parameters of a Report altogether, simply select the existing report, edit the Criteria as described above, and then select the ‘Update Report’ button. This will override the original criteria of the report. So, the next time that you select that report, the customizations that you made will already be there.

The ‘Update Report’ option might not always be the right choice, however. More often than not, you will want to ‘Save a Copy’ of a report with your customizations and changes. Use this ‘Save a Copy’ button to create a completely new report based upon one of the originals, but of course with the different criteria, a new name, and a new description. That way you will keep the original version of the report.

Once you’ve done the above process, selected your desired reports and re-running them is easy. Just select the report and view your results. Of course if you want to customize the report further, just follow again the steps outlined above. When ready to export, select the desired output method (CSV, PDF, or Print report) and/or choose an action to perform upon the resulting contacts from the action bar at the right of the screen.

For further instructions on how to manage reports, see the Reporting section of the CiviCRM User and Administrator Guide.

Exporting Data from Civi#

If you have data in Civi that you would like to extract from the system, either for use in a new contact management system or for other purposes, you can do so easily. Users can export their data in CSV spreadsheet format by following the steps below. Please note that if you would like a full/complete backup of your Civi database, it is best to perform a complete mysql dump. The DemTools team can assist with this if you are an NDI partner or client.

To export desired data in CSV format, follow these steps:

  • Perform a search to find the contacts in your system for which you’d like to export data.
    • If desired, you can leave the search criteria empty to include all contacts in your system.
  • From the search results screen, select all contact records (or those that you’d like to select)
  • From the ‘Actions’ drop-down list, select ‘Export Contacts’
  • If you’d like to choose the fields to include in the CSV export, click the ‘Select fields for export’ radio button
  • Click ‘Continue’
  • From the next screen, select the fields that you would like to include in the export
    • If you’d like to include more fields, you can select the ‘Select More Fields’ option at the bottom to provide extra fields for selection
  • Click ‘Export’ when ready, and your CSV will download in your browser

Flavors of Civi#

There are three common flavors of the Civi DemTool, each with their own unique customizations. CiviParty focuses on the needs of political parties, CiviMP is customized for members of parliament and other elected officials, and CiviSociety addresses the needs of civil society organizations. To read more about the custom features of each flavor, please see the sections below. In these sections, the custom groups, tags and contact types for flavors, where relevant, are listed, in addition to a description of each flavor’s additional module.


Additional Contact Types

In addition to the individual, household, organization and department contact types, CiviParty also features Political Party and Political Party Branch contact types. The Political Party and Party Branch contacts types are created to more easily allow users of CiviParty to track various political parties, their local branches and any members of those parties. As such, CiviParty also features a few custom relationship types.

Custom Relationship Types

To assist users in tracking party members and affiliations, CiviParty comes standard with custom relationship types connecting Individual contacts to political parties (an organization contact type) and political party branches (a sub-organization contact type). These relationships are as follows:

  • 'Member of' to 'Party Organization'. This is the relationship between an individual and a party.
  • 'Local Branch of" to "Party". This is the relationship between the party branch and political party.
  • 'Branch member of' to 'Local Branch'. This is the relationship between the individual member and the local party branch.

Custom Tags

To help CiviParty users get started, we’ve enabled all sites of this flavor with a series of custom tags. The tags are:

  • Strong Supporter
  • Strong Opponent
  • Soft Supporter
  • Soft Opponent
  • Volunteer
  • Party Member
  • Donor
  • Undecided Voter
  • Likely Voter
  • Youth
  • Languages Spoken
  • Government
  • Business
  • Journalist
  • Political Party
  • Elected Official
  • Campaign Staff
  • Office Staff
  • Consultant
  • Trainer
  • Activist

Additional Module

CiviParty comes with the CiviCRM Membership module enabled. This module allows political parties to establish and define membership types and, if desired, prices for affiliation; create self-service options for online membership sign-up and renewal; manage memberships manually through a simple administrative interface; create and schedule automated messages to welcome new members; remind people about upcoming events and membership renewal; and track and report upon contacts through the party membership cycle. Using CiviMember, parties can even grant certain privileges and access to their CiviParty site to certain levels of members.

To learn more about the CiviMember module and how to make the most use of it, check out the CiviCRM user guide.


Custom Tags

To help CiviMP users get started, we’ve enabled all sites of this flavor with a series of custom tags. The tags are:

  • National Staff
  • Local Staff
  • Casework Manager
  • Volunteer
  • Donor
  • Key Constituent
  • Key Issue Areas
  • Parliamentary Monitoring Organization
  • Elected Official
  • Youth
  • Languages Spoken
  • Government
  • Business
  • Lobbyist
  • Journalist
  • Activist

Additional Module

CiviMP comes with the CiviCase module enabled. As a politician in office or on the campaign trail, managing the interactions and communications between yourself, the people on your team and the contacts in your database (i.e. your constituents) is incredibly important. CiviCase allows you to manage these interactions by tracking a specific workflow that involves multiple members of your staff. This feature allows you to view case timelines and audit reports as well, helping to increase your responsiveness to constituent concerns. CiviCase enables you and your legislative staff to manage and track interactions while avoiding duplication and automating the task of remembering and scheduling follow-up activities with constituents.

For example, during the course of a political campaign, members of your staff will have hundreds of interactions with constituents and community members on a daily basis regarding the issues that you or your candidate are supporting. People may call to report incidents of intimidation, which have interfered with their ability to participate in civic conversations that are important to them or to express their concern over a censorship bill that, for instance, limits Internet freedom. When a member of your staff receives phone calls like these, they can create a case recording the details and location of the reported issue. Your staff person can then assign the task of following up on the matter to the appropriate person on your team, who will see in CiviCRM that the task was assigned to them. As progress is made to address your constituent’s issue, the actions of your staff will be recorded in your database.

CiviCase tracks interactions in two ways: cases and activities. Whereas activities are single interactions - for example when a constituent calls to request information from your organization, which your staff then provides - a case is used to track more complex interactions or communication processes. Your CiviMP site is pre-configured with a number of activity types, such as phone calls, meetings, emails sent, interviews and follow-ups. Should your organization want to track other tasks, additional activity types can be added to your database as discussed earlier in this manual. Based on the complexity of the tasks the staff in your organization conduct on a regular basis, you can make a list of potential case types to add to your database as well. This can be done by your site administrator.

  • When an activity related to a specific case is added to your database using CiviCase, a standard set of information can also be entered, including:
  • Who recorded the activity and who reported the activity
  • When and where the activity will (or did) occur
  • Free-form subject and detailed description
  • Time spent on the activity

Additionally, CiviCase gives you the ability to define a work plan or an expected sequence of tasks and activities for each case in your database using what are called standard timelines, which are created automatically when a new case is opened. For simpler cases, this timeline might only include two items, such as Open Case and Follow up. For more complex processes, the timeline allows you to capture all the activities related to a case, when they’re expected to occur and when they should be accomplished. During the life of each case, some activities will be automatically created for you, such as:

  • Open Case - Created at the same time the case is created
  • Follow up Type - Used when it is not necessary to define a more specific activity
  • Change Case Type - Created every time an activity type is modified
  • Change Case Status - Created every time the status of a case is updated

To create a new case, go to the “Case” tab on the menu and select “New Case”. From this page you can select your desired case type, client, subject and description, case characteristics and much more. By following along with the case creation process, you’ll be able to customize the case as much - or as little - as you desire or require. If you are interested in adding more specific options or sub-descriptors to your case types, be sure to contact your site administrator.


Custom Tags

To help CiviSociety users get started, we’ve enabled all sites of this flavor with a series of custom tags. The tags are:

  • Civil Society Organization (CSO)
  • Government Donor
  • Foundation
  • Local Government Official
  • Foreign Government Official
  • Consultant/Expert
  • Languages Spoken
  • Key Issue Areas
  • Political Party
  • Journalist
  • Academic
  • Pollster/Researcher
  • Sub-Grantee
  • Program Partners
  • Vendor
  • Elected Official
  • Local Opinion Leader
  • Citizen Activist

Additional Module

CiviSociety comes with the CiviCRM Campaign module enabled. This module allows you to link events, activities, mailings and contributions together so that you can follow the progress of your efforts towards a single goal or campaign. The bottom line is that this module helps civil society groups measure and analyze the effectiveness of their outreach and mobilization efforts.

More specifically, you can use CiviCampaign to create surveys and petitions and record responses, link activities like emails, SMS, events and donations to a particular campaign. You can even record an individual contact’s levels of interest and engagement in a particular activity.

To learn more about the CiviCampaign module and how to make the most use of it, check out the CiviCRM user guide.


Here is an example of a properly cleaned CSV import for Civi.