Project Management Tools scheduling dashboard

How to Create Custom Fields in Microsoft Project

MS Project custom fields let you add schedule data that Microsoft Project does not provide as a standard field. You can use them to store control account codes, deliverable types, review status, risk categories and other program-specific information. You can also create formulas and graphical indicators that support schedule analysis.

In Project desktop, start by selecting Project > Custom Fields. Choose whether the field applies to tasks or resources, select an unused field of the correct data type, rename it and then configure its lookup list, formula, rollup behavior or graphical indicators.

This guide focuses on Microsoft Project desktop. Premium plans in Microsoft Planner, formerly Project for the web, use a different custom-field interface and have different capabilities.

What Are MS Project Custom Fields?

A custom field is a predefined Project field that you configure for a specific business purpose. For example, you can rename the task field Text1 as Control Account and populate it with approved control account identifiers.

Custom fields can support data entry, calculations, filtering, grouping and reporting. However, adding a custom field does not create schedule logic or change task dates by itself. A custom date field, for example, stores information but does not drive Project’s scheduling engine.

Common scheduler applications include:

  • Work breakdown structure or organizational coding not already captured elsewhere
  • Control account, work package or integrated product team identifiers
  • Contract line item number or statement of work references
  • Deliverable, review or milestone classifications
  • Schedule health and readiness indicators
  • Calculated values used for analysis, filters or exception reports
  • Proposal ownership, basis-of-estimate status or confidence categories

Use custom fields selectively. A well-designed field improves analysis and schedule governance. In contrast, an undocumented collection of Text and Number fields can make an Integrated Master Schedule (IMS) difficult to maintain. For broader guidance on schedule architecture, see Microsoft Project for integrated master scheduling.

Plan the Field Before You Create It

First, define what the field will contain and how the program will use it. This step prevents rework because the underlying data type affects available formulas, lookup values and rollups.

Choose the correct entity

Project desktop separates task custom fields from resource custom fields. A task field applies to activities, milestones and summary tasks. A resource field applies to labor, material or cost resources.

Use a task field for information such as work package ID, deliverable type or schedule status. Use a resource field for information such as organization, labor category or resource location.

Select the appropriate data type

  • Text: Alphanumeric labels, codes and descriptive categories
  • Number: Numeric ratings, quantities and calculated values
  • Cost: Currency values
  • Duration: Time spans expressed in Project duration units
  • Date: Dates that do not belong in a standard scheduling field
  • Flag: Yes-or-no conditions
  • Outline Code: Hierarchical coding structures

Do not select Number merely because a code contains digits. A control account such as 0102 should usually use Text because it functions as an identifier, not a quantity. Otherwise, Project may remove leading zeros or allow calculations that have no business meaning.

Decide how users will populate the field

Use manual entry when values vary and cannot be standardized. However, use a lookup table when users must select from an approved list. Lookup tables prevent variations such as CDR, Critical Design Review and Crit Design Rev from representing the same event.

Use a formula when Project should calculate the value from other fields. Formula-driven fields become read-only because the formula controls their values. Microsoft provides a reference for supported functions in its Project custom-field formula documentation.

How to Create MS Project Custom Fields

  1. Open the Custom Fields dialog. Select Project > Custom Fields. You can also right-click a field heading and select Custom Fields in supported desktop versions.
  2. Select Task or Resource. Choose Task for schedule activities and Resource for resource attributes.
  3. Choose a field type. Select Text, Number, Cost, Duration, Date, Flag or another appropriate type.
  4. Select an unused field. For example, choose Text1 if it has not already been assigned a program purpose.
  5. Rename the field. Select Rename, enter a clear name and select OK. Renaming Text1 as Control Account preserves Text1 as the underlying field while displaying the business name to users.
  6. Configure the custom attributes. Leave the field available for manual entry, or select Lookup or Formula.
  7. Set summary-row behavior. Determine whether the field should remain blank at summary levels, use the formula or apply an available rollup method.
  8. Review assignment-row behavior. Select whether task or resource values should roll down to assignment rows. Many task-coding fields do not need assignment-level distribution.
  9. Choose the display method. Display the underlying data or configure graphical indicators.
  10. Insert the field in a view. Right-click a column heading, select Insert Column and choose the renamed field.

Microsoft’s custom-field procedure for Project covers these desktop options as well as the separate Planner and former Project for the web experience.

Example: Create a Deliverable Type Lookup Field

Assume the fictional Falcon Sensor Modernization program needs to distinguish normal work, formal reviews, contractual deliverables and interface milestones. The scheduler wants consistent values for filters and customer-delivery checks.

The scheduler can configure the field as follows:

  1. Open Project > Custom Fields.
  2. Select Task and Text.
  3. Select an unused field such as Text3.
  4. Rename Text3 as Deliverable Type.
  5. Select Lookup.
  6. Add Work Activity, Internal Review, Customer Review, Contractual Deliverable and Interface Milestone.
  7. Close the lookup table and leave summary-row calculation set to None.
  8. Insert Deliverable Type into the schedule table.

As a result, the program can filter for contractual deliverables before an IMS submission. It can also review customer milestones separately from internal planning events. A lookup list provides more reliable results than unrestricted text entry.

This field is a program data convention, not a Federal Acquisition Regulation, Defense Federal Acquisition Regulation Supplement or universal Department of Defense requirement. The program should align the values with its schedule data dictionary, contract deliverables and customer instructions.

Create a Formula-Based Custom Field

Formula fields calculate information that Project does not display in the required form. For example, Microsoft documents the following Number-field formula for calculating elapsed days between the current date and a task’s Finish date:

DateDiff("d",NOW(),[Finish])

To create it, select an unused Number field, rename it as Days to Finish, select Formula and enter the expression. Then test the result on incomplete tasks, milestones and summary rows.

The formula uses calendar-day intervals. Therefore, it does not provide the same result as a working-time calculation based on the task calendar. Microsoft Project also provides the ProjDateDiff function for calculating duration between dates with a Project calendar, but that function returns minutes. Convert and test its output carefully before using it in management reports.

For baseline analysis, use Project’s standard variance fields before building a custom calculation. The standard Finish Variance field already compares the current finish against the baseline finish. See how to calculate and interpret finish variance in Microsoft Project before duplicating that logic.

Add Graphical Indicators

Graphical indicators replace displayed values with symbols based on defined tests. For example, Days to Finish could show a red indicator for a negative value, amber for zero through 10 days and green for more than 10 days.

To configure indicators:

  1. Open the custom field.
  2. Select Graphical Indicators under Values to Display.
  3. Define a test, threshold and image for each condition.
  4. Configure separate tests for non-summary and summary rows when needed.
  5. Select OK and inspect the results in the schedule.

Indicators present data; they do not control task status. Therefore, always validate the source value when an indicator looks wrong. Microsoft’s guidance for creating custom indicators shows the lookup and indicator configuration process.

Avoid using color or icons as the only evidence supporting an analysis. Include the underlying numeric or text field in a working view so reviewers can see why Project assigned each indicator.

Configure Summary and Assignment Rows Carefully

Summary behavior often causes unexpected results. Text and outline-code fields do not roll up like numeric fields. In addition, a value entered on a detail task does not automatically create a meaningful summary-task value.

For numeric, cost and duration fields, select a rollup method only when the result makes business sense. Summing a custom quantity may be valid. However, summing risk scores or days-to-finish values usually is not.

Formula fields also require deliberate summary-task settings. If you select Use Formula, Project evaluates the formula against summary-task data. That result may differ from the worst or earliest condition among the underlying tasks.

Assignment roll-down controls whether task or resource field values flow to assignment rows in Task Usage or Resource Usage views. Do not enable it automatically. First, determine whether the field describes the task, resource or individual assignment.

Standardize Fields Across Schedules

Local custom fields belong to the project file in which they were created. Microsoft Project can import a field from another open project, including its name, lookup list, formula and indicators. A controlled project template can also provide a consistent field structure for new schedules.

For Project Server environments, administrators can create enterprise custom fields that apply consistently across projects, tasks and resources. Microsoft recommends designing these fields around business and reporting requirements. Enterprise lookup tables are especially useful when standardized terminology matters. See Microsoft’s enterprise custom-field and lookup-table guidance.

Maintain a simple custom-field register for each scheduling environment. At minimum, document the displayed name, underlying field, entity, data type, permitted values, formula, owner and intended report. Also document whether downstream tools depend on the underlying field name.

Field governance becomes particularly important when several schedules feed an integrated program view. The same field should not represent control account in one file and risk score in another.

Common Custom-Field Mistakes

  • Reusing an occupied field: Inspect existing views, filters, groups, reports and macros before assigning a new purpose to Text1 or another field.
  • Choosing the wrong data type: Treat identifiers as text and measurable quantities as numbers.
  • Allowing unrestricted text: Use a lookup table when reporting depends on consistent terminology.
  • Ignoring summary tasks: Test formulas and indicators on both detail and summary rows.
  • Confusing metadata with schedule logic: A custom date or status field does not replace predecessors, successors, constraints or calendars.
  • Duplicating standard fields: Use built-in fields such as Finish Variance, Total Slack and Critical when they already satisfy the requirement.
  • Building formulas without testing units: Confirm whether the result represents minutes, hours, working days or elapsed days.
  • Using Task ID as a permanent key: Task IDs change when users insert, delete or move activities. Review Microsoft Project Unique ID versus Task ID before designing cross-file references.
  • Hiding the source data behind icons: Keep a diagnostic view that displays the raw values.
  • Creating too many formula fields: Complex formulas can affect performance, especially in large schedules and enterprise environments.

Custom Fields in an IMS or EVMS Environment

Custom fields can strengthen schedule integration when they implement an approved coding structure. For example, a program may use them to map tasks to control accounts, work packages, responsible organizations or reporting categories.

However, a custom field is not automatically an Earned Value Management System (EVMS) requirement. Contract requirements vary by agency, contract, program and tailoring. The scheduler should trace each required field to the contract, Integrated Program Management Data and Analysis Report instructions, schedule data dictionary or approved program procedure.

Also, avoid storing alternate baseline dates in miscellaneous custom fields without configuration control. Microsoft Project provides formal baseline fields and interim-plan capabilities for specific purposes. If the program needs a controlled baseline, follow a documented process such as the one described in how to create a baseline in Microsoft Project.

Frequently Asked Questions

Can I copy an MS Project custom field to another file?

Yes. Use Import Field in the Custom Fields dialog to import the field from another available project. You can also distribute approved fields through a controlled project template.

Can users type into a formula-based custom field?

No. Project calculates the value from the formula, so the field becomes read-only.

Will a custom Date field change the schedule?

No. A custom date stores or calculates information, but it does not act as a task Start, Finish, constraint or logical relationship.

Should I use a lookup list or free text?

Use a lookup list when the field supports filtering, grouping, integration or repeatable reporting. Use free text only when users genuinely need unrestricted entries.

Do custom fields create contractual requirements?

No. Microsoft Project provides the capability, but the contract, customer instructions and approved program processes determine which data the schedule must contain.