Programs are distinct units of an agency where clients can be referred, enrolled, and receive program-specific services. You can set up programs with their own screens, services, and eligibility requirements.
Note: We recommend not adding programs within the System Agency since that agency is primarily used by System Administrators for administrative purposes.
Programs in Clarity Human Services correspond with projects in the HUD HMIS Data Standards, and Project Descriptor Data Elements are recorded within a program's setup.
Program creation requires the configuration of several additional system components:
- Screens: data collection for programs occurs through screens. Screens are assigned to Program Templates, which are assigned to programs. Assessment screens can be assigned directly to programs as Program Assessments (described below). Only system administrators can configure screens. Visit the Screens section of our System Administration page for guidance on creating and editing screens.
- Program Template: Screens are assigned to Program Templates, and Program Templates are assigned to programs. Every program must have a Program Template. These templates define the screens assigned to different data collection stages and other elements of the program. Only system administrators can configure Program Templates. See Program Templates for guidance on creating and editing templates.
- Services: to record a service at the program level, you will first need to create and assign that service to the program. For more information on creating and editing services, see Introduction to Services.
Create or Modify a Program
To create or modify a program, ensure that you are in the correct agency. From the Launchpad, navigate to MANAGE > PROGRAMS.
In addition to the program names, the PROGRAMS tab displays the Project Type, the Program Template currently assigned to the program, the number of services linked to the program, and programs with a Status of "Inactive."
To edit an existing program, click the Edit icon to the left of the program name to open the MODIFY PROGRAM page. To create a new program, click ADD NEW PROGRAM.
Configure the Program
Enter a Program Name, Alias (if applicable), and Program Description (if applicable).
Note: Program Name cannot contain the < symbol (e.g. "<Test Program").
Choose a Program Template. See Program Templates for more information.
Once you select the Program Template, the configuration options associated with that program will appear on the screen.
Several configuration options are available when creating a program, some of which are associated with the HMIS Data Standards. The options available will depend on whether a custom program screen is associated with the selected Program Template. The options listed here are included in the system's "HUD HMIS Project Setup" program screen, which contains the necessary fields (HMIS Project Descriptor Data Elements) to comply with the HUD HMIS Data Standards.
Operating Start and End Date: the date the program started and ended (if applicable) (HMIS Data Elements 2.02). Before you can add an Operating End Date to the system, all clients must be exited on or before the Operating End Date.
Status: an "Active" program is available to users. An "Inactive" program is unavailable to users, but its information is still available in the system.
Funding Source: select an initial funding source from the picklist. If none of the existing funding sources in the picklist apply to this program, navigate to the bottom of the picklist and select Create New Funding Source. The CREATE A NEW FUNDING SOURCE pop-up appears. Complete the fields, then click ADD. The system creates a new funding source and applies it to the program.
Cross Agency Services: see Configuring Cross Agency Services.
Program Type: the type of program (HMIS Data Element 2.02).
Program Applicability: used for reporting purposes and should match the Program Type.
Continuum Project: this indicates whether the program is in the Continuum of Care (HMIS Data Element 2.02).
Use Inventory Calculated Records: toggle on to use Clarity's Inventory module; toggle off to collect inventory directly through the program. Refer to our Options on Collecting Inventory article for additional information.
Manage Units: Enables display of the Units tab on the Program Enrollment screen.
Site Primary Location: the location of the program. Refer to Program Setup: Sites for information on adding additional sites or selecting a different Primary location.
Target Population: the program's target population (HMIS Data Elements 2.02).
Method of Tracking: the process by which the program tracks emergency shelter utilization (Entry/Exit or Night-by-Night). This field only appears when you configure a program with "Emergency Shelter" selected as the Program Type (HMIS Data Elements 2.02).
- Entry/Exit Method: This method is for shelters requiring an entry, a continuous stay, and an exit. The length of stay is calculated based on the number of nights between program entry and program exit and performance will include changes from program entry and program exit data collection stages. Funder preference for emergency shelter programs is the program entry/exit date method, except for programs where clients are permitted to enter and exit on an irregular basis.
- Night-by-Night Method: shelters that allow clients to enter and exit on an irregular basis and do not require a continuous stay and must instead rely on tracking bed nights. In this method: (1) all data required to be collected at program entry is collected; (2) the program records every discrete date or series of dates that the client utilizes a bed; (3) the system maintains historical data on the nights sheltered; (4) the duration of each stay can be accurately determined and aggregated to calculate each client's total length of stay in the program; and (5) the client may be exited, or the system may be designed to automatically generate an exit after an extended absence. Length of stay is calculated on bed nights used in this method. Using the night-by-night method does not mean that the HMIS must identify a client in a specific bed.
Housing Type: the type of location where housing is provided (if applicable) (HMIS Data Element 2.02).
Geocode: The geocode for the primary location. Geocodes are updated annually and available on the HUD Exchange. Mobile programs (e.g., street outreach) should record the geocode based on the location of their administrative office. Scattered-site housing programs should record the geocode where most beds are located or where most beds are located as of the last inventory update (HMIS Data Elements 2.03).
HMIS Participating Project: if the program participates in HMIS (HMIS Data Elements 2.02).
Continuum of Care: select the appropriate Continuum(s) of Care. System Administrators maintain Continuum of Care information in System Variables (HMIS Data Elements 2.03).
Public Listing: if "Public," staff members at other agencies can refer clients to the program. If "Agency," only the agency's staff members can refer clients to the program. If "None," no one can refer clients to the program.
Coordinated Entry Events: This toggle enables the ability to manage Coordinated Entry Event functionality.
Note:For programs that use custom program setup screens (any program setup screen that is not the "HUD HMIS Project Setup" system screen):
In order to manage the program's CE Events functionality, such as the ability to adjust the settings or disable/enable CE Events functionality, add the Coordinated Entry Events toggle to the custom program setup screen.
To add the Coordinated Entry Events toggle to a custom program setup screen, within the program setup screen editor, add the "Coordinated Entry Events" field (field data name: enable_ce_events).
This toggle must be enabled for programs that should record Coordinated Entry Events and disabled for programs that should not collect Coordinated Entry Events.
Note: The system records CE Events within the program that initiated a referral, not the program that may receive the referral.
Goals: enabling this setting will allow you to use the Default Goals section in the Program Resources sidebar to add goals for the program. For more information, see Program Goals.
Auto Service Placement: toggle on this setting to automatically provide specified services to the client upon enrollment. For more information, see Program Auto Service Placements.
Eligibility: enables or disables the ability to add criteria for program enrollment using the Program Eligibility section in the Program Resources sidebar. Please refer to Program Setup: Eligibility for more information. Our Inventory and Eligibility article provides additional details for the Housing Inventory functionality.
Link from History: This allows the user to link services listed in the client record HISTORY tab to an enrollment for the program. For more information, see Linking Service Items to Program Enrollments.
Program Assessments: This setting enables the ability to conduct assessments within a program enrollment. Select Program Assessments in the Program Resources sidebar and click ADD ASSESSMENT to assign an assessment to the program. The ADD ASSESSMENT pop-up will display a list of assessments that have been enabled, regardless of whether an agency otherwise has access to create that assessment. Make a selection and click ADD.
Agency managers may add an assessment to the program, but only system administrators may configure the Assessment Screen.
Program Notes: This allows the user to document client notes within the program enrollment and share them according to Sharing Settings and Access Roles.
Program Files: This allows the user to upload, view, and manage files within the program enrollment.
Program Charts: This function provides a visual tracking system of specified variables over time. If this setting is enabled, the Chart Fields section will appear after you save the program. For more information, see Program Chart Fields.
Aging into Adulthood Notification: This setting allows System Administrators and Agency Managers to select how soon before a client's 18th birthday the user will see a banner, email, and inbox notification that a client is about to age into adulthood. To make this selection, set the Aging into Adulthood toggle to ON, then select the timeframe from the "Threshold of" picklist.
Note: The "Aging into Adulthood" messaging will not generate if the 'income_cash_is' field or the 'benefits_noncash' field is hidden due to due to display constraints.
Auto Exit Due to Inactivity: provides the ability to automatically record a program exit for an enrollment when no services or program-level assessments have been recorded within the client record during a specified timeframe. See Program Setup: Auto Exit for more information on the Auto Exit settings.
- When Auto Exit Due to Inactivity is enabled for Night-by-Night Emergency Shelter programs, the Auto Exit Benchmark setting appears. Refer to Program Setup: Auto Exit for details.
Cascade Enrollment Data: allows client data entered in the program's enrollment screen to pre-fill other screens in the client record, as long as the enrollment was created within a designated number of days from the current date. After you toggle on this setting, a Threshold of picklist will appear for you to select the number of days.
- Data only cascades between matching fields.
- In cases where multiple assessments or program enrollments exist, data will cascade from the most recent.
Cascade Assessment Data: allows client data entered in the program's assessment screen to pre-fill other screens in the client record, as long as the enrollment was created within a designated number of days from the current date. After you toggle on this setting, a "Threshold of" picklist will appear for you to select the number of days.
- To cascade data from the assessment screen, you should add the data to the Cascade Assessment section of the program.
- Enabling Cascading Assessment Data will result in data cascading between program enrollments and assessments, based on whichever was created first. If a user creates an assessment first, data from the assessment will cascade into the program enrollment form the next time a new program enrollment is created. If the program enrollment is created first, data will cascade into the assessment the next time a new assessment screen is opened.
In cases where both enrollment data and assessment data are enabled to cascade, and both program and assessment data are eligible to cascade, data will cascade as follows:
- Program enrollment is first cascaded.
- If there is an assessment AFTER the cascaded enrollment that is being cascaded, that assessment will be reviewed for more recent data and will update those specific fields.
For more information, refer to the "Cascading from Assessment to Enrollment" and "Cascading from Enrollment to Assessment" sections of our Data Cascading article.
Close Services Upon Exit: the system will add an end date to services associated with an enrollment at exit.
Enrollment Age Warning: This feature aims to reduce the number of individual enrollments for clients under a certain age. When this setting is enabled, a warning will display when a user attempts to save an individual enrollment for a client whose age is lower than the age threshold.
Enable All Client Forms: For details on enabling forms, see Enabling Forms for Agencies and Programs.
After configuring the options associated with the program, click ADD RECORD to save the program. (Any required fields that you did not complete will be underlined in red; you will not be able to save the program until you complete those fields.)
After you save the program, the system displays links at the bottom of the page that are visible only to users with the default System Administrator Access Role. These links provide a quick way to open the Enrollment Screen, Status Screen, Exit Screen, Follow-up Screen, and Program Setup Screen for the current Program Template.
Program Resources Sidebar
Once you save the program, the Program Resources sidebar appears on the right side of the screen to allow you to configure additional options for the program.
Responsible Staff Members
The system will send notifications to staff members assigned as the program's Responsible Staff Members.
To assign a staff member as a Responsible Staff Member:
- Select Responsible Staff Members from the Program Resources sidebar.
- Click ADD STAFF.
- Type the staff member's name, username, or email in the search area. A list of applicable staff members will appear.
- Choose the appropriate staff member.
- Click ADD.
Refer to our Program Setup: Eligibility article for details on setting up Eligibility requirements for a program.
To add existing funding sources to the program:
- Select Funding Sources from the Program Resources sidebar.
- Click ADD FUNDING SOURCE.
- Toggle on the desired funding source in the list that is displayed.
- Click ADD.
Bed & Unit Inventory Information
For residential programs, if the Use Inventory Calculated Records option (described earlier) is not enabled, you may add bed and unit inventory directly through the program:
- Select Bed & Unit Inventory Information from the Program Resources sidebar.
- Click ADD INVENTORY.
- Complete the following fields:
- Inventory Start Date: the date the inventory first became available.
- Inventory End Date: the date the availability ended. It may be left null.
- Continuum of Care: the CoC where the beds are located.
- Household Type: the household type this bed inventory will serve
- Bed Type: facility-based, voucher-based, other.
- Availability: year-round, seasonal, etc.
- Youth-Veterans: number of beds dedicated to youth-veterans.
- Any Other Veteran: number of beds dedicated to any other veteran.
- Any Other Youth: number of beds dedicated to any other youth.
- Non-Dedicated Beds: number of non-dedicated beds.
- Total Bed Inventory: calculated number based on dedicated and non-dedicated beds.
- Total Unit Inventory: number of rooms/apartments/units where the beds are located.
- Click SAVE CHANGES.
You may add multiple bed inventories as long as the inventories with the same CoC, Household Type, and Availability do not have overlapping dates.
If you change the project type for a Program that has Bed & Unit Inventory, you will see a pop-up notification that the current date will be applied as the end date for all active inventory records associated with that Program. Recommended practice is to create a new program if the project type changes. However, this update will mitigate inventory issues when a project type is modified for an existing program.
To better understand the connection between program/bed inventory setup and HMIS Federal reporting, refer to HMIS Bed Inventories, Occupancy, and Reporting.
If the Use Inventory Calculated Records option (described above) is enabled, you will see a HOUSING INVENTORY SITES section with expandable subsections that display details about the number of Buildings and Units that are connected to each Site.
- For each Site, the system displays the following totals:
- Total number of Buildings associated with the program out of the total number of Buildings connected to the Site.
- Total number of Units associated with the program out of the total number of Units connected to the Site.
- Inactive sites will be listed in a separate INACTIVE HOUSING INVENTORY SITES section.
- Clicking on a Site displays a list of all the Buildings with either a Unit or a Unit Configuration Type connected to the program.
- For each Building, the total number of Units associated with the program out of the total number of Units connected to the Building will be displayed, along with the Building's status (Active or Inactive).
- Only one Site is expandable at a time.
- Clicking on a Building displays a list of Units in that Building, along with each Unit's status (Active or Inactive) and Unit Configuration Type.
Adding a Queue(s) to a program allows switching between added Queues within SEARCH > REFERRALS > Availability.
To add a Community Queue to a program:
- Select Community Queues in the Program Resources sidebar.
- Click ADD COMMUNITY QUEUE.
- All newly created Programs will have a Queue connected; the Queue is most often named Default.
- If Coordinated Entry Type is set to "Sharing Groups Based," the only Community Queues that can be added to an agency's programs are the ones that have been added to the Referral Settings for the agency's Primary Coordinated Entry Group.
- You cannot add an inactive Community Queue to a program.
Note: If a program is connected to all available Queues, the ADD COMMUNITY QUEUE option will no longer be visible.
To delete a Queue from a program, click on the trash can icon next to the Queue you want to delete.
For more information about the Availability tab, please read Referrals: The Availability Tab.
Coordinated Entry Events
Refer to our Program Setup: Coordinated Entry Events article for details on configuring Coordinated Entry Events for the program.
Restoring Deleted Programs
You can restore deleted programs using Recover deleted data.
Toggle on the program (s) you would like to restore and click RESTORE.
Users with the appropriate access can click the Audit Log button at the bottom of the MODIFY PROGRAM page to track changes made to the program setup.