Skip to main content
Sunshine works with default settings for most users, but offers extensive configuration options when you need more control over streaming behavior, performance, and compatibility.

Accessing Configuration

The easiest way to configure Sunshine is through the web interface:
  1. Open your web browser
  2. Navigate to https://localhost:47990
  3. Log in with your credentials
  4. Browse the configuration sections in the UI
The web UI provides a user-friendly interface for all configuration options with descriptions and validation.

Configuration Files

For advanced users, Sunshine can be configured by editing configuration files directly. The configuration file is located in different directories depending on your operating system:
Operating SystemConfiguration Directory
Docker/config
FreeBSD~/.config/sunshine
Linux~/.config/sunshine
macOS~/.config/sunshine
Windows%ProgramFiles%\Sunshine\config
The main configuration file is sunshine.conf in this directory.

Custom Configuration Path

You can specify a custom configuration file location by passing the full path as the first argument when starting Sunshine:
sunshine ~/my-custom-config/sunshine.conf

Application Configuration

Applications that can be launched from Moonlight are configured separately in apps.json, which is stored in the same directory as the configuration file by default. You can customize this location in the main configuration file.

Configuration Sections

Sunshine’s configuration is organized into several categories:

General Settings

Locale, logging, credentials, and system tray options

Audio/Video

Encoder selection, resolution, bitrate, and HDR settings

Input Configuration

Gamepad emulation, keyboard, and mouse settings

Network Settings

Port configuration, UPnP, and encryption settings

Applications

Configure applications and games to stream

Editing Configuration Files

While you can manually edit the configuration file, it’s recommended to use the web UI to avoid syntax errors and ensure valid values.
If you choose to edit configuration files manually:
  1. Stop Sunshine before making changes
  2. Open sunshine.conf in a text editor
  3. Edit the desired options using the format: option_name = value
  4. Save the file
  5. Restart Sunshine for changes to take effect

Configuration File Locations

Main Configuration Files

sunshine.conf
file
Main configuration file containing all Sunshine settings
apps.json
file
Application definitions for games and programs that can be launched from Moonlight
sunshine_state.json
file
Current state and user credentials for the web UI

Log Files

sunshine.log
file
Main log file for troubleshooting and debugging

SSL Certificates

Located in the credentials subdirectory:
credentials/cakey.pem
file
Private key for web UI and Moonlight pairing (RSA-2048 recommended)
credentials/cacert.pem
file
Certificate for web UI and Moonlight pairing

Next Steps

General Settings

Configure locale, logging, and system settings

Audio/Video

Optimize encoding settings for your hardware

Build docs developers (and LLMs) love