Skip to main content
Custom fields in Beebole add your own data fields to people, projects, tasks, and time records. Use them to capture what Beebole’s built-in attributes don’t cover — an employee ID on every person, a client reference on each project, or a ticket number on every time entry — and reuse those values as columns in your reports.
Custom fields come with the Advanced plan, and can be added to the Essential plan as an add-on. If your subscription doesn’t include them, the Custom Fields entry in Settings shows an upgrade button instead of opening the page.

Creating a custom field

1

Open the Custom Fields settings

Click the button with your initials at the bottom of the sidebar, then go to Settings > Custom Fields.
2

Add the field

Click Add Custom Field, type a name — for example “Employee ID” or “Cost center” — and click Add Custom Field to confirm.
3

Choose the field type

In the Custom field details panel, pick a Field type: Text, Date, Date & time, Number, URL, or Boolean.
4

Configure the type's options

The options for the selected type appear below it — defaults, limits, validation. Every change is saved automatically.
5

Choose where the field appears

In the Custom field visibility panel, turn on Visible for People, Visible for Absence types, Visible for Time Records, Visible for Projects, or Visible for Tasks. A single field can apply to several. The field then appears on the matching records — see Choosing where a field appears.

Field types

Beebole supports six field types, each suited to a different kind of data: You can change a field’s Field type later from the Custom field details panel — the type-specific options switch accordingly.

Field options and validation

Each type comes with its own options, all edited in the Custom field details panel and saved automatically: Custom fields don’t carry default values — a field starts empty (or shows its Placeholder text) until someone fills it in. Turn on Use predefined values to restrict a text field to a fixed list: add each entry under Allowed values, and users pick a value from that list instead of typing freely.
Beebole validates values as people enter them. An entry outside the allowed range or format is flagged with an error and not saved until corrected.

Choosing where a field appears

The Custom field visibility panel controls which items carry the field. A single field can apply to several, and each toggle is saved automatically:
  • Visible for People — The field appears on every person’s profile.
  • Visible for Projects — Turn it on, then use Add a category to choose the project categories where the field applies. Within each category you can tick the hierarchy levels — for example top-level projects only, or their subprojects too.
  • Visible for Tasks — Turn it on, then choose the task categories where the field applies.
  • Visible for Time Records — The field appears when filling in a time entry’s details on the timesheet. Narrow it down with Project categories and Plannings, and turn on Absences to also show the field on time-off entries. A field scoped to a planning applies to tasks at every level of that planning.
  • Visible for Absence types — The field applies to your time off types. It appears in the Custom fields panel of each type, and it becomes a column you can review and fill in for time off types in Master data review.

Who a field is asked of

Visibility decides which kind of record can carry the field. The field’s Who has access? panel then decides which records actually get it, with sections for people, tags, projects, tasks, and time off types. When Show all custom fields is on in Show or hide by default, those sections flip into exclusion lists instead. See Assignments for how the two directions work together. On a time record, the field follows the person the timesheet belongs to — not whoever types the entry — and Beebole checks every link the entry offers: the person and their tags, the projects on the entry and their parents, its task, and, on a time-off row, the time off type it is booked against. A match on any one of them brings the field in, which is what makes an assignment to a time off type show the field on absences of that type.

Entering values

Once a field is visible for a given type, it appears automatically on every matching record — there is nothing to add one by one. Open a person, project, or task and fill in the field in its Custom fields panel; values are saved automatically as you enter them. For time records, open the entry’s details on the timesheet and fill in the field there.

Custom fields in reports

Custom field values flow into reporting. When you build a custom report, any custom field visible on people, projects, or tasks is available as a column for that type — so a field like a client reference or region becomes a regular report dimension.

Custom fields in the API

Definitions and values are both exposed in Beebole’s GraphQL API: read them with getCustomFields and getCustomFieldValues, write values with addCustomFieldValue and its edit mutations. This is how an identifier from another system — an HR or payroll ID kept in a text field, or the External ID field a legacy migration creates — is looked up or filled in from a script. See Custom fields on the Queries page and Custom fields on the Mutations page.

Managing custom fields

To manage an existing field, open it in Settings > Custom Fields and click the ⋯ action menu next to its name. The menu offers Duplicate, Rename, Archive, Unarchive, and Delete. Archived fields disappear from the list. Click Show Archived to display them, then use the ⋯ action menu and Unarchive to restore one.
Delete only works on a field that holds no values. As long as a value is stored on any person, project, task, or time entry, Beebole refuses the deletion with the message This custom field cannot be deleted because values have been entered for it. Archive it instead. Clear those values first, or choose Archive to take the field out of use while keeping its data. See Delete protection for how Beebole handles blocked deletions everywhere.

People

Manage the profiles where person-level custom fields appear.

Projects

Organize projects into the categories that drive field visibility.

Timesheets

See where time-record custom fields show up when entering time.

Custom Reports

Use custom field values as columns in your report layouts.

Frequently asked questions

Beebole offers six custom field types: Text, Number, Date, Date & time, URL, and Boolean. Each type has its own options, such as length limits and patterns for text or earliest and latest dates for date fields.
Yes. Turn on Visible for Time Records and the field appears when filling in a time entry’s details on the timesheet. You can limit it to specific Project categories and Plannings, and the Absences toggle also shows it on time-off entries. On a time record the field follows the person the timesheet belongs to, so an assignment made through that person, one of their tags, the entry’s projects or task, or its time off type all bring the field in.
Yes. On a Text field, turn on Use predefined values and add the entries under Allowed values. In Beebole, users then pick from that list instead of typing free text.
Yes. Under Visible for Projects, add only the project categories where the field belongs, and tick the hierarchy levels it should cover. Projects in other categories won’t show the field.
Yes. Open the field in Settings > Custom Fields and pick another Field type in the Custom field details panel. The type-specific options change with it, so review limits and defaults after switching.