# Switching to Community or Enterprise

> Learn how to upgrade or downgrade KrakenD from Enterprise Edition (EE) to Community Edition (CE) to keep your existing installation working correctly.

Source: https://www.krakend.io/docs/faq/switch-versions/

If you are considering upgrading to KrakenD Enterprise or downgrading to KrakenD Community, these are the things you should have in mind.

## Downgrade to Community

If you are a KrakenD Enterprise Edition user and you want to switch to the Community Edition, these are the guidelines you should follow to keep your installation working.

- Obtain the [Community Edition](https://www.krakend.io/download/) and replace it by the Enterprise one
- Make the configuration migration as described below
- Start the server with the modified (if necessary) configuration

### Configuration migration

You can run a configuration file designed for the KrakenD Enterprise in a Community Edition straight away, except if you have one of the following options that you should remove and will make your server panic during startup:

- [Dynamic routing](https://www.krakend.io/docs/enterprise/endpoints/dynamic-routing/).
- [Endpoint with wildcards](https://www.krakend.io/docs/enterprise/endpoints/wildcard/) (`/*`)

If you have any of the components above, remove them from the configuration.

The other [Enterprise-only features](https://www.krakend.io/features/) are ignored and not loaded into the server, so whatever you leave or remove them from the configuration makes no difference to the server. Still, you should delete them to avoid confusion when reviewing the configuration later, as none of these actually work.

Enterprise features are disabled

The Community Edition **ignores unrecognized features from the Enterprise Edition** and does not load any of its behavior. If you used critical components like [Security Policies](https://www.krakend.io/docs/enterprise/security-policies/), [API Keys](https://www.krakend.io/docs/enterprise/authentication/api-keys/), [OpenAPI](https://www.krakend.io/docs/enterprise/endpoints/openapi/), [WebSockets](https://www.krakend.io/docs/enterprise/websockets/), [gRPC](https://www.krakend.io/docs/enterprise/backends/grpc/#how-grpc-works), etc. you must know all these are gone even if they are in the configuration, and that you are substantially changing how the API used to operate.

## Upgrade to Enterprise

To upgrade a Community configuration to an Enterprise one, **no configuration changes are needed**. The only steps required are:

- Obtain [KrakenD Enterprise](https://www.krakend.io/docs/enterprise/overview/installing/)
- Add the [`LICENSE` file](https://www.krakend.io/docs/enterprise/overview/license-file/) to your project
- Start the new server

If you use the same version, everything you configured on the Community Edition works in the Enterprise Edition.
