Auto-cpufreq is an open-source tool that adjusts your CPU speed and power settings automatically on Linux. It lowers the clock on battery and lets the processor boost when you plug in or run heavy tasks. Unlike TLP or Powertop, it needs almost no tuning. This guide covers every install method, daemon setup, the config file, battery thresholds and common fixes.
Also Read: CPU-X: A Linux alternative for CPU-Z
What is auto-cpufreq and how does it work
Auto-cpufreq watches your CPU load, temperature and power source. It then picks a governor (the kernel rule that decides CPU speed) and a turbo setting that fit the moment. On battery it favors low power. On the charger it favors speed.
The tool applies these changes through the kernel’s own cpufreq interface. It does not overclock anything and it does not undervolt anything. It switches between settings your CPU already supports. Each decision rests on three inputs:
- Current CPU load across all cores
- CPU temperature
- Whether the laptop runs on battery or on the charger
Linux laptops often drain faster than the same hardware on other systems because the default governor keeps the CPU awake. Auto-cpufreq closes that gap without making you edit kernel parameters by hand.
Installing auto-cpufreq
The right install method depends on your distribution. The source installer is the most complete option because it adds the GUI and the service files. Packages and Snap are easier to keep updated.
Install from source
The installer script works on most distributions, including Debian, Ubuntu and Fedora. Open a terminal and run the commands below. The first line downloads the project and the second line starts the installer with root rights.
git clone https://github.com/AdnanHodzic/auto-cpufreq.git
cd auto-cpufreq && sudo ./auto-cpufreq-installer

Press i and then Enter to begin the installation. This route always gives you the newest release, which matters because the Snap build lags behind GitHub.
Install with Snap
Snap is the quickest route if your distribution supports it. The stable channel currently ships version 3.1.0 while GitHub is already at 3.2.0. The Snap build also leaves out the GUI.
sudo snap install auto-cpufreq
Install on Arch Linux
Arch users can pull the package from the AUR with any helper. If you do not have one yet, our guide to the Paru AUR helper and pacman wrapper covers the setup. The command below uses yay.
yay -S auto-cpufreq
Install on Debian
The latest release, version 3.2.0, is packaged in Debian unstable as 3.2.0-1. Install it with apt on that branch. Stable Debian and Ubuntu releases do not carry it yet, so use the source installer there.
sudo apt install auto-cpufreq
NixOS and Gentoo also package the tool in their own repositories.
Disable conflicting power tools first
Auto-cpufreq clashes with other tools that change CPU frequency or power profiles. Two such tools running together end up overwriting each other. The installer and the monitor command both print a warning when they spot a conflict.
If TLP or power-profiles-daemon is active, stop it before you go further. On Fedora, also check TuneD, which manages the same settings on recent releases.
sudo systemctl disable --now tlp
sudo systemctl disable --now power-profiles-daemon
You do not need to uninstall TLP. Disabling the service is enough and keeps your old config in case you switch back. Thermald is the exception. It handles cooling on Intel machines and works fine next to auto-cpufreq.
Test auto-cpufreq with monitor and live mode
Before you enable anything permanent, preview what the tool would change. Monitor mode only watches your system and applies nothing. The command below prints your CPU state and the governor the tool would choose.
sudo auto-cpufreq --monitor

If TLP is configured on your system, this screen shows a warning about it. Disable TLP as shown above and run the command again.
Live mode goes one step further. It applies the changes while the window stays open and reverts them when you quit.
sudo auto-cpufreq --live

On battery, the core frequency drops to a few hundred MHz when the laptop sits idle. On the author’s AMD laptop it fell to 404 MHz. Plug in the charger and the frequency climbs toward the maximum your CPU allows. Press Ctrl+C to leave the screen.
Enable the auto-cpufreq daemon
If you like what live mode does, install the daemon (a background service that starts at boot). One command registers it with systemd and starts it right away.
sudo auto-cpufreq --install

Confirm it is running with the systemd status command. Look for active (running) in the output. The service name is auto-cpufreq on every distribution that uses systemd.
systemctl status auto-cpufreq
Use the auto-cpufreq GUI
Since version 2.0, auto-cpufreq includes a graphical app. It shows the current governor and turbo state. It also lets you pick overrides without typing commands, which suits readers who prefer a window over a terminal.
Source installs and distribution packages include the GUI. The Snap build does not. Launch it from your application menu by searching for auto-cpufreq. The GUI and the daemon share the same config file, so changes in one show up in the other.
Useful auto-cpufreq commands
These options cover most daily use. Run each one with sudo.
auto-cpufreq --statsshows the daemon log and the current system state.auto-cpufreq --force=powersavelocks the powersave governor. Useperformancefor the opposite andresetto hand control back.auto-cpufreq --turbo=neverturns turbo off. Usealwaysorautofor the other modes.auto-cpufreq --updatefetches the latest release.auto-cpufreq --removeremoves the daemon.auto-cpufreq --bluetooth_boot_offstops Bluetooth from powering on at boot.
The turbo option arrived in version 3.0. Before that, you had to edit the config file to switch turbo off. The Bluetooth option saves a little energy if you rarely use wireless peripherals. Our guide on how to disable Bluetooth on Ubuntu startup shows the manual route.
Configure auto-cpufreq with the config file
Auto-cpufreq works well with its defaults. You only need a config file if you want custom behavior. Create /etc/auto-cpufreq.conf and the daemon reads it on the next start. You can also point to a file of your choice with the --config option.
Charger and battery profiles
The file has two sections named [charger] and [battery]. Each one holds its own settings, so the laptop behaves differently on each power source. The governor line picks the scaling governor. The turbo line accepts auto, always or never.
[charger]
governor = performance
turbo = auto
[battery]
governor = powersave
turbo = never
Turning turbo off on battery is usually the biggest single saving you can set.
Frequency limits and energy preference
Add scaling_min_freq and scaling_max_freq to cap the clock in MHz. You can also set energy_performance_preference on CPUs that support it. Values such as power and balance_performance tell the processor how aggressive to be.
Some laptops also expose a platform_profile setting. Auto-cpufreq can set it for you to low-power, balanced or performance.
Battery charge thresholds
On supported laptops such as many ThinkPads and IdeaPads, auto-cpufreq can stop charging at a set level. Holding the battery at 80 percent slows wear. Add these lines to the battery section of the config.
[battery]
enable_thresholds = true
start_threshold = 20
stop_threshold = 80
Not every model exposes this control. Our guide on how to check laptop battery health helps you measure the effect over time.
Governors and energy preference explained
A governor is the rule the kernel follows when it picks a CPU frequency. Auto-cpufreq mainly uses two of them.
powersavekeeps the clock low and raises it only when needed.performanceholds the clock high at all times.
On modern Intel and AMD chips the driver makes most decisions, not the governor. Intel’s hardware-managed boost lets the processor ramp up on its own inside limits the tool sets. That is why powersave on these chips still feels fast. Check your driver with the command below.
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver
Typical values are intel_pstate, amd-pstate-epp and acpi-cpufreq.
Troubleshooting auto-cpufreq
Most problems come from three causes. The first is a competing tool. Run the command below and disable whatever shows up. The second cause is a stopped daemon. Check systemctl status auto-cpufreq and read the log with journalctl -u auto-cpufreq.
systemctl list-units | grep -E "tlp|power-profiles|tuned"
The third cause is a driver that does not expose the setting you changed. The scaling_driver check above reveals that. If the governor never changes, run sudo auto-cpufreq --stats and compare the reported driver and governor. A value the driver does not support is ignored without an error.
Measure the battery savings
Numbers beat guesses. Note how long your laptop lasts on a normal workday before you install the tool. Then compare after a week with the daemon running. You can also watch live power draw from the terminal because upower reports the discharge rate in watts.
upower -i $(upower -e | grep BAT)
Compare the energy-rate value at idle with and without the daemon. A lower rate at the same screen brightness means the tool is working.
Is auto-cpufreq safe to use
Yes. The tool only writes values your kernel already exposes for the CPU. It does not touch voltage or firmware. Removing the daemon restores the default behavior.
Heavy users should still watch temperatures after forcing the performance governor. A laptop with weak cooling can throttle itself when it runs hot for long periods. The default auto turbo mode avoids that problem for most people.
Update and uninstall auto-cpufreq
Run the update command to move to the latest release. The newest version is 3.2.0, released on 5 October 2026. Snap and distribution packages update through their own managers instead.
sudo auto-cpufreq --update
To remove the daemon, run sudo auto-cpufreq --remove. Delete /etc/auto-cpufreq.conf if you created one. Re-enable TLP or power-profiles-daemon afterwards if you want them back.
Auto-cpufreq vs TLP vs power-profiles-daemon
All three tools manage power, but they differ in how much control you get.
- Auto-cpufreq switches settings automatically based on load and power source.
- TLP applies a large set of fixed power rules for disks, USB and Wi-Fi. Our TLPUI guide shows how to manage it with a GUI.
- Power-profiles-daemon offers three manual profiles through your desktop menu.
I read on a forum on the internet that some Manjaro users run auto-cpufreq alone and feel no need for TLP. Others pair it with thermald for cooler temperatures. Pick one main tool and avoid mixing them.
Key takeaways
- Auto-cpufreq adjusts CPU governor and turbo automatically based on load and power source.
- Install it from source, Snap, the AUR or Debian unstable.
- Disable TLP and power-profiles-daemon before you enable the daemon.
- Test with
--monitorand--livefirst, then run--install. - Edit
/etc/auto-cpufreq.conffor charger and battery profiles. - Battery charge thresholds work only on supported laptops.
- The tool improves battery life but does not replace lower screen brightness.
Frequently asked questions
What is auto-cpufreq and how does it work?
Auto-cpufreq is a Linux tool that sets the CPU governor and turbo mode based on load and power source. It saves energy on battery and allows speed on the charger.
How do I install auto-cpufreq on my Linux system?
Clone the GitHub repository and run the installer script. You can also use Snap, the AUR package on Arch or apt on Debian unstable. The source installer works on most distributions.
Will auto-cpufreq improve battery life on my laptop?
Yes, in most cases. Lowering the clock and disabling turbo on battery cuts power draw. The gain depends on your hardware and workload.
Does auto-cpufreq work with Intel and AMD CPUs?
Yes, it supports both. It works with the intel_pstate and amd-pstate drivers as well as acpi-cpufreq. Available options depend on which driver your kernel loads.
Can I use auto-cpufreq with TLP?
No. Both tools change CPU frequency settings and they overwrite each other. Disable the TLP service before you enable the auto-cpufreq daemon.
How do I turn off turbo boost with auto-cpufreq?
Run sudo auto-cpufreq --turbo=never or set turbo = never in the [battery] section of the config file. The config method makes the change permanent.
Where is the auto-cpufreq config file?
The default path is /etc/auto-cpufreq.conf. You create it yourself if it does not exist. The daemon reads it when it starts, so restart the service after each edit.
Conclusion
Auto-cpufreq is a Linux tool that tunes CPU speed and power automatically and extends laptop battery life with almost no setup. Install it from source or your package manager, disable TLP and power-profiles-daemon first and test with live mode before you enable the daemon permanently on your laptop for everyday use.
