Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

FPS Overlay - Lightweight Game Performance Monitor - Anti-cheat safe

A lightweight, no-bloat FPS overlay for Windows. Just stats on your screen while gaming — nothing else.

Size Platform License Version

⭐ If you like FPS Overlay, please leave a star. It supports the project and keeps it growing. Thank you! ⭐


[!Important]

Read Important Information Regarding Antivirus's False Positives

This happens relatively frequently with specialized system tools for some key reasons:

  • LibHardwareMonitor: The FPS Overlay makes use of the LibHardwareMonitor library to pull hardware information like your CPU temperature and GPU usage on the fly. Since this library deals directly with hardware drivers and low level system APIs heuristic based scanners such as VirusTotal often flag this as "suspicious" or "malicious behavior" since it mimics the way certain malicious software interacts with the internal system.
  • Overlay Injection: Since the application needs to draw an overlay ontop of your currently open windows, such as your games, certain AV scanners misinterpret this as "code injection" which is what is often flagged by AI driven security vendors.
  • Unsigned Binaries: The source for the application is open-source and as the executable itself is currently unsigned with a very expensive commercial certificate, a number of smaller, more sensitive AV engines are quick to "flag it as high confidence" risk since the publisher is "unknown".

The easiest way for you to verify this is to examine the source code for yourself:

All the code is open source here on github repo, here you can verify how the data is handled, and here you can see how its interface with the LibHardwareMonitor library. In the worst case scenario and even if you are worried, you can even build the application yourself directly on your machine.

[!CAUTION]

Fullscreen display modes are not supported*

Games require Borderless/Borderless Windowed/Borderless Fullscreen mode to be enabled via in-game display settings in order for the FPS Overlay to show above the game window.

FPS Overlay will only work in windowed fullscreen mode and windowed borderless fullscreen mode, but will not work in true fullscreen mode or exclusive fullscreen mode. True fullscreen mode and exclusive fullscreen mode on desktop means that other computer applications cannot be displayed over the application that’s in fullscreen mode and exclusive fullscreen mode.


Features

  • FPS — Real in-game framerate via Windows ETW (DirectX 9–12, OpenGL, Vulkan)
  • CPU — Usage, temperature, optional power draw (W), optional fan speed (RPM), and optional clock (MHz) with a minimal sparkline; pick the clock sensor in settings
  • GPU — Usage, temperature, optional power draw (W), and optional fan speed (RPM) (NVIDIA, AMD, Intel)
  • GPU core clock — Optional core frequency (MHz) with a minimal sparkline; pick the clock sensor for the selected GPU
  • Multi-GPU — Detect all discrete GPUs and choose which one to monitor
  • VRAM — Memory usage (percent and used / total GB)
  • RAM — System memory usage (percent and used / total GB)
  • Three layouts — Vertical stack, horizontal compact one-liner, or a Steam-style bar
  • Temperature units — Celsius or Fahrenheit
  • Process label — Shows which process is used for the FPS / game name line
  • Position & opacity — Corners or drag-to-place; opacity for the overlay
  • Persistent settings — Saved next to the executable (config.ini)
  • Fully click-through — Does not steal mouse focus from games
  • Custom hotkeys — Toggle visibility and exit (default: Insert and End)
  • System tray — Minimized when running in the background
  • CTRL + drag / CTRL + right-click menu — Move the overlay or open hide / settings / exit without affecting other apps
  • Localization With RTL Support — Supports 16 languages with RTL support for Arabic, Persian, Urdu, and other RTL languages.
  • Lightweight — No installer, no background services, no bloat, ~9 MB portable folder

Screenshots

Main SettingsVertical layout
Main SettingsVertical layout
Horizontal compactSteam-like layout
Horizontal compactSteam-like layout

Why I Built This

I wanted a simple FPS overlay. That's it. Just FPS, CPU, GPU, RAM stats on my screen while gaming. Somehow this turned into a mass-uninstall session when I realized every existing solution came with baggage:

What I tried and why I gave up:

ToolWhy I Ditched It
Xbox Game BarUninstalled it ages ago for performance reasons, now Windows won't let me reinstall it. Classic.
NVIDIA GeForce Experience / Shadowplay / NVIDIA AppI just want an FPS counter, not a 500MB "gaming platform" that wants to optimize my games, record everything, and run 3 background services.
MSI AfterburnerPowerful, yes. But I don't need overclocking tools, fan curves, voltage controls, and hardware monitoring graphs. I just want to see my FPS.
NZXT CAMCame with my AIO, immediately became system tray bloatware that phones home and wants to "enhance my gaming experience."
Steam OverlayWould be fine if more than 5% of my library was on Steam.
OverwolfStill not sure what this actually does besides slow everything down and show ads.
RivaTunerThe OG, respect. But it's 2026 and I still don't need 90% of what it offers.
FrapsLast updated in 2013. Enough said.

So I built my own:

  • ~9MB total — Single .exe plus bundled DLLs, no installer, no background services
  • C++ with DirectX 11 + Dear ImGui — As lightweight as it gets
  • No account required. No telemetry. No "gaming optimization" features. No social integration. No ads. Just stats.

Download

Grab the latest release from the Releases page.

Or build it yourself (see below).

Usage

  1. Run the overlay.exe (Administrator required)
    1. It will prompt you to install PawnIO if it's not already installed or update it if it's outdated.
    2. You must restart your computer after the installation or updating PawnIO for FPS Overlay to work.

[!NOTE] PawnIO is a driver that is required for LibreHardwareMonitor to work which FPS Overlay rely on to get CPU and GPU stats. It is also used by the popular tools like OpenRGB. You can learn more about PawnIO here.

  1. Select which stats you want to display
  2. Choose your position, layout, and hotkeys
  3. Click Start Overlay
  4. Game on!

Controls

ActionHow
Move overlayHover over overlay + hold CTRL + drag
Right-click menuHover over overlay + hold CTRL + right-click
Toggle visibilityYour configured hotkey (default: Insert)
ExitYour configured hotkey (default: End)

Note: The overlay only responds to CTRL when your mouse is hovering over it, so it won't interfere with CTRL shortcuts in other applications.

Why ETW? Why Admin?

There are basically 3 ways to get real game FPS:

MethodHow it worksDownsides
DLL Injection (RivaTuner/Afterburner)Hooks directly into the game's graphics callsCan trigger anti-cheat bans or crash games
Vendor Hooks (NVIDIA/AMD overlays)Built into their driversComes with hundreds of MB of bloatware and background services
ETW (Windows Event Tracing)Kernel-level Windows API that fires events when any process presents a frameRequires admin privileges

I went with ETW because:

  • Anti-cheat safe — Doesn't touch game processes at all
  • Universal — Works with DirectX 9/10/11/12, OpenGL, and Vulkan games
  • No injection — Nothing gets loaded into the game

The tradeoff is that ETW requires admin because it's a system-wide kernel tracing API. Windows won't let unprivileged apps listen to cross-process events for security reasons. Same reason PresentMon and CapFrameX need admin — it's a Windows security requirement, not a design choice.

Graphics API Compatibility

Graphics APISupported
DirectX 12✅ Yes
DirectX 11✅ Yes
DirectX 10/10.1✅ Yes
DirectX 9✅ Yes (via D3D9 ETW provider)
OpenGL✅ Yes (via DxgKrnl ETW provider)
Vulkan✅ Yes (via DxgKrnl ETW provider)

Building from Source

Requirements

  • Windows 10/11
  • Visual Studio 2022+ Build Tools (with C++ workload)

Build

git clone https://github.com/aneeskhan47/fps-overlay.git
cd fps-overlay
build-msvc.bat

The output is build\overlay\overlay.exe along with required DLLs.

Dependencies (included)

Project Structure

fps-overlay/
├── src/
│   ├── main.cpp        # All application code
│   └── resource.rc     # Windows resources (icon, version info)
├── libs/
│   ├── imgui/          # Dear ImGui library
│   └── lhwm/           # LibreHardwareMonitor wrapper
├── build/              # Build output
│   ├── overlay/        # Release binaries (from build-msvc.bat)
│   │   ├── overlay.exe
│   │   ├── lhwm-wrapper.dll
│   │   └── LibreHardwareMonitorLib.dll
│   └── config.ini      # Settings (created on first run, next to overlay.exe)
├── icon.ico            # Application icon
├── build-msvc.bat      # Build script
├── FPSOverlay.vcxproj  # Visual Studio project
└── README.md

Tech Stack

  • Language: C++20
  • Build: MSVC (Visual Studio Build Tools)
  • Graphics: DirectX 11
  • UI: Dear ImGui
  • FPS Tracking: Windows ETW (Event Tracing for Windows) with D3D9, DXGI, and DxgKrnl providers
  • CPU Stats: LibreHardwareMonitor
  • GPU Stats: LibreHardwareMonitor (supports NVIDIA, AMD, Intel)
  • Windowing: Win32 API (layered transparent window)\

Credits

Like this project?

Please consider leaving a tip on Ko-Fi :)

Buy Me a Coffee at ko-fi.com

No bloat. No telemetry. Just stats.

关于 About

FPS Overlay - Lightweight Game Performance Monitor - Anti-cheat safe
anti-cheat-safefps-overlaygame-overlaylightweightlocalizationminimalmultilanguagenobloatnobloatwareperformance-monitoring

语言 Languages

C++82.2%
C11.0%
Python2.9%
Objective-C++2.0%
Makefile0.6%
CMake0.6%
Objective-C0.3%
Batchfile0.3%
HTML0.0%
Kotlin0.0%
GLSL0.0%
GDB0.0%
Shell0.0%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
72
Total Commits
峰值: 16次/周
Less
More

核心贡献者 Contributors