Advanced Server Settings

Plex Media Server has a number of advanced server settings that are not accessible from the Plex interface. Some settings can be accessed using the Plex Web App, while others can only be changed from outside of the Web app.

Most users, however, will not need to change these Plex server settings, and doing so can cause problems with your Plex Media server. If you would like to find and change these settings, you can use the information below.

Some of these settings are changed when you modify them to the suggested server settings.

Advanced Server Settings in Plex

Location of the advanced server settings

The location of the advanced server settings in Plex is different for each of the supported operating systems. For Windows, the settings are located in the registry, while other operating systems have a file in the data directory. The table below outlines where you can find the location of the Plex config file containing these server settings.

Location of the Plex Advanced Settings by Operating System
Operating SystemLocation
WindowsHKEY_CURRENT_USER\Software\Plex, Inc.\Plex Media Server\
macOS / OS X~/Library/Preferences/com.plexapp.plexmediaserver.plist
LinuxPreferences.xml file is located in the Plex Media Server data directory.
NVIDIA SHIELDPreferences.xml file is located in the Plex Media Server data directory, but it isn’t accessible by a user.

Available advanced settings

There are many different advanced settings for Plex Media Server that can be changed in the locations specified above. The various settings are outlined in the table below.

A few notes regarding Plex and Windows for the settings:

  1. The setting name is not case-sensitive in Windows. The setting name can begin with either a lowercase letter, as shown in the table below, or with an uppercase letter.
  2. A boolean value will be a DWORD type in the Windows registry. A true value will be 1, and a false value will be 0.
Plex Media Server Advanced Settings
Setting NameValue
albumSortstring
Defines the default album sort using a field:directory value. Plex Media Server 1.4.1+ has a setting in the interface for library or artist.
Example: year:desc
allowMediaDeletionboolean
Specifies whether the server owner can delete media from disk.
Example: True
allowedNetworksstring
Lists the networks that can access Plex Media Server without authentication. The full subnet must be listed.
Example: 192.168.1.0/255.255.255.0,10.8.0.0/255.255.255.0
articleStringsstring
A list of comma-separated words that are considered to be grammatical articles. They will be removed in sort titles. You can specify the words in different languages.
Example: the, a, an, das
autoEmptyTrashboolean
Empty trash automatically after every scan. Default: True.
Example: True
backgroundTranscodeLowPriorityboolean
Causes the background transcodes to have a lower priority when this value is 1.
Example: True
butlerDatabaseBackupPathstring
The backup directory where the database backups are stored. Default: {Plex Data Directory}/Plug-in Support/Databases
Example: /var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Plug-in Support/Databases
butlerEndHourinteger
The hour when the background tasks stop running. The value is the hour number in a 24 hour clock. 0 (Midnight) to 23 (11 pm). Default: 5.
Example: 3 (3 am)
butlerStartHourinteger
The hour when the background tasks start running. The value is the hour number in a 24 hour clock. 0 (Midnight) to 23 (11 pm). Default: 2.
Example: 1 (1 am)
butlerTaskBackupDatabaseboolean
Backup the database every three days. Default: True.
Example: True
butlerTaskCleanOldBundlesboolean
Clean old bundles every week. Default: True.
Example: True
butlerTaskCleanOldCacheFilesboolean
Remove old cache files every week. Default: True.
Example: True
butlerTaskDeepMediaAnalysisboolean
Perform extensive media analysis during maintenance. Default: True.
Example: True
butlerTaskGenerateAutoTagsboolean
Analyze and tag photos. Default: True.
Example: True
butlerTaskOptimizeDatabaseboolean
Optimize the database every week. Default: True.
Example: True
butlerTaskRefreshEpgGuidesboolean
Perform refresh of program guide data. Default: True.
Example: True
butlerTaskRefreshLibrariesboolean
Update all libraries during maintenance.
Example: True
butlerTaskRefreshLocalMediaboolean
Refresh local metadata every three days. Default: True.
Example: True
butlerTaskRefreshPeriodicMetadataboolean
Refresh metadata periodically. Default: True.
Example: True
butlerTaskUpgradeMediaAnalysisboolean
Upgrade media analysis during maintenance. Default: True.
Example: True
butlerUpdateChannelinteger
The update channel. Values: 8 (Public) or 16 (Plex Pass). Default: 16.
Example: 16
cinemaTrailersFromBluRayboolean
Include cinema trailers from new and upcoming movies on blu-ray. Plex Pass only.
Example: True
cinemaTrailersFromLibraryboolean
Include cinema trailers from movies in library. Plex Pass only.
Example: True
cinemaTrailersFromTheaterboolean
Include cinema trailers from new and upcoming movies in theaters. Plex Pass only.
Example: True
cinemaTrailersPrerollIDstring
Cinema trailers pre-roll video. This field is the video's detail page URL.
cinemaTrailersTypeinteger
Choose cinema trailers from: 0 - all movies, 1 - only unwatched movies. Default is 1.
Example: True
collectUsageDataboolean
Send anonymous usage data to Plex to help improve user experience. Default is 1.
Example: True
disableCapabilityCheckingboolean
Disables plug-in compatibility checking. Compatibility checking ensures that plug-ins that are incompatible with the version of the Plex server, or the current client applications, are hidden. Default is 0.
Example: False
dlnaAnnouncementLeaseTimeinteger
The duration, in seconds, of the DLNA server SSDP announcement lease time. Default: 1800.
Example: 1800
dlnaClientPreferencesstring
Client-specific configuration settings for the DLNA server.
dlnaDefaultProtocolInfostring
DLNA default protocol info. The Protocol info value is used in GetProtocolInfo response by the DLNA server. Default: http-get::video/mpeg:,http-get::video/mp4:,http-get::video/vnd.dlna.mpeg-tts:,http-get::video/avi:,http-get::video/x-matroska:,http-get::video/x-ms-wmv:,http-get::video/wtv:,http-get::audio/mpeg:,http-get::audio/mp3:,http-get::audio/mp4:,http-get::audio/x-ms-wma,http-get::audio/wav:,http-get::audio/L16:,http-get:image/jpeg:,http-get:image/png:,http-get:image/gif:,http-get:image/tif
dlnaDescriptionIconsstring
DLNA server description icons. These are icons offered by DLNA server when devices request server description. Default: png, jpeg. 260x260, 120x120, 48x48.
dlnaDeviceDiscoveryIntervalinteger
The number of seconds between DLNA media rendered discovery requests. Default: 60.
Example: 60
dlnaEnabledboolean
Specifies whether DLNA is enabled. Default: True.
Example: True
dlnaPlatinumLoggingLevelstring
Specified the separate, "Neptune DLNA" logging level. Values: OFF, FATAL, SEVERE, WARNING, INFO, FINE, FINER, FINEST, ALL. Default: OFF.
Example: OFF
dlnaReportTimelineboolean
The DLNA server timeline reporting. Enables the DLNA server to report timelines for video play activity. Default: True.
Example: True
enableIPv6boolean
Turns on IPv6 support.
Example: False
friendlyNamestring
The friendly name for the Plex server that is shown in player apps.
Example: My Plex Media Server
fSEventLibraryPartialScanEnabledboolean
Specifies to only scan the library folder that is changed. FSEventLibraryUpdatesEnabled needs to be enabled.
Example: True
FSEventLibraryUpdatesEnabledboolean
Specifies whether a library scan is automatically started when changes to a library folder are detected.
Example: True
gdmEnabledboolean
Enables the GDM discovery for the Plex server from other players on the network. Set to 1 to enable.
Example: True
generateBIFBehaviorstring
Generate video preview thumbnails to provide live updates in 'Now Playing' and while seeking on supported apps. Thumbnail generation may cause high CPU usage, use more disk space, and take a long time. Thumbnail generation can be turned off for individual libraries in the library's advanced settings. Values: never, scheduled, asap. Default: never.
generateBIFFrameIntervalinteger
Sets how often (in seconds) a video thumbnail is created. The default value is 2.
Example: 2
generateBIFKeyframesOnlyboolean
Specifies to only look at keyframes in a video when generating preview thumbnails for playback. This setting speeds up processing and reduces CPU usage. Default is 1.
Example: True
generateChapterThumbBehaviorstring
Generate chapter thumbnails to provide images in the chapter view on supported apps. The thumbnails can take a long time to generate and consume a lot of disk space. Values: never, scheduled, asap. Default: scheduled.
iTunesLibraryXmlPathpath
The path to the iTunes library XML file.
Example: ~/Music/iTunes/iTunes Library.xml
iTunesSharingEnabledboolean
Specifies whether the Plex server will try to connect with a local iTunes installation.
Example: False
LocalAppDataPathstring
(Windows only) Sets the location of the Plex Media Server data directory. Default is C:\Users\{user_name}\AppData\Local\Plex Media Server.
Example: D:\PlexData
logDebugboolean
Specifies whether debug logging is enabled.
Example: True
logMemoryUseboolean
Sets the Plex Media Server to log memory use and the system total used memory. The server will need to restart, and is not recommended for normal use.
Example: False
logNumFilesinteger
The number of past log files to keep. Default is 5.
Example: 7
logTokensboolean
Allow Plex Media Server tokens in log. Plex tokens can be used to gain access to the server, and to perform tasks on the server. Don't share logs with tokens. A server restart is required for this change to take effect.
Example: False
logVerboseboolean
Specifies whether the logging is to be verbose. Not recommended for normal use. Default is 0.
Example: False
longRunningJobThreadsinteger
Specifies the number of threads used for long-running jobs. Default is half the total threads for the processor.
Example: 4
manualPortMappingModeboolean
Indicates if the server is set to use port mapping for remote access.
Example: False
manualPortMappingPortinteger
The manual port for remote access. ManualPortMappingMode needs to be set to 1.
Example: 32400
minimumProgressTimeinteger
The minimum play time (in milliseconds) Plex will use to indicate a media item has started playing, and will allow user to resume playback. Default is 60000 (1 minute).
Example: 60000
onDeckWindowinteger
The numbers of weeks to use to determine if a media item is to be displayed for 'On Deck.' Default: 16.
pluginsLaunchTimeoutinteger
The number of seconds to wait before a plug-in times out. Default: 180.
Example: 180
ProcessedMachineIdentifierstring
The SHA1 hash identifier for the Plex server.
radioDaysSinceLastPlayedinteger
For Radio or Smart Shuffle, have Plex prefer to include tracks that have not been recently played. This value is the recent period. Default is 2.
Example: 5
radioDirectoryLimitinteger
Controls how many "genre", "style", or "mood" radios are exposed, on clients that support those radio types. Default is 50.
Example: 75
scannerLowPriorityboolean
Run scanner tasks at a lower priority.
Example: true
scheduledLibraryUpdatesEnabledboolean
Specifies whether the Plex server will scan the libraries on a set interval
Example: False
scheduledLibraryUpdateIntervalinteger
The number of seconds between library scans. ScheduledLibraryUpdatesEnabled needs to be set to 1. Values: 900, 1800, 3600, 7200, 21600, 43200, 86400. Default: 3600.
Example: 1800
secureConnectionsinteger
Specifies how the server handles secure connections. Values: 2 (disabled), 1 (preferred), or 0 (required). Default: 1.
Example: 1
sendCrashReportsboolean
Specifies whether Plex Media Server sends crash reports when the server is launched after a crash.
Example: False
transcoderCanOnlyRemuxVideoboolean
Disables video stream transcoding. The transcoder may still transcode audio and remux video. Default: False.
Example: False
transcoderDefaultDurationinteger
The duration (in minutes), the transcoder will work ahead of the current playback.
Example: 60
transcoderH264OptionsOverridestring
The x264 preset to use when transcoding.
Example: veryfast
transcoderLogLevelstring
The Plex transcoder log level.
Example: error (default)
verbose
transcoderPhotoFileSizeLimitMiBinteger
The maximum photo size (in mebibytes) to be tagged or transcoded.
Example: 75
transcoderTempDirectorystring
The location where the temporary transcode segments are written.
Example: D:\PlexTranscodes
watchMusicSectionsboolean
Include music libraries in automatic updates. Linux limits the maximum number of watched directories; this might cause problems with large music libraries.

Fixing settings issues

If you have issues with your Plex server after changing any of the above advanced settings, such as some Plex server settings missing, you can reset the values back to default by deleting either the preferences file or the keys in the Windows registry.

Deleting the preferences file will reset any changes you have made, and you will also lose any server shares or Mobile Sync items you may have. Your Plex Media Server library database will not be affected.

SysLog option

In addition to the above advanced settings, you can also have Plex enable syslogging on a Linux-based system. This can be done by setting the configuration variable: PLEX_MEDIA_SERVER_USE_SYSLOG=true.

The variable will need to be added to the Plex Media Server configuration file. This file is located in the following locations:

CentOS/Fedora

Value: export PLEX_MEDIA_SERVER_USE_SYSLOG=true

Config File Location: /etc/sysconfig/PlexMediaServer

ReadyNAS

Value: export PLEX_MEDIA_SERVER_USE_SYSLOG=true

Config File Location: /etc/init.d/plexserver

Synology

Value: PLEX_MEDIA_SERVER_USE_SYSLOG=true

Config File Location: /var/packages/Plex Media Server/scripts/start-stop-status

Ubuntu 15 (and older)

Value: PLEX_MEDIA_SERVER_USE_SYSLOG=true

Config File Location: /etc/default/plexmediaserver

Ubuntu 16 (and newer)

Value: Environment="PLEX_MEDIA_SERVER_USE_SYSLOG=true"

Config File Location: /etc/systemd/system/plexmediaserver.service.d/override.conf

Subscribe
Display