PHPackages                             8ctopus/hstat - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [CLI &amp; Console](/categories/cli)
4. /
5. 8ctopus/hstat

ActiveApplication[CLI &amp; Console](/categories/cli)

8ctopus/hstat
=============

test webpage speed command line tool

1.1.1(1y ago)04MITPHP

Since Aug 10Pushed 1y ago1 watchersCompare

[ Source](https://github.com/8ctopus/hstat)[ Packagist](https://packagist.org/packages/8ctopus/hstat)[ Docs](https://github.com/8ctopus/hstat)[ RSS](/packages/8ctopus-hstat/feed)WikiDiscussions master Synced today

READMEChangelog (10)Dependencies (5)Versions (12)Used By (0)

hstat
=====

[](#hstat)

[![license](https://camo.githubusercontent.com/25c184a48bdffc8d6faa798d84154d012268c2e666437d6fc0b352cee4ad9248/68747470733a2f2f706f7365722e707567782e6f72672f3863746f7075732f68737461742f6c6963656e7365)](https://packagist.org/packages/8ctopus/hstat)[![lines of code](https://raw.githubusercontent.com/8ctopus/hstat/image-data/lines.svg)](https://raw.githubusercontent.com/8ctopus/hstat/image-data/lines.svg)

hstat is a command line tool to test the performance of webpages.

It was inspired from the works of @talhasch [php-httpstat](https://github.com/talhasch/php-httpstat) and @reorx [httpstat](https://github.com/reorx/httpstat) and adds a few improvements:

- standalone
- iterations with pause in between
- data set analysis: average, median, max and min.

how to install
--------------

[](#how-to-install)

You have the choice between:

- composer install `composer require 8ctopus/hstat`
- download the phar
- or build it yourself

```
curl -LO https://github.com/8ctopus/hstat/releases/download/1.1.1/hstat.phar

# check hash against the one published under releases
sha256sum hstat.phar

# make phar executable
chmod +x hstat.phar

# rename phar (optional)
mv hstat.phar hstat

# move phar to /usr/local/bin/ (optional)
mv hstat /usr/local/bin/
```

how to use
----------

[](#how-to-use)

### basic

[](#basic)

```
$ hstat speed https://octopuslabs.io/

 --- ----------------- --------------------- -------------------- ------------------------ ----------------------- ------------
  /   DNS lookup (ms)   TCP connection (ms)   TLS handshake (ms)   server processing (ms)   content transfer (ms)   total (ms)
 --- ----------------- --------------------- -------------------- ------------------------ ----------------------- ------------
  1   16                237                   767                  156                      0                       1176
 --- ----------------- --------------------- -------------------- ------------------------ ----------------------- ------------
```

### advanced

[](#advanced)

measure website speed 10 iterations, 3 seconds pause in between, show median, average, min and max

```
$ hstat speed --iterations 10 --pause 3000 --median --average --min --max https://octopuslabs.io/
 ----- ----------------- --------------------- -------------------- ------------------------ -----------------------
  /     DNS lookup (ms)   TCP connection (ms)   TLS handshake (ms)   server processing (ms)   content transfer (ms)
 ----- ----------------- --------------------- -------------------- ------------------------ -----------------------
  1     21                69                    96                   67                       1
  2     14                74                    102                  73                       2
  3     12                114                   93                   69                       0
  4     21                68                    106                  68                       1
  5     14                92                    97                   67                       1
  6     28                72                    132                  364                      1
  7     22                72                    99                   72                       1
  8     14                86                    110                  69                       1
  9     8                 102                   92                   74                       1
  10    12                67                    87                   68                       1

  med   14                73                    98                   69                       1
  avg   17                82                    101                  99                       1
  min   8                 67                    87                   67                       0
  max   28                114                   132                  364                      2
 ----- ----------------- --------------------- -------------------- ------------------------ -----------------------
```

**NOTE**: when testing a website with a self-signed SSL certificate, add the argument `--arguments="--insecure"`

#### definitions

[](#definitions)

- DNS lookup : time to lookup the server's IP address
- TCP connection : time to establish the connection with the server
- TLS handshake : time to establish a secured connection between you and the server (for https only)
- server processing : time the server took to process the request (apache/nginx + php)
- content transfer : time to transfer the page to you

#### Xdebug cookie example

[](#xdebug-cookie-example)

```
hstat speed --iterations 10 --median --average --min --max --arguments="--cookie \"XDEBUG_SESSION=mysession\"" https://octopuslabs.io/
```

build phar
----------

[](#build-phar)

```
./build.sh
```

improvement ideas
-----------------

[](#improvement-ideas)

- add headers option
- add specific header option
- make speed command default command
- export to csv
- parallel curl requests
- make comparisons possible
- fix json\_decode locale issue with curl command - [curl/curl#1037](https://github.com/curl/curl/issues/1037)
- remove TLS column when http request
- support for concomitant requests
- more stats
- add test progress indicator

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance39

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~148 days

Recently: every ~346 days

Total

11

Last Release

674d ago

Major Versions

v0.0.6 → v1.0.02020-11-13

### Community

Maintainers

![](https://www.gravatar.com/avatar/4dafd5f7ef8134a5c9b231686c5da3d6416db09139b45aac0b26952178dffb8a?d=identicon)[8ctopus](/maintainers/8ctopus)

---

Top Contributors

[![8ctopus](https://avatars.githubusercontent.com/u/13252042?v=4)](https://github.com/8ctopus "8ctopus (78 commits)")

---

Tags

performancewebpagespeed

###  Code Quality

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/8ctopus-hstat/health.svg)

```
[![Health](https://phpackages.com/badges/8ctopus-hstat/health.svg)](https://phpackages.com/packages/8ctopus-hstat)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.8k543.8M20.0k](/packages/laravel-framework)[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

103519.9k53](/packages/friendsoftypo3-content-blocks)[drupal/core

Drupal is an open source content management platform powering millions of websites and applications.

21866.0M1.7k](/packages/drupal-core)[jolicode/castor

A lightweight and modern task runner. Automate everything. In PHP.

54642.4k4](/packages/jolicode-castor)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.6M571](/packages/shopware-core)[testo/testo

A lightweight PHP testing framework.

1959.3k53](/packages/testo-testo)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
