diff --git a/locust/stats.py b/locust/stats.py
index adf5ce2d..80c1ae3a 100644
--- a/locust/stats.py
+++ b/locust/stats.py
@@ -13,7 +13,7 @@ import logging
 console_logger = logging.getLogger("locust.stats_logger")
 
 STATS_NAME_WIDTH = 60
-STATS_TYPE_WIDTH = 20
+STATS_TYPE_WIDTH = 8
 
 """Default interval for how frequently the CSV file is written if this option
 is configured."""
@@ -42,7 +42,6 @@ PERCENTILES_TO_REPORT = [
     0.99,
     0.999,
     0.9999,
-    0.99999,
     1.0
 ]
 
@@ -512,7 +511,7 @@ class StatsEntry(object):
         else:
             rps = self.total_rps
             fail_per_sec = self.total_fail_per_sec
-        return (" %-" + str(STATS_NAME_WIDTH) + "s %7d %12s %7d %7d %7d  | %7d %7.2f %7.2f") % (
+        return (" %-" + str(STATS_NAME_WIDTH) + "s %7d %12s  | %7d %7d %7d %7d  | %7.2f %7.2f") % (
             (self.method and self.method + " " or "") + self.name,
             self.num_requests,
             "%d(%.2f%%)" % (self.num_failures, self.fail_ratio * 100),
@@ -579,10 +578,11 @@ class StatsEntry(object):
         if not self.num_requests:
             raise ValueError("Can't calculate percentile on url with no successful requests")
 
-        tpl = f" %-{str(STATS_TYPE_WIDTH)}s %-{str(STATS_NAME_WIDTH)}s %8d {' '.join(['%7d'] * len(PERCENTILES_TO_REPORT))}"
+        tpl = f" %-{str(STATS_TYPE_WIDTH)}s %-{str(STATS_NAME_WIDTH)}s %8d {' '.join(['%6d'] * len(PERCENTILES_TO_REPORT))}"
 
-        return tpl % ((self.method, self.name, self.num_requests)
-                      + tuple([self.get_response_time_percentile(p) for p in PERCENTILES_TO_REPORT]))
+        return tpl % ((self.method, self.name)
+                      + tuple([self.get_response_time_percentile(p) for p in PERCENTILES_TO_REPORT]) 
+                      + (self.num_requests,))
 
     def _cache_response_times(self, t):
         self.response_times_cache[t] = CachedResponseTimes(
@@ -697,7 +697,7 @@ def setup_distributed_stats_event_listeners(events, stats):
 
 
 def print_stats(stats, current=True):
-    console_logger.info((" %-" + str(STATS_NAME_WIDTH) + "s %7s %12s %7s %7s %7s  | %7s %7s %7s") % ('Name', '# reqs', '# fails', 'Avg', 'Min', 'Max', 'Median', 'req/s', 'failures/s'))
+    console_logger.info((" %-" + str(STATS_NAME_WIDTH) + "s %7s %12s  | %7s %7s %7s %7s  | %7s %7s") % ('Name', '# reqs', '# fails', 'Avg', 'Min', 'Max', 'Median', 'req/s', 'failures/s'))
     console_logger.info("-" * (80 + STATS_NAME_WIDTH))
     for key in sorted(stats.entries.keys()):
         r = stats.entries[key]
@@ -708,11 +708,11 @@ def print_stats(stats, current=True):
 
 
 def print_percentile_stats(stats):
-    console_logger.info("Percentage of the requests completed within given times")
-    headers = ('Type', 'Name', '# reqs') + tuple(get_readable_percentiles(PERCENTILES_TO_REPORT))
+    console_logger.info("Response time percentiles (approximated)")
+    headers = ('Type', 'Name') + tuple(get_readable_percentiles(PERCENTILES_TO_REPORT)) + ('# reqs',)
     console_logger.info((f" %-{str(STATS_TYPE_WIDTH)}s %-{str(STATS_NAME_WIDTH)}s %8s "
-                         f"{' '.join(['%7s'] * len(PERCENTILES_TO_REPORT))}") % headers)
-    separator = f'{"-" * STATS_TYPE_WIDTH}|{"-" * STATS_NAME_WIDTH}|{"-" * 9}|{("-" * 7 + "|") * len(PERCENTILES_TO_REPORT)}'
+                    f"{' '.join(['%6s'] * len(PERCENTILES_TO_REPORT))}") % headers)
+    separator = f'{"-" * STATS_TYPE_WIDTH}|{"-" * STATS_NAME_WIDTH}|{"-" * 9}|{("-" * 6 + "|") * len(PERCENTILES_TO_REPORT)}'
     console_logger.info(separator)
     for key in sorted(stats.entries.keys()):
         r = stats.entries[key]

Change the position of dividers in command line report
Currently it looks like this:

```
 Name                                                          # reqs      # fails     Avg     Min     Max  |  Median   req/s failures/s
--------------------------------------------------------------------------------------------------------------------------------------------
 POST /1                                                          600     0(0.00%)     237     214     323  |     230    3.10    0.00
 POST /2                                                         1876     0(0.00%)      80      55     187  |      75    5.10    0.00
...
 --------------------------------------------------------------------------------------------------------------------------------------------
 Aggregated                                                     33750   461(1.37%)    2486       3   10589  |     260  137.60    4.30
```

But I think it should look like this:
```
 Name                                                          # reqs      # fails  |   Avg     Min     Max   Median  |  req/s failures/s
--------------------------------------------------------------------------------------------------------------------------------------------
 POST /1                                                          600     0(0.00%)  |   237     214     323      230  |  3.10   0.00
 POST /2                                                         1876     0(0.00%)  |    80      55     187       75  |  5.10   0.00
...
 --------------------------------------------------------------------------------------------------------------------------------------------
 Aggregated                                                     33750   461(1.37%)  |  2486       3   10589      260  | 137.60  4.30
```

So the dividers will be between request counts, response times, and throughputs. Make sense @heyman ?
diff --git a/locust/test/test_stats.py b/locust/test/test_stats.py
index 7366ab0f..3efc6f19 100644
--- a/locust/test/test_stats.py
+++ b/locust/test/test_stats.py
@@ -226,13 +226,14 @@ class TestRequestStats(unittest.TestCase):
         s1 = StatsEntry(self.stats, "rounding down!", "GET")
         s1.log(122, 0)    # (rounded 120) min
         actual_percentile = s1.percentile().split()
-        self.assertEqual(actual_percentile, ['GET', 'rounding', 'down!', '1'] + ['120'] * len(PERCENTILES_TO_REPORT))
+        
+        self.assertEqual(actual_percentile, ['GET', 'rounding', 'down!'] + ['120'] * len(PERCENTILES_TO_REPORT) + ['1'])
 
     def test_percentile_rounded_up(self):
         s2 = StatsEntry(self.stats, "rounding up!", "GET")
         s2.log(127, 0)    # (rounded 130) min
         actual_percentile = s2.percentile().split()
-        self.assertEqual(actual_percentile, ['GET', 'rounding', 'up!', '1'] + ['130'] * len(PERCENTILES_TO_REPORT))
+        self.assertEqual(actual_percentile, ['GET', 'rounding', 'up!'] + ['130'] * len(PERCENTILES_TO_REPORT) + ['1'])
 
     def test_custom_percentile_list(self):
         s = StatsEntry(self.stats, "custom_percentiles", "GET")
@@ -240,7 +241,7 @@ class TestRequestStats(unittest.TestCase):
         locust.stats.PERCENTILES_TO_REPORT = custom_percentile_list
         s.log(150, 0)
         actual_percentile = s.percentile().split()
-        self.assertEqual(actual_percentile, ['GET', 'custom_percentiles', '1'] + ['150'] * len(custom_percentile_list))
+        self.assertEqual(actual_percentile, ['GET', 'custom_percentiles'] + ['150'] * len(custom_percentile_list) + ['1'])
 
     def test_error_grouping(self):
         # reset stats

pip install -e .[dev]
parse_log_pytest
pytest
tox codecov cryptography mock pyquery pytest
apt-get update apt-get install -y libev-dev
3.8
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
blinker==1.8.2
Brotli==1.1.0
cachetools==5.5.2
certifi==2025.1.31
cffi==1.17.1
chardet==5.2.0
charset-normalizer==3.4.1
click==8.1.8
codecov==2.1.13
colorama==0.4.6
ConfigArgParse==1.7
coverage==7.6.1
cryptography==44.0.2
cssselect==1.2.0
distlib==0.3.9
exceptiongroup @ file:///croot/exceptiongroup_1706031385326/work
filelock==3.16.1
Flask==3.0.3
Flask-BasicAuth==0.2.0
gevent==24.2.1
geventhttpclient==2.0.12
greenlet==3.1.1
idna==3.10
importlib_metadata==8.5.0
iniconfig @ file:///home/linux1/recipes/ci/iniconfig_1610983019677/work
itsdangerous==2.2.0
Jinja2==3.1.6
-e git+https://github.com/locustio/locust.git@12bfb268e68cb268830d78034f5fc0c43e4c2fee#egg=locust
lxml==5.3.1
MarkupSafe==2.1.5
mock==5.2.0
msgpack==1.1.0
packaging==24.2
platformdirs==4.3.6
pluggy==1.5.0
psutil==7.0.0
pycparser==2.22
pyproject-api==1.8.0
pyquery==2.0.1
pytest @ file:///croot/pytest_1717793244625/work
pyzmq==26.3.0
requests==2.32.3
six==1.17.0
tomli==2.2.1
tox==4.25.0
typing_extensions==4.13.0
urllib3==2.2.3
virtualenv==20.29.3
Werkzeug==3.0.6
zipp==3.20.2
zope.event==5.0
zope.interface==7.2

name: locust
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - exceptiongroup=1.2.0=py38h06a4308_0
  - iniconfig=1.1.1=pyhd3eb1b0_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=3.0.16=h5eee18b_0
  - pip=24.2=py38h06a4308_0
  - pytest=7.4.4=py38h06a4308_0
  - python=3.8.20=he870216_0
  - readline=8.2=h5eee18b_0
  - setuptools=75.1.0=py38h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.44.0=py38h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - blinker==1.8.2
      - brotli==1.1.0
      - cachetools==5.5.2
      - certifi==2025.1.31
      - cffi==1.17.1
      - chardet==5.2.0
      - charset-normalizer==3.4.1
      - click==8.1.8
      - codecov==2.1.13
      - colorama==0.4.6
      - configargparse==1.7
      - coverage==7.6.1
      - cryptography==44.0.2
      - cssselect==1.2.0
      - distlib==0.3.9
      - filelock==3.16.1
      - flask==3.0.3
      - flask-basicauth==0.2.0
      - gevent==24.2.1
      - geventhttpclient==2.0.12
      - greenlet==3.1.1
      - idna==3.10
      - importlib-metadata==8.5.0
      - itsdangerous==2.2.0
      - jinja2==3.1.6
      - lxml==5.3.1
      - markupsafe==2.1.5
      - mock==5.2.0
      - msgpack==1.1.0
      - packaging==24.2
      - platformdirs==4.3.6
      - pluggy==1.5.0
      - psutil==7.0.0
      - pycparser==2.22
      - pyproject-api==1.8.0
      - pyquery==2.0.1
      - pyzmq==26.3.0
      - requests==2.32.3
      - six==1.17.0
      - tomli==2.2.1
      - tox==4.25.0
      - typing-extensions==4.13.0
      - urllib3==2.2.3
      - virtualenv==20.29.3
      - werkzeug==3.0.6
      - zipp==3.20.2
      - zope-event==5.0
      - zope-interface==7.2
prefix: /opt/conda/envs/locust

locust/test/test_stats.py::TestRequestStats::test_custom_percentile_list locust/test/test_stats.py::TestRequestStats::test_percentile_rounded_down locust/test/test_stats.py::TestRequestStats::test_percentile_rounded_up
locust/test/test_stats.py::TestRequestStatsWithWebserver::test_request_stats_no_content_length locust/test/test_stats.py::TestRequestStatsWithWebserver::test_request_stats_no_content_length_streaming
locust/test/test_stats.py::TestRequestStats::test_aggregation locust/test/test_stats.py::TestRequestStats::test_aggregation_last_request_timestamp locust/test/test_stats.py::TestRequestStats::test_aggregation_min_response_time locust/test/test_stats.py::TestRequestStats::test_aggregation_with_decimal_rounding locust/test/test_stats.py::TestRequestStats::test_aggregation_with_rounding locust/test/test_stats.py::TestRequestStats::test_avg locust/test/test_stats.py::TestRequestStats::test_avg_only_none locust/test/test_stats.py::TestRequestStats::test_current_fail_per_sec locust/test/test_stats.py::TestRequestStats::test_current_rps locust/test/test_stats.py::TestRequestStats::test_error_grouping locust/test/test_stats.py::TestRequestStats::test_error_grouping_errors_with_memory_addresses locust/test/test_stats.py::TestRequestStats::test_median locust/test/test_stats.py::TestRequestStats::test_median_out_of_min_max_bounds locust/test/test_stats.py::TestRequestStats::test_num_reqs_fails locust/test/test_stats.py::TestRequestStats::test_percentile locust/test/test_stats.py::TestRequestStats::test_reset locust/test/test_stats.py::TestRequestStats::test_reset_min_response_time locust/test/test_stats.py::TestRequestStats::test_rps_less_than_one_second locust/test/test_stats.py::TestRequestStats::test_serialize_through_message locust/test/test_stats.py::TestRequestStats::test_total_content_length locust/test/test_stats.py::TestRequestStats::test_total_rps locust/test/test_stats.py::TestStatsPrinting::test_print_percentile_stats locust/test/test_stats.py::TestCsvStats::test_csv_stats_on_master_from_aggregated_stats locust/test/test_stats.py::TestCsvStats::test_csv_stats_writer locust/test/test_stats.py::TestCsvStats::test_csv_stats_writer_full_history locust/test/test_stats.py::TestCsvStats::test_requests_csv_quote_escaping locust/test/test_stats.py::TestCsvStats::test_user_count_in_csv_history_stats locust/test/test_stats.py::TestCsvStats::test_write_csv_files locust/test/test_stats.py::TestCsvStats::test_write_csv_files_full_history locust/test/test_stats.py::TestStatsEntryResponseTimesCache::test_diff_response_times_dicts locust/test/test_stats.py::TestStatsEntryResponseTimesCache::test_get_current_response_time_percentile locust/test/test_stats.py::TestStatsEntryResponseTimesCache::test_latest_total_response_times_pruned locust/test/test_stats.py::TestStatsEntryResponseTimesCache::test_response_times_cached locust/test/test_stats.py::TestStatsEntryResponseTimesCache::test_response_times_not_cached_if_not_enabled locust/test/test_stats.py::TestStatsEntry::test_fail_ratio_with_all_failures locust/test/test_stats.py::TestStatsEntry::test_fail_ratio_with_half_failures locust/test/test_stats.py::TestStatsEntry::test_fail_ratio_with_no_failures locust/test/test_stats.py::TestRequestStatsWithWebserver::test_request_connection_error locust/test/test_stats.py::TestRequestStatsWithWebserver::test_request_stats_content_length locust/test/test_stats.py::TestRequestStatsWithWebserver::test_request_stats_named_endpoint locust/test/test_stats.py::TestRequestStatsWithWebserver::test_request_stats_put locust/test/test_stats.py::TestRequestStatsWithWebserver::test_request_stats_query_variables locust/test/test_stats.py::TestInspectUser::test_get_task_ratio_dict_relative locust/test/test_stats.py::TestInspectUser::test_get_task_ratio_dict_total
locust/stats.py
locust/stats.py