OpenProject customization

OpenProject customization adapts the work package model, workflows, project templates, branding and integrations to how your teams plan, inside infrastructure you control. This page explains what the work includes, what drives cost and duration, which changes need an Enterprise plan, and what to provide before a partner quotes.

On this page

What OpenProject customization covers

Customization in OpenProject means changing how the platform models your delivery work without changing its source code. The main levers are custom fields on work packages and projects, work package types with their own attributes, status and workflow configuration that controls which transitions each role may perform, project templates that stamp out a consistent structure for new projects, branding, and API-based integrations with other systems. Each lever has different consequences for upgrades and for who can maintain it, so the first decision is which of these your teams actually need.

Customization is usually triggered by one of four situations: reporting needs that the default fields cannot answer, teams that deliver in different ways (for example, a sprint-based product team next to a stage-gated project office), a move from another tool such as Jira or Redmine that carries existing conventions, or a branded rollout to a wider organization. Before building anything, list the statuses, types and fields each team uses today and identify which ones have no equivalent in OpenProject.

Some work fits an in-house administrator well: adding a custom field, creating a type with a standard set of attributes, or copying a project template. Other work benefits from a partner, including workflow designs that mix permissions and status transitions across many roles, integrations that write to external systems, and any change that must be tested against an upgrade path. Confirm with the vendor which branding and workflow features sit in the Community edition and which require Enterprise, since OpenProject lists custom branding among its Enterprise features.

Ask any partner to show the configuration as an exported, documented change set, with a test project that proves each workflow and field behaves as specified. Ask which items will need rework when you move to a newer OpenProject release, and who will own the API tokens and integration accounts after go-live. Those answers determine the maintenance effort, which often matters more than the initial build.

What the work includes

OpenProject customization changes how work is modeled, routed and reported inside your instance. Each area below ends in a deliverable your administrators can review, test and operate after the engagement closes.

Data model design

We map your reporting needs to custom fields, work package types and the attributes each type carries, then check how those choices appear in project forms, filters and Gantt views. The client receives a configuration specification listing every field, type and its project assignments. Confirm which field formats and type options your edition and current release provide before committing to a design.

Workflow and permission design

Status transitions and role permissions decide who can move a work package forward and who can only view it, so they need to match your approval practice. We document each workflow per work package type and role, then test edge cases such as reopening closed items. The client receives a permission matrix and a tested workflow change set. Confirm which workflow and permission controls sit in your edition, since some administration features differ between plans.

Project templates

Templates store the modules, types, statuses, custom fields and starter work packages a new project begins with, which keeps delivery teams from rebuilding the same setup each time. We define which templates exist, who may create projects from them and what must be reviewed afterward. The client receives a template catalog with a setup checklist. Confirm how template copying handles custom fields and permissions in the release you run.

Branding and access controls

Branding covers logos, colors and login presentation, and it is often tied to the Enterprise plan, so the plan decision comes first. We also check that branding changes do not expose internal naming or alter the way administrators navigate settings. The client receives a branding specification and a change record for each visual setting. Confirm the branding options your edition permits before design work starts.

API integrations

Integrations with other systems usually rely on the OpenProject API to read or write work packages, projects and users. We define the data flows, authentication method, service accounts and error handling for each integration, then test them against a staging instance. The client receives a tested integration change set and the credentials inventory needed to operate it. Confirm which API endpoints and authentication options your release supports for each planned flow.

Admin automation and runbook

Repeatable admin tasks, such as bulk user changes, group updates or scheduled housekeeping, reduce manual error when they are scripted and reviewed. We document which tasks are automated, who approves them and how they are rolled back. The client receives a runbook for administrators covering each automated task and its recovery steps. Confirm which administrative actions your installation method and edition expose to scripts before promising automation for them.

What drives cost and duration

This table lists the decisions that most change OpenProject customization effort, why each one matters and how to keep it contained before the build starts.

DriverWhy it changes effortHow to keep it down
Custom fields and typesEach custom field must be designed, tested in forms, filters and reports, and migrated if data already exists. Work package types multiply the field sets and workflows that must be maintained.Reuse existing types where possible. Add custom fields only when a report or decision needs them, and list every field with its owner before the build.
Workflows and role permissionsStatus transitions, role-based permissions and project-level overrides interact. Each combination needs test cases, and changes often surface in unrelated projects.Start from the default workflow and change only transitions that a named team needs. Document the permission matrix by role and project type and sign it off early.
Project templatesEach template carries its own types, statuses, fields and sub-project structure. Templates that differ slightly from each other become separate maintenance items.Limit templates to the distinct delivery models in use. Build shared settings once and vary only what the model requires.
Integrations (inbound, outbound, identity-linked)Each integration needs an API contract, credentials, error handling and monitoring. Identity-linked connections such as SSO and group sync depend on your directory structure and on Enterprise features.Write integration contracts before development, including data fields, direction, frequency and owner. Confirm which identity features your edition includes.
Branding and Enterprise-only featuresCustom branding and single sign-on are listed among Enterprise features, so they add licensing and configuration work. Branding also adds review of emails, login pages and documents.Confirm the required edition with OpenProject before scoping. Limit branding to logo, colors and login page unless legal or brand teams require more.
Environments (development, staging, production)Each environment needs its own installation, database, configuration sync and access controls. Keeping them aligned takes ongoing effort, and drift between them causes defects at release.Keep configuration in version-controlled exports or scripts, and promote changes through environments in the same order every time. Confirm how many environments the quote covers.
Testing scope and pilot usersTest effort grows with the number of roles, projects, integrations and pilot groups. Pilot feedback often leads to a second round of configuration changes.Define test cases by role and workflow, limit the pilot to named groups, and set exit criteria before the pilot starts.
Upgrade frequency during the projectOpenProject publishes frequent releases. Each upgrade during the build means re-testing customizations, checking API and integration behavior and repeating the migration rehearsal.Agree a fixed target release at the start and freeze it for the build. Plan a separate upgrade step after go-live and check release notes for each change that touches your customizations.

Project phases and outputs

Six phases take the configuration from stated requirements to a production instance that your team can run and change.

  1. Run requirements and configuration audit

    Your team and ours review the current OpenProject instance or planned setup, list the teams, project types and reporting needs, and record which features the work needs and which edition provides them. The closing output is a requirements register and a configuration audit that lists every setting, role and custom field in use, so each later decision traces back to a stated need.

  2. Design the data model and workflows

    We design work package types, custom fields with their types and options, status transitions, and the roles allowed to change each one. Your process owners review and approve the design. The outputs are a field and type catalog, a workflow matrix that maps each type and role to allowed status changes, and a recorded sign-off before any build starts.

  3. Build in a non-production instance

    We configure types, fields, workflows, project templates and branding in a separate non-production instance installed in your infrastructure, and log every change in a configuration record. Where custom code or plugins are needed, we build and review them in the same environment. The output is the built instance, template definitions and a test log showing each design item was checked against the approved matrix.

  4. Build and contract test integrations

    We build the API integrations and any identity or Nextcloud links the design requires, then test each one against agreed request and response contracts, including error cases and permission boundaries. Confirm which integration features your edition supports before design closes. The output is an API test suite and an interface specification that your team can rerun after upgrades.

  5. Pilot with live teams

    Selected teams use the configured instance for their day-to-day work over an agreed period, and we collect defects, usability feedback and gaps against the requirements register. Each issue is logged, triaged and either fixed or accepted with a named owner. The output is a pilot report listing resolved defects, open items and a go or no-go recommendation for production.

  6. Roll out to production and hand over

    We apply the tested configuration to the production instance, run the onboarding and data steps agreed in the plan, and verify access, templates and integrations after cutover. Your administrators receive runbooks, a rollout and rollback plan, and training on configuration changes. Handover closes when your team makes a change through the documented process without our help.

In-house or with a partner

This table shows which customization tasks an OpenProject client team usually keeps and which a partner usually takes, with the skills each side needs for the work.

Customization workUsually handled bySkills needed
Defining reporting needsClient teamBusiness analysis, knowledge of which work package fields matter, OpenProject administration basics, change control
Owning custom field values and listsClient teamProcess ownership, OpenProject administration, data quality checks, change control
Approving workflows and status transitionsClient team, with partner documentationProcess design, OpenProject administration, approval routing, change control
Day-to-day administration of users, projects and templatesClient teamOpenProject administration, role and permission model, onboarding and offboarding procedures
Data model design against OpenProject data structuresPartnerRelational data modeling, OpenProject work package types, custom fields and project hierarchy, PostgreSQL basics
API integration buildPartnerREST API work, token or OAuth authentication, error handling, test data in non-production environments
Environment setup and configuration handlingPartner, with client-provided infrastructure accessLinux administration, Docker or package installation, PostgreSQL basics, secrets handling
Regression testing after upgradesShared: partner runs scripted tests, client signs offTest case design, reading release notes, PostgreSQL basics, change control

What usually goes wrong

Most OpenProject customization problems are not technical failures on day one. They appear months later, when the configuration has grown without owners, reviews or tests. Each card below names a failure pattern and the step that prevents it.

Too many custom fields

Custom fields added one request at a time split the same concept across several fields, so project and work package reports stop matching. Assign a named owner for each field, require a reporting use case before creation, and review the field list at a fixed interval to merge or retire duplicates.

Workflows that block valid status changes

Status transitions limited by role or type can stop a team from closing work that is legitimately done, which pushes people toward workarounds. Write the expected transition map for each work package type before editing workflows, and test each transition with a representative user from every role that needs it.

Permissions set per person

Granting rights to individuals instead of roles creates access that nobody can explain during a review and that persists after people change teams. Define roles per project type, map identity groups to those roles, and audit role assignments against the access policy rather than against individual requests.

Templates that drift from live configuration

Project templates copied from an older project gradually stop matching the current types, statuses and fields, so new projects start with broken or outdated setups. Keep the template definition in version control, and run a test case per template that creates a project and checks types, statuses, fields and permissions.

Integrations built on undocumented behavior

Scripts that depend on internal responses, unpublished endpoints or field ordering can fail silently after an update. Build integrations only against documented API endpoints, record the OpenProject version each integration was tested with, and keep an integration test suite that runs before every upgrade.

Enterprise features assumed on a lower plan

Single sign-on, LDAP group synchronization and custom branding are listed among Enterprise features, so a design that assumes them on Community or a lower plan will not work as planned. Confirm each required feature against the current pricing page and the edition quoted before the design is approved.

Configuration broken by a minor release

Minor releases such as 17.7.0, 17.8.0 and 17.9.0 can change behavior that custom workflows, templates or scripts rely on. Run a pre-upgrade regression pass on a staging copy with production-like data, and review the release notes for each version between your current release and the target before scheduling the change.

How the work changes by situation

When a team moves configuration and history from another tracker, the mapping work comes first. Scope grows with how much of the source setup has to be recreated, not only the data.

  • Scope: map statuses, work package types, custom fields and workflows from the source tool before any import runs. The Jira Migrator is in beta and covers Jira Data Center 10.x and 11.x only, so other sources need their own plan.
  • Test: run trial imports into a non-production instance and check work package counts, relations, users and groups by sampling real projects with the teams who use them.
  • Operating burden: items the importer does not carry, such as workflows and permissions in the current beta, remain manual work that your team or a partner must finish and verify.
  • Ask: what the source system exports and through which API, and which configuration must be rebuilt by hand.

What you need to provide

Most customization delays come from missing inputs, not from the build itself. Before work starts, we need a named product owner who can make decisions about the data model: which custom fields exist, which work package types a team uses, and which statuses and transitions match how work actually moves. Without one person empowered to sign off, each open question waits for a meeting, and the schedule slips. The quote assumes this role is filled by the client and is not shared across several part-time stakeholders.

We also need admin access to a non-production OpenProject instance where changes are built and tested, plus the current process documentation or the tool the work is moving from. For workflows, that means the existing status path and who moves items between states. For reporting, it means sample projects and the reports people request today, with real structure but no sensitive content. Each missing sample adds discovery time, and each unclear rule tends to become rework after UAT. Ask for these in writing at scoping, and confirm which parts of your process are informal.

Integration endpoints and test credentials are the next dependency. Any API integration needs endpoints, scoped test credentials and a named contact who can change the other system when a test fails. Credentials should be limited to the test scope, not production. The edition decision also drives scope: Community includes the core work package, board and reporting features, while custom branding and single sign-on sit in the Enterprise plans. Confirm the edition and, for Enterprise on-premises, the per-user plan and user count, since pricing is set per named user with minimums. Finally, name the approvers for workflow and permission changes, because access rules are the most sensitive changes and need a formal sign-off path.

Frequently asked questions

How much does OpenProject customization cost in general terms?

Cost depends on the scope agreed in writing, and DeployOpen does not publish prices. Effort rises with the number of custom fields, work package types, workflows and project templates, plus any API integrations, branding and identity work. Licensing is a separate recurring cost. The OpenProject pricing page lists Enterprise on-premises plans per named user per month: Basic at 5.95 euros, Professional at 10.95 euros (25-user minimum) and Premium at 15.95 euros (100-user minimum), with Corporate on request for 250 or more users. Ask any quote to separate one-time work from recurring licenses and support.

How long does an OpenProject customization project take?

The timeline depends on scope, so no single duration fits every project. A small set of custom fields and one project template is far simpler to plan than workflows for several work package types, API integrations and branding across multiple teams. Most DeployOpen engagements are fixed-scope, meaning phases, deliverables and timelines are agreed in writing before work starts. Ask each provider which items are included, how testing and sign-off are counted, and which steps depend on your reviewers or identity team.

Can our in-house admin customize OpenProject without outside help?

Often partly, depending on the admin's experience and the change. Common settings such as custom fields, work package types, statuses and project templates are generally managed in the administration area, while workflow design, API integrations and identity work need engineering skill. Branding and single sign-on also require an Enterprise plan. Confirm for your release which settings the admin interface supports and which need the API or code, and test each change in a non-production instance before applying it to production.

Which OpenProject features need an Enterprise plan?

The OpenProject pricing page lists single sign-on through SAML, OIDC, CAS, Kerberos and Okta, LDAP group synchronization and custom branding as Enterprise features. Confirm each feature's edition on the pricing page for your version before scoping, because feature lists change between releases. The Nextcloud integration page also describes OpenID Connect single sign-on as an Enterprise add-on. Work packages, Gantt charts, agile boards, time tracking and dashboards are included in the free Community edition.

What must our team provide before an OpenProject customization starts?

Your team typically supplies named process owners, written requirements for each work package type, workflow and template, and sample projects that reflect real data. You also need a test instance, administrator accounts, network access to the environment and, for single sign-on, access to your identity provider. Branding assets and reviewers with time booked for sign-off are needed as well. Ask the quote to list each client-side dependency with an owner and a date, so delays in your own team are visible early.

How do OpenProject customizations hold up during version upgrades?

Each upgrade needs a check of your customizations, because no one can promise that every change carries over unchanged. OpenProject ships minor releases often, including 17.7.0 on August 5, 2026, 17.8.0 on September 2, 2026 and 17.9.0 on September 30, 2026. Review the release notes for each version, retest custom fields, workflows, templates and API integrations in staging, and confirm with your provider how upgrade testing and rollback are scoped. Record which customizations rely on the API, since those are most exposed to endpoint changes.

How DeployOpen works on this

DeployOpen plans, builds, tests, documents and supports OpenProject customizations inside your own infrastructure, so custom fields, types, workflows, templates and API integrations stay under your control. Engagements are fixed-scope, with the work agreed in writing before it starts.

How we scope

  • The written scope lists each custom field, work package type, workflow, project template and branding change to be delivered.
  • Each customization is checked against the edition in use, since some features such as custom branding require an Enterprise plan.
  • Integrations with Nextcloud, identity providers or other APIs are named with their data flows, owners and access rights before build.

How we build

  • Customizations are built and tested in a non-production instance that mirrors your OpenProject version and installation method.
  • Workflow and permission changes are reviewed against each role, project and group your teams use before they reach production.
  • API integrations are developed against documented endpoints, with error handling, credentials stored outside code and test data only.

How we hand over

  • Deliverables include configuration records, change notes, the API integration code and an updated runbook for your administrators.
  • Your team walks through each customization with test cases so acceptance is recorded against the written scope.
  • Changes are deployed with a rollback path, and the handover states what your administrators maintain after go-live.

How we support

  • Ongoing support, upgrades and testing after handover are available as a retainer, scoped separately from the build.
  • Customizations are retested when OpenProject releases a new version, so upgrades do not silently break fields, workflows or integrations.
  • Confirm with DeployOpen which support tier and response terms apply to your environment before signing the written scope.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.