Skip to content

Latest commit

Β 

History

156 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

BenchKit Header

Build Status License Support us
Docker Hub Pulls Discord

Introduction

BenchKit is a free and open source Laravel application that shows you how performance changes across hosts, hardware, and PHP configurations. You run it on the server you want to measure, and it reports what that machine does with a Laravel workload.

It's a standalone app rather than a package you install. Spin it up, run a benchmark, share the result, then throw it away. Your own codebase is never involved.

What a run measures

Stage Tool What it measures
Hardware YABS CPU and disk, through Geekbench and fio
Network cfspeedtest Latency and bandwidth to Cloudflare
Web server load oha Requests per second and latency, per route
PHP and database phpbench Timing for individual PHP and database operations

Every run uses the same load settings unless you change them, which is what makes it meaningful to put your numbers next to somebody else's.

How each stage works β†’

Quick start

You need a server and Docker. Nothing else.

# Install Docker (skip if you already have it)
curl -fsSL https://get.docker.com | bash

# Start BenchKit
docker run -p 80:8080 \
  -v benchkit-runs:/var/www/html/storage/app/runs \
  serversideup/benchkit-laravel:latest

Open http://<your-server-ip>/ in your browser and press Start Benchmark.

A few things worth knowing:

  • The run belongs to the server, not to your browser. Close the tab, reload the page, or follow along from your phone without disturbing it.
  • The volume holds your run history. Without it, your results disappear with the container.
  • Pick Quick or Full in the settings drawer before you start. BenchKit estimates how long your choice will take.

Full quick start guide β†’

Pick your web server

The same application ships on three web servers, so any difference between two runs comes from the server rather than the code. The tag you pull decides which one you get.

Variation How PHP is served Tag
FPM-NGINX nginx hands PHP requests to PHP-FPM latest
FrankenPHP One binary serves PHP directly frankenphp
FPM-Apache Apache hands PHP requests to PHP-FPM fpm-apache

Run each one on the same machine, then open the runs side by side in Compare. FrankenPHP also runs in Octane worker mode from the same image, which is the cleanest comparison the tool can make.

Choosing a variation β†’

Share your results

The community results gallery collects real runs across different hosts, hardware, and PHP configurations. Adding yours is how the next person finds a machine like the one they're considering.

Press Submit result when a run finishes. BenchKit shows you the exact document first, then opens a pre-filled GitHub issue. A bot validates it and opens a pull request. Submitting is optional, and BenchKit never sends anything anywhere on its own.

You can also share a run as an image on X with #BenchKit.

What gets published, and what never does β†’

Documentation

πŸ“š Full documentation lives at serversideup.net/open-source/benchkit.

The documentation source lives in the docs/ directory β€” a standalone Nuxt site deployed to Cloudflare Pages.

Powered by Spin Pro

Spin is an open source tool built by Server Side Up to help you run Docker from development β†’ production. Spin is language agnostic, so you can use it with any language but we also provide official templates. This project was powered by Spin Pro, which offers additional features for Laravel power users.

Powered by Spin Pro

Resources

  • Discord for friendly support from the community and the team.
  • GitHub for source code, bug reports, and project management.
  • Get Professional Help - Get video + screen-sharing help directly from the core contributors.

Contributing

As an open-source project, we strive for transparency and collaboration in our development process. We greatly appreciate any contributions members of our community can provide. Whether you're fixing bugs, proposing features, improving documentation, or spreading awareness - your involvement strengthens the project. Please review our contribution guidelines and code of conduct to understand how we work together respectfully.

Need help getting started? Join our Discord community and we'll help you out!

Our Sponsors

All of our software is free an open to the world. None of this can be brought to you without the financial backing of our sponsors.

Sponsors

Black Level Sponsors

Sevalla

Bronze Sponsors

No bronze sponsors yet. Become a sponsor β†’

Special Infrastructure Sponsors

This project takes an incredible amount of computing power to build and maintain over 8,000 different docker image tags. We're extremely grateful for the following sponsors who help bring the power to ship more PHP.

DepotΒ Β Docker

Individual Supporters

Sponsors

πŸš€ Need help optimizing your app for maximum performance?

Dan Pastori
Jay Rogers


Get two senior Laravel experts who deliver quality code with predictable monthly pricing.

The creators of Server Side Up (Dan and Jay) are available for hire with 30+ years of combined experience building scalable Laravel applications.

Why developers choose us:

  • 🎯 Complete Laravel expertise - Full-stack development, CI/CD, database optimization, mobile apps
  • πŸ’° Predictable pricing - Fixed monthly subscription, no hourly billing surprises, 40%+ savings
  • ⚑ Maximum productivity - 90%+ development time, no meetings, results in days not weeks
  • πŸ›‘οΈ Risk-free - 7-day money-back guarantee, cancel anytime

πŸ’¬ Discuss Your Project β†’

Find us at:

  • πŸ“– Blog - Get the latest guides and free courses on all things web/mobile development.
  • πŸ™‹ Community - Get friendly help from our community members.
  • πŸ€΅β€β™‚οΈ Get Professional Help - Get video + screen-sharing support from the core contributors.
  • πŸ’» GitHub - Check out our other open source projects.
  • πŸ“« Newsletter - Skip the algorithms and get quality content right to your inbox.
  • πŸ₯ Twitter - You can also follow Dan and Jay.
  • ❀️ Sponsor Us - Please consider sponsoring us so we can create more helpful resources.

Our products

If you appreciate this project, be sure to check out our other projects.

πŸ“š Books

πŸ› οΈ Software-as-a-Service

  • Bugflow: Get visual bug reports directly in GitHub, GitLab, and more.
  • SelfHost Pro: Connect Stripe or Lemonsqueezy to a private docker registry for self-hosted apps.

🌍 Open Source

  • serversideup/php: Production-ready PHP Docker images optimized for Laravel.
  • AmplitudeJS: Open-source HTML5 & JavaScript Web Audio Library.
  • Spin: Laravel Sail alternative for running Docker from development β†’ production.

About

πŸ”₯ Benchmark tool for Laravel. Learn how your servers and configurations perform with a real Laravel app.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

39 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages