---
title: Get started developing CMS (SaaS)
slug: cms-saas/docs/get-started-saas
docTags: 
createdAt: 2026-07-30T20:18:08.000Z
---

Your Optimizely Content Management System (SaaS) instances start empty, letting you build your content architecture and presentation layer from the beginning. You can configure and customize content types, properties, and your website structure.

## Login

Opti ID provides multiple options for managing user identity and permissions so that you can choose the best fit for your organization.

1. Configure Opti ID so that your technical contact can invite and configure permissions for CMS (SaaS) users. See [Get started with Opti ID](docId\:HxcX2MfDtD6HsiYOAeV4V).
2. Review the [Opti ID system roles for CMS (SaaS)](docId\:kwj5GClJJTxjDSdDQSd-o). If you want to personalize permission levels, create [custom roles](docId\:oAarEbQsc4UvPA6OYU3yi).
3. Create [groups ](docId\:WAK--fqnE1yE8NKjckoq7)in Opti ID to simplify the process of giving multiple users the same level of access.
4. Invite [users](docId\:afJzJCmm5TkQ4CDpUlXQh) and assign them roles or groups so that they have the appropriate access to each CMS instance.

## Plan

Before you create content, administrators and developers need to decide how they plan to use CMS (SaaS).

1. **Create a CMS (SaaS) architecture design** – Plan the configuration of your CMS (SaaS) instance to meet your organization's content management needs. Determine
   - the types of content you manage, such as articles, blog posts, products, and so on.
   - your target audiences.
   - your delivery platforms.
   - how your architecture scales.
   - how you plan for data security updates.
2. **Review your instances** – Decide how to divide up your production and non-production environments. CMS (SaaS) includes three instances out of the box. Use these instances to separate your production and non-production data. You can choose how to use your instances. See [Configure environments](docId\:ZiVgV6juCzT5OTj3aD4RW).
3. **Create a content model** – Consider [how you want to construct your content](docId\:DxD5knGJxoI1rg9rI8rBb) in CMS (SaaS). Because content can be used with any front end, it is important to architect your content in a platform-agnostic way. Identify the [content types](docId\:IIrc48HRxDZe6C7wiVBVT) needed, including their fields and properties. The content type is the foundation for creating one or many experiences, pages, or block instances. The content type and properties must be mapped to the corresponding rendering to display content to visitors.
4. **Review CMS (SaaS) user interface documentation** – Read the documentation in the [Content managers section](docId\:HUBBeDq79qozFDiK7uz91) to learn how the [content types](docId\:IIrc48HRxDZe6C7wiVBVT), [content](docId\:vCCDhoONeWRu8hmgNjvzQ), and [styles](docId:0o9L75GP0gCgPCxNO1CvS) you define are reflected in the CMS (SaaS) UI.
5. **Select a front-end stack** – Choose the technologies and tools for the user interface and client-side functionality. You can [Host a front end with Optimizely](docId\:ia54k3ymvD-apbnrYuRbG). Optimizely also partnered with [Vercel](https://github.com/episerver/cms-saas-vercel-demo) and [Netlify](https://github.com/episerver/cms-saas-netlify-demo), which offer services for hosting the front end of your application.
6. **Configure a repository** – Select a version control system to track changes to your code.

## Build

To create applications, developers and content managers define and create content.

1. **Define content** – Developers define the structure of the content based on the content model created during the **Plan** stage using [Content types](docId\:IIrc48HRxDZe6C7wiVBVT). For each content type, specify the fields or attributes. Then, define properties for each field and establish relationships between different content types.
2. **Create content** – Content managers use the defined content types to create and manage content. They can add content through the Visual Builder or API calls.
   - **(Optional) Import data from CMS** – If you have an existing CMS instance, you can easily import your data. See [Export and import data](docId:88_wcqSZvQSzI3Hks3WvL).
3. **Configure styles** – Design the visual aspects of your experiences. Ensure that you present your content consistently and elegantly across various platforms. Developers can define the styles, and then users can select them. See [Display templates (style)](docId:0o9L75GP0gCgPCxNO1CvS) and [Select styles](docId\:BvwirGlmyuK-_HgUNw93b).
4. **Configure languages** – CMS (SaaS) can deliver content in multiple languages, so you must configure the language options and localization settings for your CMS (SaaS) instance. See [Languages](docId\:Py2PIByC7C-2yg37wQtml).

## Render

After you create content, you can use [Optimizely Graph](docId\:vqMNNZI4UdaGjvgH4HdvC) to render it to your website, application, or another channel. Optimizely Graph uses GraphQL to provide powerful search and filtering capabilities.

1. **Develop front-end features** – Create the user interface elements and interactive features for the content's presentation. Determine the components needed for your application, such as navigation bars, buttons, forms, modals, and so on.
2. **Enable full preview** – Let [Visual Builder](docId\:kaO3FrhgyVLRoxl2PxYtR) automatically update so you can see changes to your app in real-time before they are published. See [Enable live preview](docId\:vqMNNZI4UdaGjvgH4HdvC).
3. **Configure host names** – Host names are part of the application configuration. They ensure that the preview of your apps works correctly and that your links resolve accurately in Optimizely Graph. See [Configure an application](docId\:G-wYGcUEywJHLEE36r-22) section of the Applications documentation.
4. Deploy your application.

## Integrate (optional)

**Integrate with Optimizely Data Platform and Optimizely Web Experimentation** – Connect your CMS (SaaS) front-end application with Optimizely tools for data analytics and A/B testing. See the [Next.js Optimizely One toolkit GitHub repository](https://docs.developers.optimizely.com/content-management-system/v1.0.0-CMS-SaaS/docs/integrate) for react components (both client and server) to integrate Optimizely Web Experimentation and Optimizely Data Platform.
