Installing TYPO3: Complete Installation Guide (2026)

TYPO3 should usually be installed with Composer today, especially for production websites. It is the recommended method for modern TYPO3 projects because it gives you cleaner dependency management, easier updates, and a more structured setup process.

Installing TYPO3: Complete Installation Guide (2026)

For local development, the best approach is DDEV with Composer. It helps you create a development environment that is closer to production, makes collaboration easier, and reduces setup issues when testing changes or preparing deployments.

If you are working on shared hosting or do not have SSH and Composer access, the classic source package method is still a practical option. In this guide, you will learn how to prepare your environment, choose the right installation method, configure the database, and access the TYPO3 backend for the first time.

Quick Answer: Best Way to Install TYPO3 in 2026

Here is the best option for each setup.

Best method for production

Use Composer.

  • best for live websites
  • easier updates
  • better long term setup

Best method for local development

Use DDEV with Composer.

  • best for local testing
  • close to production setup
  • good for team work

Best method for shared hosting

Use the classic source package.

  • works without SSH
  • upload with FTP
  • useful for limited hosting

Do you need a Composer?

No, but it is the best choice for production.

  • use Composer if possible
  • use classic install only if needed

Choose Your TYPO3 Installation Method

TYPO3 offers different install methods based on your setup.

Option 1: Composer installation

This is the main method for production.

  • needs SSH
  • easier updates
  • better maintenance

Option 2: DDEV + Composer for local development

This is the best method for local work.

  • good for development
  • stable local setup
  • useful for testing

Option 3: Classic installation without Composer

This method works for shared hosting.

  • no Composer needed
  • no SSH needed
  • manual setup

Mini comparison table

This table shows the main difference.

Method

Best for

Access

Composer

Production

SSH

DDEV + Composer

Local development

Local machine

Classic install

Shared hosting

FTP or panel

Choose the Right TYPO3 Version Before You Install

Selecting the Ideal TYPO3 Version for Installation

Before you install TYPO3, choose the right version for your project. For most new websites, the latest LTS version is the best choice. Also, always check official compatibility before install.

LTS

LTS is the best option for most projects.

  • long term security support
  • stable for production
  • easier to maintain

ELTS

ELTS is useful for older TYPO3 websites that cannot upgrade yet.

  • paid extended support
  • useful for old enterprise setups
  • not for new projects

Sprint Releases

Sprint releases are not meant for most live websites.

  • short support period
  • focused on new features
  • better for testing

PHP Compatibility

Each TYPO3 version supports only specific PHP versions.

  • check official TYPO3 requirements before install
  • make sure your PHP version matches
  • wrong PHP version can break TYPO3 and extensions

Recommendation

Keep the decision simple.

  • use the latest LTS for new projects
  • use ELTS only if upgrade is not possible
  • avoid sprint releases for production

If you are using an older TYPO3 version, review upgrade needs before installing or migrating.

What You Need Before Installing TYPO3

Before you install TYPO3, make sure your server and access setup are ready. This helps avoid errors during setup.

Server requirements

TYPO3 needs the right PHP version, database, and server setup.

PHP

Use a PHP version supported by your TYPO3 version.

  • check official TYPO3 requirements first
  • TYPO3 v13 needs PHP 8.2+
  • common extensions include:
    • curl
    • fileinfo
    • mbstring
    • openssl
    • intl
    • pdo
    • json

Database

TYPO3 supports these database systems.

  • MySQL 8.0+
  • MariaDB 10.4+
  • PostgreSQL 10+
  • SQLite for development only

Use utf8mb4 if possible.

Web server

TYPO3 works with common web servers.

  • Apache
  • NGINX
  • IIS
  • Caddy

The document root should point to /public.

Composer

Composer is needed for modern TYPO3 installs.

  • use Composer 2.x
  • recommended for production

Access requirements

You also need the right access before you start.

  • SSH access for Composer and CLI
  • FTP or SFTP for classic install
  • hosting panel for database setup and document root
  • web browser for install tool and backend

Pre-install checklist

Use this checklist before starting.

  • TYPO3 version selected
  • supported PHP version ready
  • required PHP extensions enabled
  • database created
  • document root set to /public
  • Composer available if needed
  • SSH or FTP access ready
  • browser access confirmed

Pre-Installation Checks That Prevent Most TYPO3 Errors

Before you start, check a few basics. These small checks can prevent common setup problems.

Confirm /public docroot control

TYPO3 should run from the /public folder.

  • make sure you can set the document root
  • do not point the domain to the project root

Confirm writable paths

TYPO3 needs write access to some folders.

  • check var/
  • check config/
  • check public/fileadmin/

Confirm supported PHP extensions

TYPO3 needs required PHP extensions to run properly.

  • confirm the needed extensions are enabled
  • check the official requirements for your TYPO3 version

Confirm database credentials are ready

Keep your database details ready before setup.

  • database name
  • username
  • password
  • host

Confirm empty target directory for Composer install

For Composer install, start in the right place.

  • use an empty target directory
  • avoid mixing TYPO3 with old files

TYPO3 Installation Methods Explained

Overview of TYPO3 Installation Methods

TYPO3 can be installed in different ways. The right method depends on your hosting, access, and project type.

Composer installation

Composer is the best choice for most live TYPO3 websites.

  • best for production
  • good for long term projects
  • easier updates and maintenance

See the full steps in the Install TYPO3 with Composer section below.

Classic source package

This method is useful when Composer or SSH is not available.

  • best for shared hosting
  • uses manual file upload
  • updates are more manual

See the full steps in the TYPO3 Installation via Source Package section below.

Local development

Local installation is best for testing and development before launch.

  • best for local work
  • good for testing changes
  • safer before going live

See the full steps in the Installing TYPO3 Locally section below.

DDEV

DDEV is the recommended method for local TYPO3 development.

  • close to production setup
  • good for teamsFIRST_INSTALL vs ENABLE_INSTALL_TOOL
  • better for modern workflows

XAMPP

XAMPP can be used for simple local testing.

  • easy to start
  • okay for basic testing
  • not the best for bigger projects

Installation method overview

This table shows when to use each method.

Method

Best for

Hosting

Maintenance

Composer

Production websites

VPS, cloud, dedicated server

Easy and structured

Source package

Shared hosting

Limited server access

Manual

DDEV or XAMPP

Local development

Local machine

Safe for testing

Recommendation

For most TYPO3 projects, keep it simple.

  • use Composer for production
  • use DDEV for local development
  • use source package only if needed

Install TYPO3 with Composer (Step-by-Step)

Installing TYPO3 with Composer

Composer is the best way to install TYPO3 for most live websites. It gives you a clean setup and easier updates.

Create the project

First, connect to your server with SSH and go to the folder where you want to install TYPO3.

composer create-project typo3/cms-base-distribution my-typo3-site
cd my-typo3-site

This will:

  • download TYPO3
  • install dependencies
  • create the standard project structure
  • create the /public folder

Verify the project structure

After installation, check that the main project folders are there. This helps confirm the install completed correctly.

Look for:

  • /public
  • config/
  • var/
  • var/

Set document root to /public

TYPO3 should run only from the /public folder. This is important for security.

Set your web server document root to:

/path-to-your-project/public

Make sure:

  • your domain points to /public
  • it does not point to the project root

Create the database

Before setup starts, create your database and user. Keep the login details ready.

You need:

  • database name
  • username
  • password
  • host

Use utf8mb4 if possible.

FIRST_INSTALL for fresh setup

Installing TYPO3 CMS

For a fresh TYPO3 setup, create the FIRST_INSTALL file in the project root. This allows the initial setup to start.

Make sure:

  • the file is empty
  • it is placed in the project root

Run setup in browser

The easiest way to finish the install is through your browser.

Open your domain:

https:// yourdomain.com

Then complete these steps:

  • run the system check
  • enter database details
  • create database tables
  • create the admin account
  • set the site name

After setup, open the backend at:

https:// yourdomain.com/typo3

Run setup via console

If needed, TYPO3 setup can also be done with the console. This is useful for server-based workflows.

Use this if:

  • you prefer CLI setup
  • you work in a managed server environment
  • you want a more technical setup flow

How to know the install succeeded

After setup, check a few basics. This confirms TYPO3 is ready.

  • the frontend loads
  • the backend login opens
  • the database connection works
  • no install errors are shown
  • TYPO3 backend is accessible at /typo3

TYPO3 Setup via Console vs Web Installer

TYPO3 setup can be done in two ways. Choose based on your setup and comfort level.

When to use console

Use console when you prefer command line or work on servers.

  • good for developers
  • useful for automation
  • works well with Composer setups
  • faster for repeated installs

When browser setup is easier

Use browser setup if you want a simple guided process.

  • easy for beginners
  • step by step UI
  • no command line needed
  • good for quick setup

Key difference in workflow

Both methods do the same setup, but the process is different.

  • console uses commands and is faster
  • browser uses UI and is easier to follow
  • console is better for automation
  • browser is better for manual setup

TYPO3 Installation via Source Package (Manual Method)

TYPO3 Installation via Source Package

This method is useful if you do not have SSH or Composer access. It is often used on shared hosting.

Download the archive

First, download the TYPO3 source package.

  • choose the latest LTS version
  • download the .zip or .tar.gz file

Upload and extract

Upload content via FTP

Next, upload the archive to your server and extract it.

  • use FTP or your hosting file manager
  • place the files in your project folder
  • make sure all TYPO3 files are extracted properly

Set /public docroot

TYPO3 should run from the /public folder.

  • set the document root to /your-project-folder/public setzen
  • do not point the domain to the project root

File permissions

TYPO3 needs write access to some folders.

Check these paths:

  • var/
  • config/
  • public/fileadmin/

Also keep this in mind:

  • avoid 777
  • make sure the server user can write to these folders

FIRST_INSTALL placement

To start the install, create an empty FIRST_INSTALL file.

  • place it in the project root
  • keep the file empty

Launch the installer

After that, open your domain in the browser to start setup.

During setup, you will:

  • enter database details
  • run system checks
  • create the admin account

Shared hosting notes

This method works well for limited hosting setups.

  • useful when SSH is not available
  • good when Composer cannot be used
  • often managed through FTP and hosting panel

When classic mode is the right choice

Classic install is the right option in simple cases.

  • shared hosting
  • no SSH access
  • no Composer support
  • manual setup is acceptable

Classic TYPO3 Install Variants

Classic install can be done in different ways. Choose based on your access level.

FTP or cPanel archive install

This is the most common method on shared hosting.

  • upload archive via FTP or file manager
  • extract files in project folder
  • no SSH needed
  • simple setup

Use this when:

  • you only have FTP or panel access
  • hosting is shared
  • Composer is not available

SSH and symlink install

This method is used on servers with SSH access.

  • download TYPO3 via SSH
  • use symlinks for core files
  • better file management
  • easier to update core

Use this when:

  • you have SSH access
  • you want better control than FTP
  • you are not using Composer but still need structure

When each one makes sense

Choose based on your setup.

  • use FTP or cPanel for basic hosting
  • use SSH method for more control
  • use Composer if possible for production

Configure Database & Complete Installation

Create a New Database

After the installer starts, TYPO3 will guide you through the final setup steps. This is where your database, admin account, and site setup are completed.

Database credentials

First, enter your database details. TYPO3 will use them to create the needed tables.

Keep these ready:

  • host
  • database name
  • username
  • password

Use utf8mb4 if possible.

Environment scan

TYPO3 will then check your server setup. This helps catch problems before the install finishes.

It checks:

  • PHP version
  • required PHP extensions
  • file permissions
  • database connection
  • memory settings

Fix important errors before moving on.

Admin user creation

Next, create your TYPO3 admin account. This account gives full backend access.

You will need:

  • username
  • strong password
  • email address

Use a secure password from the start.

Blank vs Introduction Package

TYPO3 may ask which setup type you want. Choose based on your goal.

Introduction Package

  • includes demo content
  • useful for learning
  • not for real projects

Blank Installation

  • clean TYPO3 setup
  • no demo content
  • best for production

For most websites, choose Blank Installation.

Backend URL and first login

After setup, TYPO3 will take you to the backend login page.

The backend URL is usually:

https:// yourdomain.com/typo3

Log in with the admin account you just created.

Common setup decisions made during installation

A few choices during setup affect the next steps. Keep them simple.

  • correct database connection
  • secure admin login
  • blank or introduction package
  • working backend access

Once these are done, your TYPO3 install is ready for basic configuration.

Installing TYPO3 Locally (Recommended for Development)

A local TYPO3 setup is useful for testing before you go live. It helps you work safely without affecting your live website.

Why local install matters

Local setup is a good choice for development work.

  • test updates safely
  • build and check extensions
  • prepare websites before launch
  • work with your team more easily

DDEV overview

DDEV is the best option for local TYPO3 development. It gives you a stable setup that is close to a live server.

  • uses Docker
  • works well with Composer
  • good for team projects
  • easier to manage than manual local setups

Step by step DDEV install

You can install TYPO3 locally with DDEV in a few steps.

ddev config --project-type=typo3
ddev start
ddev composer create-project typo3/cms-base-distribution.

After that:

  • open the local URL from DDEV
  • start the TYPO3 installer
  • complete the setup in your browser

DDEV is for local only

DDEV is made for local development, not for live websites.

  • use it for testing
  • use it for development
  • do not use it as production hosting

XAMPP

XAMPP can also be used for local TYPO3 setup, but it is a simpler option.

  • okay for basic testing
  • easier for beginners
  • not ideal for larger projects

Install TYPO3 with DDEV (Quick Start)

If you want a modern local TYPO3 setup, DDEV is the better choice. It is faster to manage and closer to production.

Exact local workflow

This is the basic local install flow with DDEV.

  • create a project folder
  • run ddev config --project-type=typo3
  • run ddev start
  • run ddev composer create-project typo3/cms-base-distribution .
  • open the local URL
  • finish setup in the browser

When to choose DDEV over XAMPP

DDEV is better when you want a more stable and modern setup.

  • better for TYPO3 development
  • better for team use
  • better for testing real project setups

Use XAMPP only for simple local testing.

Common local pitfalls

A few small issues can break local setup.

  • Docker not running
  • wrong project folder
  • port conflicts
  • missing Composer inside DDEV
  • local database setup not starting properly

FIRST_INSTALL vs ENABLE_INSTALL_TOOL

This table shows what each file does and when you need it in TYPO3. FIRST_INSTALL starts a fresh installation, while ENABLE_INSTALL_TOOL unlocks the Install Tool for setup or maintenance tasks

Item

FIRST_INSTALL

ENABLE_INSTALL_TOOL

What it does

Starts fresh TYPO3 installation

Unlocks Install Tool access

When to use

New TYPO3 setup

When you need to access Install Tool later

When not needed

After installation is complete

Not needed for first install

Use together?

Not required with ENABLE_INSTALL_TOOL in most cases

Used separately for maintenance

Common confusion

People think it unlocks Install Tool

People think it installs TYPO3

Security note

Remove after install

Temporary file, auto disables or remove manually

Quick takeaway

Use this simple rule:

  • use FIRST_INSTALL for a brand new TYPO3 setup
  • use ENABLE_INSTALL_TOOL when you need to unlock the Install Tool later
  • do not treat them as the same file or the same step

If you want, I can make this into a shorter 2-column content block for the page.

Post-Installation Security Hardening

Securing TYPO3 Installation

After installation, secure TYPO3 before the site goes live. A few simple checks can reduce risk and prevent unwanted access.

Remove temporary flag files

Temporary install files should not stay in place after setup.

  • remove FIRST_INSTALL after first setup
  • remove ENABLE_INSTALL_TOOL when it is no longer needed
  • keep these files only for setup or maintenance access

Protect Install Tool

The Install Tool gives deep system access, so it should be protected.

  • use a strong Install Tool password
  • allow access only when needed
  • protect it at server level if needed

Use HTTPS

Backend access should run over HTTPS from the start.

  • use HTTPS for /typo3
  • avoid insecure logins on live sites

Enable 2FA

Two factor authentication adds extra backend security.

  • enable MFA for backend users
  • use it for admin accounts first

Configure trusted hosts

Trusted hosts help prevent host header issues.

  • set trustedHostsPattern
  • allow only your real domain
  • avoid wide wildcard patterns

Review file permissions

Only needed folders should be writable.

  • check var/
  • check config/
  • check public/fileadmin/
  • never use 777 permissions

Secure backend access

Backend access should be limited as much as possible.

  • use strong, unique passwords
  • avoid generic usernames like admin
  • restrict access by IP if your setup allows it

Enable Clean URLs & SEO Basics

Clean URLs need proper site setup and routing. Without that, TYPO3 may show URLs like index.php?id=1 instead of clean paths.

Configure site in TYPO3

Start with site configuration in the backend. TYPO3 site handling is the base for routing and clean URLs.

Set these basics:

  • base URL
  • default language
  • error handling

Apache configuration

Apache must be set correctly for clean URLs to work. Composer-based TYPO3 installs should point the web server to the public/ folder only.

Check these points:

  • mod_rewrite is enabled
  • document root points to /public
  • public/.htaccess stays active
  • AllowOverride All is enabled if needed

NGINX configuration

NGINX needs its own rewrite setup. TYPO3 routing depends on requests being passed to index.php correctly.

Check these points:

  • root points to /public
  • try_files forwards requests to index.php

Example:

location / {
  try_files $uri $uri/ /index.php$is_args$args;
}

Verify routing works

After setup, test a few pages in the frontend. If routing works, TYPO3 should open normal page URLs without query strings like index.php?id=1. This follows TYPO3’s routing system and site configuration model.

What to do if URLs still show index.php?id=1

If you still see index.php?id=1, something in the routing setup is missing or wrong. TYPO3 needs both valid site configuration and correct web server handling for readable URLs.

Check these first:

  • site configuration exists
  • base URL is correct
  • document root points to /public
  • Apache rewrite or NGINX try_files is working

Enable XML sitemap

TYPO3 can generate XML sitemaps without a third-party plugin. By default, TYPO3 creates a sitemap index with one or more sitemaps for the current site and language.

Check these basics:

  • SEO system extension is active
  • sitemap is configured
  • sitemap URL works on the live domain

For most sites, the sitemap is available at:

https:// yourdomain.com/sitemap.xml

What to Check Immediately After Installation

After installation, do a quick check before you move on. This helps confirm TYPO3 is working as expected.

Backend access works

First, make sure you can log in to the TYPO3 backend. The backend is normally available at /typo3.

  • backend login page opens
  • admin login works

Site configuration exists

TYPO3 routing depends on site configuration. Without it, many frontend features will not work correctly.

  • base URL is set
  • site is created in backend

Clean URLs work

Open a few frontend pages and check the URLs. TYPO3 should use readable URLs when routing is set up correctly.

  • pages open normally
  • no index.php?id=1 in URLs

Install Tool is no longer exposed

After setup, temporary Install Tool access should not stay open. TYPO3 treats the Install Tool as sensitive system access.

  • remove temporary access files
  • do not leave Install Tool open

Cache and logs are clean

TYPO3 uses caching as part of normal system operation. After install, check that there are no obvious errors or warning signs.

  • no major errors shown
  • caches work normally
  • logs do not show setup problems

XML sitemap is reachable if configured

If you have enabled the TYPO3 XML sitemap, test that it opens correctly on the live domain. TYPO3 supports XML sitemaps as part of its SEO features.

  • sitemap URL opens
  • pages are included correctly

Common TYPO3 Installation Errors & Fixes

Most TYPO3 install errors come from server setup, access, or missing requirements. TYPO3 supports both Composer and classic installs, and both can fail if the environment is not set correctly.

Error

Common cause

Fix

500 Internal Server Error

Wrong docroot, rewrite issue, missing PHP extension

Point root to /public, check rewrite setup, review server logs

Database connection failed

Wrong DB name, user, password, or permissions

Recheck DB credentials and privileges

White screen

PHP fatal error or low memory

Check logs, raise memory_limit, confirm PHP compatibility

Clean URLs not working

Missing site config or rewrite issue

Check site config and Apache or NGINX rules

Permission denied

Wrong file permissions

Make sure needed folders are writable

Install Tool locked

Install Tool access is not enabled

Use ENABLE_INSTALL_TOOL only when needed and remove it after use

Wrong flag file or wrong file location

FIRST_INSTALL and ENABLE_INSTALL_TOOL are mixed up

Use the right file for the right purpose and place it correctly

Composer install finishes but installer does not start

Docroot is wrong or setup trigger is missing

Confirm /public docroot and fresh install setup flow

Archive extract fails on shared hosting

Hosting limits or incomplete extraction

Reupload, extract again, and confirm all files exist

TYPO3 uploads fine but does not run

PHP version is not supported

Check official TYPO3 compatibility before install

Always check PHP and server logs first. They usually show the real cause faster than guessing.

Performance Baseline Setup

TYPO3 Performance Optimization Pyramid

A fresh TYPO3 install should be checked before launch. This is not full tuning. It is just the basic setup needed for a stable live site. TYPO3’s install and deployment docs also separate development setup from production-ready setup.

Enable caching

Caching should stay active on live sites.

  • keep TYPO3 caches enabled
  • avoid development-only settings
  • do not flush cache too often in production

Enable OPcache

OPcache helps PHP run faster.

  • enable OPcache in PHP
  • make sure memory is set properly

Check PHP limits

Low PHP limits can cause backend and install issues.

  • set enough memory_limit
  • review max_execution_time
  • check upload_max_filesize

Use production context

Live websites should run in production mode, not development mode.

  • use production context for live sites
  • disable debug output before launch

Quick TYPO3 Installation Checklist

Essential Checklist for Quick TYPO3 Installation

Use this checklist before you call the install complete. TYPO3 supports different install methods, so it helps to separate local setup from production setup.

Local or development checklist

Use this for DDEV, XAMPP, or other local setups.

  • TYPO3 version selected
  • supported PHP version ready
  • required extensions enabled
  • local database ready
  • local install opens correctly
  • backend login works

Production checklist

Use this before launch.

  • latest suitable TYPO3 version selected
  • PHP compatibility checked
  • document root points to /public
  • database connection works
  • admin account created
  • correct install method used
  • FIRST_INSTALL removed if used
  • Install Tool not left exposed
  • site configuration exists
  • clean URLs work
  • HTTPS is active
  • trusted hosts configured
  • required folders are writable
  • caches are enabled
  • OPcache is active
  • production context is set

If all of these are done, the TYPO3 install is ready for the next setup stage.

Conclusion

Installing TYPO3 is not just about finishing the setup. It also depends on choosing the right version, method, and server setup from the start.

For most projects, the steps in this guide are enough to create a stable TYPO3 setup.

Choose your next step based on your setup. You can install TYPO3 locally for testing, set it up on a live server, check if your hosting meets the requirements, and secure the system before going live.

A Structured Start for TYPO3 Projects

Use this guide to avoid common mistakes and lay a solid foundation for your TYPO3 project from the beginning.

FAQs

You can install TYPO3 using Composer for production, DDEV with Composer for local development, or the source package method for shared hosting.

Composer is not required, but it is recommended for production because it makes updates and maintenance easier.

Yes, you can install TYPO3 without SSH by uploading the source package using FTP or a hosting control panel.

Yes, TYPO3 can run on shared hosting using the classic source package installation method.

TYPO3 requires a supported PHP version, a database like MySQL or MariaDB, required PHP extensions, and a web server such as Apache or NGINX.

FIRST_INSTALL is a file used to start the initial TYPO3 installation process for a new setup.

ENABLE_INSTALL_TOOL is a file that temporarily unlocks access to the TYPO3 Install Tool for setup or maintenance.

You should use DDEV for most development work, while XAMPP is suitable only for simple local testing.

The TYPO3 backend is usually available at yourdomain.com/typo3.

TYPO3 may not load due to incorrect document root, unsupported PHP version, missing extensions, or database issues.

After installation, you should check backend access, set up site configuration, enable clean URLs, activate HTTPS, and secure the system.

Contact for Internet agency and TYPO3 projects

Sven Thelemann

Service Partner - Germany

Sven Thelemann

Comments and Responses

×

Name is required!

Enter valid name

Valid email is required!

Enter valid email address

Comment is required!

* These fields are required.

Be the First to Comment