Use powercfg.exe to control power plans—also called power schemes—to use the available sleep states, to control the power states of individual devices, and to analyze the system for common energy-efficiency and battery-life problems.

Syntax

Powercfg command lines use the following syntax:

powercfg  /option  [arguments ]  [ /?]

where option is one of the options listed in the following table, and arguments is one or more arguments that apply to the selected option. Including /? in a command line displays help for the specified option. Options and arguments are described in more detail later in this topic.

List of command-line options

Option

Description

/?, -help

Displays information about command-line parameters.

/list, /L

Lists all power schemes.

/query, /Q

Displays the contents of a power scheme.

/change, /X

Modifies a setting value in the current power scheme.

/changename

Modifies the name and description of a power scheme.

/duplicatescheme

Duplicates a power scheme.

/delete, /D

Deletes a power scheme.

/deletesetting

Deletes a power setting.

/setactive, /S

Makes a power scheme active on the system.

/getactivescheme

Retrieves the currently active power scheme.

/setacvalueindex

Sets the value associated with a power setting while the system is powered by AC power.

/setdcvalueindex

Sets the value associated with a power setting while the system is powered by DC power.

/import

Imports all power settings from a file.

/export

Exports a power scheme to a file.

/aliases

Displays all aliases and their corresponding GUIDs.

/getsecuritydescriptor

Gets a security descriptor associated with a specified power setting, power scheme, or action.

/setsecuritydescriptor

Sets a security descriptor associated with a power setting, power scheme, or action.

/hibernate, /H

Enables and disables the hibernate feature.

/availablesleepstates, /A

Reports the sleep states available on the system.

/devicequery

Returns a list of devices that meet specified criteria.

/deviceenableawake

Enables a device to wake the system from a sleep state.

/devicedisablewake

Disables a device from waking the system from a sleep state.

/lastwake

Reports information about what woke the system from the last sleep transition.

/waketimers

Enumerates active wake timers.

/requests

Enumerates application and driver Power Requests.

/requestsoverride

Sets a Power Request override for a particular Process, Service, or Driver.

/energy

Analyzes the system for common energy-efficiency and battery life problems.

/batteryreport

Generates a report of battery usage.

/sleepstudy

Generates a diagnostic system power transition report.

/srumutil

Dumps Energy Estimation data from System Resource Usage Monitor (SRUM).

/systemsleepdiagnostics

Generates a diagnostic report of system sleep transitions.

/systempowerreport

Generates a diagnostic system power transition report.

 

Descriptions of command-line options

The following sections describe Powercfg command-line options and arguments.

-help or /?

Displays information about command-line parameters.

Syntax:

powercfg  /?

/list or /L

Lists all power schemes.

Syntax:

powercfg  /list

/query or /Q

Displays the contents of the specified power scheme.

Syntax:

powercfg  /query  [scheme_GUID  [sub_GUID ]]

If neither the parameter scheme_GUID or sub_GUID are provided, the settings of the current active power scheme are displayed. If the parameter sub_GUID is not specified, all settings in the specified power scheme are displayed.

Arguments:

scheme_GUID

Specifies a power scheme GUID. Running powercfg /list returns a power scheme GUID.

sub_GUID

Specifies a power-setting subgroup GUID. A power setting subgroup GUID is returned by running powercfg /query.

Examples:

powercfg /query powercfg /query 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20

/change or /X

Modifies a setting value in the current power scheme.

Syntax:

/change  setting  value

Arguments:

setting

Specifies one of the following options:

  • monitor-timeout-ac
  • monitor-timeout-dc
  • disk-timeout-ac
  • disk-timeout-dc
  • standby-timeout-ac
  • standby-timeout-dc
  • hibernate-timeout-ac
  • hibernate-timeout-dc

value

Specifies the new value, in minutes.

Examples:

powercfg /change monitor-timeout-ac 5

/changename

Modifies the name of a power scheme and optionally its description.

Syntax:

powercfg  /changename  scheme_GUID  name  [description ]

Arguments:

scheme_GUID

Specifies a power scheme GUID. Running powercfg /list returns a power scheme GUID.

name

Specifies the power scheme’s new name.

description

Specifies the power scheme’s new description. If no description is specified, only the name is changed.

Examples:

powercfg /changename 381b4222-f694-41f0-9685-ff5bb260df2e "Customized Balanced"

/duplicatescheme

Duplicates the specified power scheme. The resulting GUID which represents the new scheme is displayed.

Syntax:

powercfg  /duplicatescheme  scheme_GUID  [destination_GUID ]

Arguments:

 

scheme_GUID

Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

destination_GUID

Specifies the new power scheme’s GUID. If no GUID is specified, a new GUID is created.

 

Examples:

powercfg /duplicatescheme 381b4222-f694-41f0-9685-ff5bb260df2e

/delete or /D

Deletes the power scheme with the specified GUID.

Syntax:

powercfg  /delete  scheme_GUID

Arguments:

scheme_GUID

Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

Examples:

powercfg /delete 381b4222-f694-41f0-9685-ff5bb260df2e

/deletesetting

Deletes a power setting.

Syntax:

powercfg  /deletesetting  sub_GUID  setting_GUID

Arguments:

sub_GUID

Specifies a power setting subgroup GUID. A power setting subgroup GUID is returned by running powercfg /query.

setting_GUID

Specifies a power setting GUID. A power setting GUID is returned by running powercfg /query.

Examples:

powercfg /deletesetting 238c9fa8-0aad-41ed-83f4-97be242c8f20 29f6c1db-86da-48c5-9fdb-f2b67b1f44da

/setactive or /S

Makes the specified power scheme active on the system.

Syntax:

powercfg  /setactive  scheme_GUID

Arguments:

scheme_GUID

Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

Examples:

powercfg /setactive 381b4222-f694-41f0-9685-ff5bb260df2e

/getactivescheme

Retrieves the currently active power scheme.

Syntax:

powercfg  /getactivescheme

/setacvalueindex

Sets the value associated with a specified power setting while the system is powered by AC power.

Syntax:

powercfg  /setacvalueindex  scheme_GUID  sub_GUID  setting_GUID  setting_index

Arguments:

scheme_GUID

Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

sub_GUID

Specifies a power setting subgroup GUID. Running powercfg /query returns a power setting subgroup GUID.

setting_GUID

Specifies a power setting GUID. A power setting GUID is returned by running powercfg /query.

setting_index

Specifies which possible value this setting is set to. A list of possible values is returned by running powercfg /query.

Examples:

powercfg /setacvalueindex 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20 29f6c1db-86da-48c5-9fdb-f2b67b1f44da 0

/setdcvalueindex

Sets the value associated with a specified power setting while the system is powered by DC power.

Syntax:

powercfg  /setdcvalueindex  scheme_GUID  sub_GUID  setting_GUID  setting_index

Arguments:

scheme_GUID

Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

sub_GUID

Specifies a power setting subgroup GUID. A power setting subgroup GUID is returned by running powercfg /query.

setting_GUID

Specifies a power setting GUID. A power setting GUID is returned by running powercfg /query.

setting_index

Specifies which possible value this setting is set to. A list of possible values is returned by running powercfg /query.

Examples:

powercfg /setdcvalueindex 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20 29f6c1db-86da-48c5-9fdb-f2b67b1f44da 300

/import

Imports a power scheme from the specified file.

Syntax:

powercfg  /import  file_name  [GUID ]

Arguments:

file_name

Specifies a fully-qualified path to a file returned by running powercfg /export.

GUID

Specifies the GUID for the imported scheme. If no GUID is specified, a new GUID is created.

Examples:

powercfg /import c:\scheme.pow

/export

Exports a power scheme, represented by the specified GUID, to the specified file.

Syntax:

powercfg  /export  file_name  GUID

Arguments:

file_name

Specifies a fully-qualified path to a destination file.

GUID

Specifies a power scheme GUID. A power scheme GUID is returned by running powercfg /list.

Examples:

powercfg /export c:\scheme.pow 381b4222-f694-41f0-9685-ff5bb260df2e

/aliases

Displays a list of aliases and their corresponding GUIDs. These aliases may be used instead of a GUID in any command.

Syntax:

powercfg  /aliases

NoteSome settings do not contain aliases. For a full list of GUIDs, use powercfg /query.

/getsecuritydescriptor

Gets the security descriptor associated with the specified power setting, power scheme, or action.

Syntax:

powercfg  /getsecuritydescriptor  GUID   action

Arguments:

GUID

Specifies a power scheme or a power setting GUID. A power scheme GUID is returned by running powercfg /list. A power setting GUID is returned by running powercfg /query.

action

Specifies one of the following actions:

  • ActionSetActive
  • ActionCreate
  • ActionDefault

Examples:

powercfg /getsecuritydescriptor 381b4222-f694-41f0-9685-ff5bb260df2e powercfg /getsecuritydescriptor ActionSetActive

/setsecuritydescriptor

Sets a security descriptor associated with the specified power setting, power scheme, or action.

Syntax:

powercfg  /setsecuritydescriptor  GUID   action  SDDL

Arguments:

GUID

Specifies a power scheme or a power setting GUID. A power scheme GUID is returned by running powercfg /list. A power setting GUID is returned by running powercfg /query.

action

Specifies one of the following actions:

  • ActionSetActive
  • ActionCreate
  • ActionDefault

SDDL

Specifies a valid security descriptor string in SDDL format. An example SDDL string can be obtained by running powercfg /getsecuritydescriptor.

Examples:

powercfg /setsecuritydescriptor 381b4222-f694-41f0-9685-ff5bb260df2e O:BAG:SYD:P(A;CI;KRKW;;;BU)(A;CI;KA;;;BA)(A;CI;KA;;;SY)(A;CI;KA;;;CO)

powercfg /setsecuritydescriptor ActionSetActive O:BAG:SYD:P(A;CI;KR;;;BU)(A;CI;KA;;;BA)(A;CI;KA;;;SY)(A;CI;KA;;;CO)

/hibernate or /h

Enables or disables the hibernate feature; also, sets the hiberfile size.

Syntax:

powercfg  /hibernate

powercfg  /hibernate  [on   off]

powercfg  /hibernate  [ /size  percent_size ]

powercfg  /hibernate  [ /type  reduced   full ]

Arguments:

On

Enables the hibernate feature.

Off

Disables the hibernate feature.

/size percent_size

Specifies the desired hiberfile size as a percentage of the total memory size. The default size cannot be smaller than 50. This parameter also causes hibernation to be enabled.

/type reduced   full

Specifies the desired hiberfile type. A reduced hiberfile only supports hiberboot.

Note   A hiberfile that has a custom default size, or HiberFileSizePercent >= 40, is considered as a full hiberfile. HiberFileSizePercent is set in the registry in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power.To change the hiberfile type to reduced, the OS has to manage the default hiberfile size. To do this, run the following commands:

powercfg /hibernate /size 0

powercfg /hibernate /type reduced

Examples:

powercfg /hibernate off powercfg /hibernate /size 100 powercfg /hibernate /type reduced

/availablesleepstates or /A

Reports the sleep states available on the system. Attempts to report reasons why sleep states are unavailable.

Syntax:

powercfg  /availablesleepstates

/devicequery

Returns a list of devices that meet the specified criteria.

Syntax:

powercfg  /devicequery  query_flag

Arguments:

query_flag

Specifies one of the following criteria:

wake_from_S1_supported

Returns all devices that support waking the system from a light sleep state.

wake_from_S2_supported

Returns all devices that support waking the system from a deeper sleep state.

wake_from_S3_supported

Returns all devices that support waking the system from the deepest sleep state.

wake_from_any

Returns all devices that support waking the system from any sleep state.

S1_supported

Lists devices supporting light sleep.

S2_supported

Lists devices supporting deeper sleep.

S3_supported

Lists devices supporting deepest sleep. S4_supported List devices supporting hibernation.

wake_programmable

Lists devices that are user-configurable to wake the system from a sleep state.

wake_armed

Lists devices that are currently configured to wake the system from any sleep state.

all_devices

Returns all devices present in the system.

Examples:

powercfg /devicequery wake_armed

/deviceenableawake

Enables the specified device to wake the system from a sleep state.

Syntax:

powercfg  /deviceenableawake  device_name

Arguments:

device_name

Specifies a device. This device name may be retrieved using powercfg /devicequery wake_programmable.

Examples:

powercfg /deviceenableawake "Microsoft USB IntelliMouse Optical"

/devicedisablewake

Disables the specified device from waking the system from a sleep state.

Syntax:

powercfg  /devicedisablewake  device_name

Arguments:

device_name

Specifies a device. This device name may be retrieved using powercfg /devicequery wake_armed.

Examples:

powercfg /devicedisablewake "Microsoft USB IntelliMouse Optical"

/lastwake

Reports information about what woke the system from the last sleep transition.

Syntax:

powercfg  /lastwake

/waketimers

Enumerates the active wake timers. If enabled, the expiration of a wake timer wakes the system from sleep and hibernate states.

Syntax:

powercfg  /waketimers

/requests

Enumerates application and driver Power Requests. Power Requests prevent the computer from automatically powering off the display or entering a low-power sleep mode.

Syntax:

powercfg  /requests

/requestsoverride

Sets a Power Request override for a particular process, service, or driver. If no parameters are specified, this command displays the current list of Power Request overrides.

Syntax:

powercfg  /requestsoverride  [caller_type  name  request ]

Arguments:

Caller_type

Specifies one of the following caller types: processservicedriver. This is obtained by running powercfg /requests.

name

Specifies the caller name. This is the name returned by running powercfg /requests.

request

Specifies one or more of the following Power Request types:

  • Display
  • System
  • Awaymode

Examples:

powercfg /requestsoverride process wmplayer.exe display system

/energy

Analyzes the system for common energy-efficiency and battery-life problems and generates a report, an HTML file, in the current path.

Syntax:

powercfg  /energy  [ /output  file_name ]  [ /xml]  [ /duration  seconds ]

powercfg  /energy  /trace  [ /d  file_path ]  [ /xml]  [ /duration  seconds ]

The /energy option should be used when the computer is idle and has no open programs or documents.

Arguments:

/output file_name

Specify the path and file name to store the energy report HTML or XML file.

/xml

Formats the report file as XML.

/duration seconds

Specifies the number of seconds to observe system behavior. Default is 60 seconds.

/trace

Records system behavior and does not perform analysis. Trace files are generated in the current path unless the /D parameter is specified.

/d file_path

Specify the directory to store trace data. May only be used with the /trace parameter.

Examples:

powercfg /energy powercfg /energy /output "longtrace.html" /duration 120

/batteryreport

Generates a report of battery usage characteristics over the lifetime of the system. Running powercfg /batteryreport generates an HTML report file in the current path.

Syntax:

powercfg  /batteryreport  [ /output  file_name ]  [ /xml]

powercfg  /batteryreport  [ /duration  days ]

Arguments:

/output file_name

Specify the path and file name to store the battery report HTML.

/output file_name /xml

Formats the battery report file as XML.

/duration days

Specifies the number of days to analyze for the report.

Examples:

powercfg /batteryreport /output "batteryreport.html" powercfg /batteryreport /duration 4

/sleepstudy

Generates a diagnostic report of modern standby quality over the last three days on the system. The report is a file that is saved in the current path.

Syntax:

powercfg  /sleepstudy  [ /output  file_name ]  [ /xml]

powercfg  /sleepstudy  [ /duration  days ]

powercfg  /sleepstudy  [ /transformxmL  file_name.xml ]  [ /output  file_name.html ]

Arguments:

/output file_name

Specify the path and file name to store the Sleepstudy report HTML.

/output file_name /xml

Formats the Sleepstudy report file as XML.

/duration days

Specifies the number of days to analyze for the report.

/transformxml file_name.xml /output file_name.html

Transforms the Sleepstudy report from XML to HTML.

Examples:

powercfg /sleepstudy /output "sleepstudy.html" powercfg /sleepstudy /duration 7

/srumutil

Enumerates the entire Energy Estimation data from the System Resource Usage Monitor (SRUM) in an XML or CSV file.

Syntax:

powercfg  /srumutil  [ /output  file_name ]  [ /xml]  [ /csv]

Arguments:

/output file_name

Specify the path and file name to store the SRUM data.

/output file_name /xml

Formats the file as XML.

/output file_name /csv

Formats the file as CSV.

Examples:

powercfg /batteryreport /output "srumreport.xml" /xml

/systemsleepdiagnostics

Generates a report of intervals when the user was not present over the last three days on the system, and if the system went to sleep. This option generates a report, an HTML file, in the current path.

This command requires administrator privileges and must be executed from an elevated command prompt.

Syntax:

powercfg  /systemsleepdiagnostics  [/output  file_name ]  [/xml ]

Arguments:

/output file_name

Specifies the path and file name of the diagnostics report.

/xml

Save the report as an XML file.

/duration days

Specifies the number of days to analyze for the report.

/transformxml file_name

Produces a report in HTML from a report that was previously created in XML.

Examples:

powercfg /systemsleepdiagnostics powercfg /systemsleepdiagnostics /output "system-sleep-diagnostics.html" powercfg /systemsleepdiagnostics /output "system-sleep-diagnostics.xml" /XML powercfg /systemsleepdiagnostics /transformxml "system-sleep-diagnostics.xml"

/systempowerreport or /spr

Generates a report of system power transitions over the last three days on the system, including connected standby power efficiency. This option generates a report, an HTML file, in the current path.

This command requires administrator privileges and must be executed from an elevated command prompt.

Syntax:

powercfg  /getsecuritydescriptor  GUID   action

Arguments:

/output file_name

Specifies the path and file name of the diagnostics report.

/xml

Save the report as an XML file.

/duration days

Specifies the number of days to analyze for the report.

/transformxml file_name

Produces a report in HTML from a report that was previously created in XML.

Examples:

powercfg /systempowerreport powercfg /systempowerreport /output "sleepstudy.html" powercfg /systempowerreport /output "sleepstudy.xml" /XML powercfg /systempowerreport /transformxml "sleepstudy.xml"

Source: https://docs.microsoft.com/en-us/windows-hardware/design/device-experiences/powercfg-command-line-options