EspoCRM vs Twenty

EspoCRM suits teams that run PHP and MySQL or MariaDB and can budget for paid extensions. Twenty suits teams that run TypeScript on PostgreSQL and Redis and need a faster release pace. Both self-host for free.

On this page

Choose EspoCRM or Twenty based on your stack, your SSO requirement and your tolerance for release pace

Choose EspoCRM when your team already runs PHP and a relational database and wants a mature, slower-moving CRM. EspoCRM is licensed under AGPL-3.0 and its free core can be self-hosted at no license cost. The server configuration docs list PHP 8.3 to 8.5 with MySQL 8.0 or newer, MariaDB 10.6 or newer, or PostgreSQL 15, so an existing LAMP or LEMP team can often run it with skills it already has. OpenID Connect sign-in and LDAP, including Active Directory and OpenLDAP, are part of the open-source edition, which matters if SSO must work without buying a tier. Reports, workflows and business process management sit in the paid Advanced Pack, and quotes, invoices and inventory sit in the Sales Pack, so budget for those extensions if you need them. Confirm the current extension licensing terms with EspoCRM before you commit, because the pricing page describes cloud plans that include the Advanced Pack.

Choose Twenty when your team is comfortable with TypeScript, PostgreSQL and Redis and can absorb frequent change. Twenty's backend uses NestJS with BullMQ, PostgreSQL and Redis, and its Docker Compose guide runs a server, a worker, PostgreSQL and Redis with at least 2 GB of RAM. Its releases come quickly; v2.48.0 followed v2.47.0 by one day in October 2026, so you need a routine for testing and applying upgrades. Its open-source core can be self-hosted for free, but SSO, row-level permissions and audit logs are listed on the Organization and Enterprise plans, and SCIM provisioning and IP allow-listing on Enterprise. If you need SSO on a self-hosted instance, price the Organization plan into the decision and ask Twenty to confirm how that licensing applies to your deployment.

The decision turns on four questions: which stack your operators already support, whether SSO must work without a paid tier, how much reporting and workflow you need out of the box, and how fast your team can test and absorb platform changes. Check the first two with a short proof of concept: stand up each candidate, connect your identity provider, and confirm that sign-in, group mapping and logout behave as your policy requires. For the last two, compare the release notes against your change calendar and ask who will own upgrades and backups after go-live.

Which CRM fits which scenario: a PHP shop or a TypeScript shop

This table maps common team situations to the platform that fits better and the condition under which the other one would win. Read each row against your own team's skills, sign-in requirements and budget for paid features before you shortlist.

ScenarioBetter fitReason and condition for the other platform
Team of PHP or LAMP administratorsEspoCRMEspoCRM runs on PHP with MySQL, MariaDB or PostgreSQL, which matches existing skills. Twenty would win if the team is willing to operate Node, PostgreSQL and Redis.
Team with Node or TypeScript engineers and PostgreSQL experienceTwentyTwenty uses NestJS, React, PostgreSQL and Redis, so engineers can extend it in familiar tooling. EspoCRM wins if nobody will maintain a TypeScript codebase or the PHP stack is already standard.
OIDC sign-in on the free self-hosted coreEspoCRMEspoCRM documents OpenID Connect sign-in in its core docs, with optional first-login user creation and group-to-team mapping. Twenty lists SSO on its Organization and Enterprise plans, so Twenty wins only if a paid plan is acceptable.
Reports and workflows without extra license costEspoCRMReports, workflows and BPM come from the Advanced Pack, which is included in all EspoCRM Cloud plans. Self-hosting still requires the Advanced Pack license, so confirm its terms. Twenty wins if you do not need reports or BPM beyond its built-in workflow automation.
Row-level permissionsTwentyTwenty lists row-level permissions on its Organization and Enterprise plans. Confirm whether EspoCRM's role model meets your record-visibility rules before choosing it, since this need may tip the choice to a paid Twenty plan.
Custom-object data model defined as codeTwentyTwenty supports custom objects and fields defined as code in its repository. EspoCRM customizes entities through its Entity Manager, which suits admin-driven changes, so choose Twenty if version-controlled schema is a requirement.
Stable major releases with a long PHP extension ecosystemEspoCRMEspoCRM's current line is 10.0 and it offers official extensions such as VoIP, Google and Outlook integrations. Twenty ships frequent releases, which suits teams that accept faster change.

How EspoCRM and Twenty are built and what that means for operations

EspoCRM and Twenty take different routes to a self-hosted CRM, and each route puts different work on the team that runs it. The cards below cover the application stack, the install path, the Twenty service layout and its API surface, and what each choice means for patching, tuning and on-call skills.

EspoCRM's PHP stack and cron

EspoCRM runs as a PHP application on Apache, Nginx or IIS, with MySQL, MariaDB or PostgreSQL 15 as the database. Background jobs depend on cron or a scheduled task, so someone must confirm that the schedule is set up and monitored after every install. Your on-call rota needs PHP, web server and database skills, and an operator who can read PHP error logs. Ask the vendor to confirm which combinations they test before you commit to one.

EspoCRM's install script and command.sh

The installation script for Ubuntu, Debian and Linux Mint deploys a Docker-based stack with Nginx and MariaDB, optional Let's Encrypt certificates and a command.sh utility for backups, restores and upgrades. This shortens the first deployment but ties your layout to the script's assumptions. Check whether your team will own the Docker host, the Nginx configuration and the upgrade runbook, and whether the script fits your hardening standard before you adopt it as the production path.

Twenty's server, worker and queues

Twenty's Docker Compose guide runs a server, a worker, PostgreSQL and Redis, and asks for at least 2 GB of RAM because insufficient memory can crash processes. The worker and the BullMQ queues on Redis carry background work, so someone must watch queue backlog and memory pressure, not only web uptime. Your on-call rota needs container, PostgreSQL and Redis skills. Confirm how the vendor expects you to size these services as your user count grows.

Twenty's GraphQL and REST APIs

Twenty exposes both GraphQL and REST APIs, and its pricing page lists them on every plan. Integrations, webhooks and custom front ends can therefore target either interface, which widens the surface your team must version and secure. Decide which API style your integrations will use, and whether your identity and access controls cover API tokens as well as user sign-in. EspoCRM's REST API uses API keys, HMAC or basic authentication through dedicated API users, so compare the credential models directly.

Who patches each stack

EspoCRM's core is a PHP application you upgrade through its documented procedure, and its paid extensions have their own update path. Twenty ships frequent releases, with v2.48.0 released on October 16, 2026, so a self-hosted team must pick a cadence and test each release in staging. Ask both vendors what they patch for you under any support contract, and what remains with your team, including the operating system, database and container images.

How EspoCRM and Twenty compare on the features that decide the shortlist

This table sets EspoCRM and Twenty side by side on the capabilities that usually decide a CRM shortlist, with the plan or pack named wherever a feature is gated. Read each row against your own requirements, and confirm any cell marked for vendor confirmation before you rely on it in a decision.

CapabilityEspoCRMTwenty
LicenseAGPL-3.0Mostly AGPL-3.0 with an additional application exception; Enterprise-header files are commercial
Free self-hosted coreOpen-source edition downloads and self-hosts for freeOpen-source core can be self-hosted for free
Editions and paid tiersPaid extensions on the free core; EspoCRM Cloud Basic, Enterprise and Ultimate plansPro, Organization and Enterprise plans on Twenty pricing page
Reports and workflowsAdvanced Pack adds reports, BPM and workflowsWorkflow automation listed in the open-source repository; confirm plan gating with Twenty
Custom objects and fieldsConfigured through the Entity ManagerCustom objects and fields defined as code; unlimited on all plans per pricing page
Scripting and automationFormula Script in before-save scripts, workflows and BPMConfirm scripting options with Twenty; workflow automation is listed
OIDC and SAMLOpenID Connect since 7.3; SAML not in supplied facts, confirm with EspoCRMSAML or OIDC SSO on Organization and Enterprise plans
LDAPLDAP and Active Directory authentication described in docsNot listed in supplied facts; confirm with Twenty
SCIM provisioningNot in supplied facts; confirm with EspoCRMEnterprise plan only
Row-level permissionsRole-based permissions; confirm row-level scope with EspoCRMOrganization and Enterprise plans
Audit logsConfirm with EspoCRMOrganization and Enterprise plans
API styles and authenticationREST with API key, HMAC and basic authentication via API usersGraphQL and REST APIs with webhooks on all plans
Release cadence10.0.0 on July 2, 2026; 10.0.10 on October 14, 2026Frequent releases; v2.48.0 on October 16, 2026
Supported databasesMySQL 8.0+, MariaDB 10.6+ or PostgreSQL 15PostgreSQL with Redis
Minimum hosting requirementsPHP 8.3 to 8.5 on Apache, Nginx or IIS with cron for background jobsServer, worker, PostgreSQL and Redis; at least 2 GB RAM

What is free and what is paid in EspoCRM and in Twenty

EspoCRM is licensed under AGPL-3.0, and its open-source edition can be downloaded and self-hosted for free. The free core covers contacts, accounts, leads, opportunities and the entity customization that the Entity Manager provides, along with Formula Script, OpenID Connect and LDAP sign-in. The paid tier is a set of official extensions that sit on top of that core, and each one has a different job. The cost question is therefore less about the CRM itself and more about which extensions your processes need.

  • Advanced Pack: adds reports, Business Process Management and workflows. If your sales process depends on automated approvals, stage-based routing or scheduled reporting, this is the extension that matters most.
  • Sales Pack: adds products, quotes, invoices, purchases, subscriptions, inventory and payments. Teams that quote and invoice inside the CRM need this, while teams that send quotes from a separate finance system may not.
  • Other official extensions: VoIP, Google, Outlook, MailChimp, Zoom and Stripe integrations are available as separate add-ons, so each integration is a decision you make on its own.
  • Cloud plans: EspoCRM Cloud includes the Advanced Pack in all plans, so a cloud buyer does not add it separately, but self-hosters who want it must buy it.
  • Core is enough when: your needs are contact and pipeline tracking, simple automation through Formula Script, and sign-in through your identity provider.

Before you commit, confirm the license terms, the extension licensing model and whether each paid extension is licensed per instance, with the vendor's current terms in writing.

Where SSO sits in each CRM and what it costs to get it

EspoCRM ships OpenID Connect sign-in as part of the free AGPL-3.0 core, since version 7.3. The OIDC configuration can create a user on first login, map identity provider groups to EspoCRM teams, handle backchannel logout and keep a fallback login method for break-glass access. EspoCRM also documents LDAP authentication for Active Directory and OpenLDAP, so an existing directory can serve as the source of accounts. Two limits matter for planning. EspoCRM's own two-factor authentication is not compatible with OIDC, so the identity provider must enforce MFA for every sign-in path. Confirm in a test tenant which fallback method you keep enabled, because that account will bypass the identity provider and needs its own MFA and monitoring.

Twenty places SSO in paid tiers, so the cost of an SSO requirement depends on which plan you need. Its pricing page lists SAML or OIDC SSO on the Organization plan at 19 US dollars per user per month, alongside row-level permissions and audit logs. SCIM provisioning, which automates account creation and removal from the identity provider, and IP allow-listing appear on Enterprise, which the page lists from 50,000 US dollars a year. Self-hosting the open-source core is free, but the plan that unlocks SSO is not, and a self-hosted deployment does not change that. Ask Twenty in writing which plan covers SSO for your self-hosted instance and whether SCIM is needed. For EspoCRM, the equivalent cost sits in your identity provider licensing and in the MFA setup you already run.

For integrations, use HMAC or API keys and avoid basic authentication. The EspoCRM REST API supports API key, HMAC and basic authentication through dedicated API users whose role-based permissions limit what each integration can reach. The documentation describes HMAC as the most secure option and basic authentication as not recommended, so create a separate API user for each integration and prefer HMAC where the client can sign requests. Twenty exposes REST and GraphQL APIs on every plan, and its authentication options should be confirmed against its current documentation before you design the integration. Either way, keep API users out of the SSO flow, document who owns each credential and review them on the same schedule as your user access reviews.

What drives the running cost of each CRM beyond the license

Both platforms are free to self-host under AGPL-3.0, so the real budget sits in infrastructure, staff skills, paid tiers, upgrades and support. The cards below separate one-time setup work from costs that recur every month or year, and list what to request in a written quote before you compare totals.

Infrastructure footprint

EspoCRM runs on PHP with MySQL, MariaDB or PostgreSQL 15, plus cron for background jobs. Twenty runs a server, a worker, PostgreSQL and Redis, and its Docker Compose guide asks for at least 2 GB of RAM because insufficient memory can crash processes. Price each host, the database, Redis for Twenty, backup storage and any staging copy, and ask whether your recovery target requires a second region. Recurring cloud charges usually dominate these lines.

Operator skills and hours

EspoCRM staffing centers on PHP, web server configuration and MySQL, MariaDB or PostgreSQL administration. Twenty staffing centers on Node-based services, Redis queues and PostgreSQL operations. If your team already runs one stack, the other adds a new skill set to hire, train or contract for. Ask any implementation partner to state the named roles, the hours per month for patching and the on-call coverage they assume.

Per-user fees on paid tiers

EspoCRM Cloud is priced at 15 US dollars per user per month on Basic (minimum 3 users), 25 on Enterprise (minimum 5) and 69 on Ultimate (minimum 10), per the EspoCRM pricing page, with the Advanced Pack included in all cloud plans. Twenty's pricing page lists Pro at 9 US dollars, Organization at 19 with SSO and audit logs, and Enterprise from 50,000 dollars a year. These fees recur and scale with headcount, so model them for your real seat count and minimums.

Upgrade and release effort

EspoCRM's current line is 10.0, with 10.0.10 released on October 14, 2026, and the previous major version 9.0.0 came out on January 20, 2025. Twenty ships frequent releases, including v2.48.0 on October 16, 2026, one day after v2.47.0. Faster cadence means more regression testing per year, whichever platform you choose. Budget a fixed test window for each release and confirm which upgrades your partner covers under a retainer or a fixed-scope project.

Paid extensions and support

On EspoCRM, reports, BPM and workflows sit in the Advanced Pack, and quotes, invoices and inventory sit in the Sales Pack, so the free core may not cover your process. On Twenty, SSO, row-level permissions and audit logs sit in the paid plans. Ask whether extension licenses are per instance and time-limited, whether renewals are priced separately, and which support hours and response targets are written into the contract.

How to move a CRM from one platform to the other without losing history

This sequence moves accounts, contacts, activities and files from EspoCRM to Twenty, or the reverse, with a tested cutover and a documented record of what was rebuilt rather than carried over.

  1. Freeze the data model and sign off the scope

    Before any export, the business owner and the CRM administrator list every entity, custom field, layout, relationship and workflow in the source system, then mark each one as keep, rebuild or retire. Ask the team to stop schema changes in the source for the duration of the migration, since a field added mid-project will be missed. The step is done when the inventory is signed by the business owner and each item has a named owner on the target side.

  2. Export records, relationships and attachments

    Pull accounts, contacts, leads, opportunities, activities and notes through the source system's API or export tooling, keeping record IDs so that relationships can be reconstructed. Export attachments separately with their parent record references, because file storage paths rarely map one to one. EspoCRM's import documentation describes how data enters the system, which helps when you test the reverse direction. The step closes with row counts per entity that match the source and a sample of exported files that open correctly.

  3. Map entities, fields, users and teams

    Build a mapping sheet that pairs each source entity and field with its target equivalent, including data types, picklist values and required flags. EspoCRM organizes access through teams and role-based permissions, while Twenty uses role-based permissions and row-level permissions on its higher plans, so map each source access rule to a target role and record the places where no direct equivalent exists. Confirm the target plan's permission features before you commit, because some controls depend on the edition you buy. The step is complete when every field has a target or an explicit decision to drop it.

  4. Rebuild workflows, scripts and reports

    Recreate automation on the target side rather than expecting it to move. EspoCRM uses Formula Script in before-save scripts, workflows and business process management, and some of that logic will need to be rewritten as Twenty workflow automation or as code-defined objects and fields. Reports and dashboards are almost always rebuilt by hand, so list each one with its audience and confirm it still answers the question it was built for. The step closes when each rebuilt item has a test case with an expected output, recorded in the mapping sheet.

  5. Reconnect identity and integrations

    Configure sign-in on the target first, then move users over with their groups and roles. If you rely on OpenID Connect in EspoCRM, check how the target's SSO is licensed on the plan you choose, since Twenty lists SSO on its Organization and Enterprise plans, and confirm that group mappings translate. Rebuild each integration, such as email, telephony or marketing sync, and check its credentials and webhooks against the new endpoints. The step is done when a test user from each team can sign in, see only the records they should see, and trigger each integration once.

  6. Run a parallel test with a sample of records

    Load a representative sample of accounts, including records with long activity histories, attachments and several owners, into a staging instance of the target. Compare each sample record field by field against the source, and have account owners confirm that timelines, notes and open opportunities read correctly. Record each discrepancy, fix the mapping, and repeat the load until the sample comes back clean. The step produces a signed test log that shows which records matched, which were corrected and which were accepted as known losses.

  7. Cut over to the new platform

    Schedule a freeze window in which users stop editing the source, then run a final incremental export and load into production. Repeat the reconciliation checks from the test on the full data set, and switch sign-in and integrations to the target only after those checks pass. Keep the source in read-only mode so users can look up history during the first working period. The cutover is complete when the reconciliation report is signed and the source has no active write paths.

  8. Retire the old instance under a retention plan

    Keep a full, verified backup of the source database and file storage, and record where it is held, who can restore it and how long it must be retained under your own records policy. Revoke application access, remove scheduled jobs and integration credentials, and then decommission the hosts. The step is done when the retention record names the backup location and owner, and the team confirms that no service still points at the old instance.

What implementing each platform involves and where projects usually run long

An EspoCRM build starts with the server stack. The EspoCRM server configuration docs list PHP 8.3 to 8.5, MySQL 8.0 or newer, MariaDB 10.6 or newer or PostgreSQL 15, on Apache, Nginx or IIS, and cron or a scheduled task must run for background jobs. Your team chooses between the installation script, which deploys a Docker-based stack with Nginx and MariaDB and a command.sh utility for backups, restores and upgrades, and a manual install on your own web server and database. Confirm which your operations team will support before the build begins. Entity customization, Formula Script before-save logic and any workflow or BPM rules should be written down as a specification, since reports, workflows and BPM sit in the paid Advanced Pack. OIDC setup needs an identity provider owner in the room, because group-to-team mapping and first-login user creation decide who can see which records.

A Twenty build starts with the Docker Compose stack of a server, a worker, PostgreSQL and Redis, with at least 2 GB of RAM according to the Twenty self-hosting guide. Size memory above that floor for your user count and test it under load, because the guide notes that insufficient memory can crash processes. Custom objects and fields are defined as code, so the data model belongs in version control and needs a developer who can review it. SSO is not part of the free core: the pricing page places SAML or OIDC SSO, row-level permissions and audit logs on the Organization plan, and SCIM provisioning on Enterprise, so budget for the plan before you design the identity flow. Releases arrive often (v2.48.0 followed v2.47.0 by one day), so assign someone to track the release feed and test upgrades on a copy.

Projects run long in the same four places on both platforms. Data migration from spreadsheets or a legacy CRM takes longer than planned, because duplicate contacts, account hierarchies and owner assignments must be cleaned first. Permission models are the second risk: EspoCRM's team and role model and Twenty's row-level permissions both need sign-off from sales, service and finance before configuration. Identity integration stalls when the identity provider team, not the CRM team, owns the group data. Upgrade testing is the last and most often skipped step. Ask your partner for a written scope covering migration rules, permission matrix, identity configuration, and a staging environment with a repeatable upgrade test. Your team must supply a named business owner, sample data, the identity provider contact and a hosting environment with backup and monitoring in place.

Questions buyers ask before choosing between EspoCRM and Twenty

Can I self-host both EspoCRM and Twenty for free?

Yes, both cores can be self-hosted at no license cost. EspoCRM is licensed under AGPL-3.0 and its pricing page says the open-source edition can be downloaded and self-hosted for free. Twenty's pricing page says its open-source core can be self-hosted for free. The free part is the software only. You still pay for the servers, storage, backups, the people who run the stack, and any paid extensions or plan features you add. Check the license terms for any modifications you plan to distribute, and ask your counsel to confirm how the AGPL-3.0 applies to your deployment.

What does the paid part of EspoCRM and Twenty cost, and what drives it up?

The paid part differs by vendor. EspoCRM sells paid extensions on top of the free core, such as the Advanced Pack for reports, business process management and workflows, and the Sales Pack for products, quotes and invoices. On EspoCRM Cloud, the pricing page lists 15 US dollars per user per month on the Basic plan (minimum 3 users), with the Advanced Pack included in all cloud plans. Twenty's pricing page lists Pro at 9 US dollars per user per month, Organization at 19 dollars per user per month, and Enterprise from 50,000 dollars a year. Cost rises with user count, the number of extensions or plan tiers you need, and whether you need SSO, audit logs or row-level permissions, which sit on higher Twenty plans. Ask for a written quote that lists each plan, user count, extension and the billing term.

Can a PHP team run Twenty, or a Node team run EspoCRM?

A PHP team can run EspoCRM with little change, because EspoCRM supports PHP 8.3 to 8.5 on Apache, Nginx or IIS with MySQL, MariaDB or PostgreSQL 15. Twenty is a different stack: its backend uses NestJS with BullMQ, PostgreSQL and Redis, and its frontend uses React. Its Docker Compose guide runs a server, a worker, PostgreSQL and Redis, and asks for at least 2 GB of RAM. A PHP team would need to learn PostgreSQL operations, Redis, and Node-based service monitoring. A Node team running EspoCRM would need PHP runtime and web server skills and cron or scheduled tasks for background jobs. Assess your team's existing database and runtime skills before deciding.

How much does SSO cost in EspoCRM compared with Twenty?

In EspoCRM, OpenID Connect sign-in is available in the open-source edition since version 7.3, with options for user creation on first login, mapping identity provider groups to teams, and backchannel logout. EspoCRM also documents LDAP authentication for Active Directory and OpenLDAP. EspoCRM's own two-factor authentication is not compatible with OIDC, so plan your MFA at the identity provider. In Twenty, SAML or OIDC SSO is listed on the Organization plan at 19 dollars per user per month, and SCIM provisioning sits on the Enterprise plan. Your SSO cost in Twenty therefore depends on the plan tier, while EspoCRM's cost depends on your identity infrastructure. Confirm the exact feature set with each vendor before you commit.

How much does the release pace of each product affect upgrade work?

Release pace changes how often you must test and apply upgrades, not whether you can run the product. EspoCRM's current line is 10.0, with 10.0.0 released on July 2, 2026 and 10.0.10 on October 14, 2026, following 9.0.0 on January 20, 2025. Twenty ships frequent releases, with v2.48.0 released on October 16, 2026, one day after v2.47.0. A faster cadence means more frequent upgrade windows, more regression testing of your custom objects and workflows, and more planning for database migrations. Ask each vendor for its upgrade and deprecation policy, and build a test environment that mirrors production before any upgrade.

What does the work need from our client team?

The client team owns the infrastructure, identity and data, and must be available for decisions throughout the project. Expect to supply a host or cloud account, database administration, a mail relay, an identity provider with administrative access, and named owners for business process sign-off. For EspoCRM, the team needs PHP, web server and database operations skills, plus a plan for scheduled jobs. For Twenty, add PostgreSQL, Redis and container operations. Both products need backup and restore testing that the team can perform or direct. Clarify in the written scope which of these tasks sit with your staff and which sit with the implementation partner.

Can our in-house team do the implementation without an outside partner?

A team with platform, identity and database skills can often do a simple EspoCRM or Twenty rollout alone, but the choice depends on the scope of customization, integrations and compliance evidence. EspoCRM's installation script deploys a Docker-based stack with Nginx and MariaDB and includes a command.sh utility for backups, restores and upgrades, which reduces setup work for small deployments. Twenty's self-hosting guide is a Docker Compose stack with PostgreSQL and Redis. Custom objects, workflows, SSO and hardening take most of the effort. DeployOpen plans, implements, customizes, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms in your own infrastructure, typically under a fixed-scope written agreement. Ask any partner for a written scope and quote before work begins.

How DeployOpen helps teams choose, implement or migrate between these CRMs

DeployOpen plans, implements, customizes, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside the client's own infrastructure. For EspoCRM vs Twenty, that means starting from your team's stack, identity setup and extension needs, then agreeing a written scope before any work begins.

How we scope

  • Confirm whether your team can run PHP with MariaDB or MySQL, or needs Node and PostgreSQL with Redis.
  • Map which SSO, audit and permission features your plan needs and whether they require paid extensions or paid tiers.
  • Agree a fixed scope in writing covering deliverables, timelines and the hosting environment before work starts.

How we build

  • Install and configure the chosen CRM in your cloud account, data center or air-gapped network.
  • Connect identity through OIDC, LDAP or SAML where the chosen platform supports it, and test sign-in and logout.
  • Build entity, workflow and permission customizations, and test them against your own roles and data.

How we hand over

  • Document the deployment, configuration keys, backup and restore steps, and the upgrade procedure for your staff.
  • Walk your administrators through permission models, API authentication choices and extension licensing.
  • Provide evidence of configuration and controls that your internal or external auditors can review.

How we support

  • Offer ongoing support, upgrades and continuous testing as a retainer after handover.
  • Plan upgrades against each platform's release cadence, so your team is not surprised by breaking changes.
  • Re-test identity and permission settings after each upgrade or change to the hosting stack.

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.