613 lines
405 KiB
HTML
613 lines
405 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en" dir="ltr">
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="norton-safeweb-site-verification" content="24usqpep0ejc5w6hod3dulxwciwp0djs6c6ufp96av3t4whuxovj72wfkdjxu82yacb7430qjm8adbd5ezlt4592dq4zrvadcn9j9n-0btgdzpiojfzno16-fnsnu7xd" />
|
||
|
||
|
||
<link rel="preconnect" href="https://substackcdn.com" />
|
||
|
||
|
||
|
||
<title data-rh="true">Percentile - Alex Ewerlöf Notes</title>
|
||
|
||
<meta data-rh="true" name="theme-color" content="#001426"/><meta data-rh="true" property="og:type" content="article"/><meta data-rh="true" property="og:title" content="Percentile"/><meta data-rh="true" name="twitter:title" content="Percentile"/><meta data-rh="true" name="description" content="What is percentile? Why is it used in the context of reliability engineering and optimization. Play with an open source web app that is created generated and graph random data according to your criteria.
|
||
Discover the key differences between percentile and average in data analysis. This comprehensive guide explains how percentiles work, their applications, and how they compare to averages. Perfect for students and professionals seeking a deeper understanding of these statistical measures. Percentiles are especially useful in the context of service levels (SLI/SLO)."/><meta data-rh="true" property="og:description" content="What is it? Why is it used? And why is it important in the context of reliability engineering?"/><meta data-rh="true" name="twitter:description" content="What is it? Why is it used? And why is it important in the context of reliability engineering?"/><meta data-rh="true" property="og:image" content="https://substackcdn.com/image/fetch/$s_!_LEM!,w_1200,h_675,c_fill,f_jpg,q_auto:good,fl_progressive:steep,g_auto/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png"/><meta data-rh="true" name="twitter:image" content="https://substackcdn.com/image/fetch/$s_!HJbN!,f_auto,q_auto:best,fl_progressive:steep/https%3A%2F%2Falexewerlof.substack.com%2Fapi%2Fv1%2Fpost_preview%2F145056343%2Ftwitter.jpg%3Fversion%3D4"/><meta data-rh="true" name="twitter:card" content="summary_large_image"/><meta data-rh="true" property="article:modified_time" content="2026-06-17T13:32:08.945Z"/>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<style>
|
||
@layer legacy, pencraftReset, pencraft;
|
||
</style>
|
||
|
||
|
||
<link rel="preload" as="style" href="https://substackcdn.com/bundle/theme/main.06a4c4c291d4583811c7.css" />
|
||
|
||
|
||
|
||
<link rel="preload" as="font" href="https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr3icaFF31CPDaYKfF.woff2" crossorigin />
|
||
|
||
|
||
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/11100.cee9fbee.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/86118.c25b9f67.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/93519.6640a5b2.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/42118.cba90b72.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/39522.25128f14.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/47358.668d8a3c.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/94881.cb76fe04.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/27386.72f00430.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/76768.f15fc605.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/41932.97d2663c.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/48409.0588981c.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/32552.313415d5.css" />
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://substackcdn.com/bundle/static/css/27313.92c631cb.css" />
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0, viewport-fit=cover" />
|
||
<meta name="author" content="Alex Ewerlöf" />
|
||
<meta property="og:url" content="https://blog.alexewerlof.com/p/percentile" />
|
||
|
||
|
||
<link rel="canonical" href="https://blog.alexewerlof.com/p/percentile" />
|
||
|
||
|
||
|
||
|
||
|
||
<meta name="google-site-verification" content="HIy4u2xUDZkIs6P0KJw9TSYeq7KqXSPAQvZIs9911qU" />
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<link rel="shortcut icon" href="https://substackcdn.com/image/fetch/$s_!j4nj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Ffavicon.ico">
|
||
|
||
|
||
|
||
<link rel="icon" type="image/png" sizes="16x16" href="https://substackcdn.com/image/fetch/$s_!VSMg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Ffavicon-16x16.png">
|
||
|
||
|
||
|
||
<link rel="icon" type="image/png" sizes="32x32" href="https://substackcdn.com/image/fetch/$s_!CJdc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Ffavicon-32x32.png">
|
||
|
||
|
||
|
||
<link rel="icon" type="image/png" sizes="48x48" href="https://substackcdn.com/image/fetch/$s_!5Qve!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Ffavicon-48x48.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="57x57" href="https://substackcdn.com/image/fetch/$s_!gV2k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-57x57.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="60x60" href="https://substackcdn.com/image/fetch/$s_!L4Uu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-60x60.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="72x72" href="https://substackcdn.com/image/fetch/$s_!X3nD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-72x72.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="76x76" href="https://substackcdn.com/image/fetch/$s_!Xe9B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-76x76.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="114x114" href="https://substackcdn.com/image/fetch/$s_!ef9e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-114x114.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="120x120" href="https://substackcdn.com/image/fetch/$s_!B-Gw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-120x120.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="144x144" href="https://substackcdn.com/image/fetch/$s_!PA8p!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-144x144.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="152x152" href="https://substackcdn.com/image/fetch/$s_!x3Pg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-152x152.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="167x167" href="https://substackcdn.com/image/fetch/$s_!7ISu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-167x167.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="180x180" href="https://substackcdn.com/image/fetch/$s_!k1Y3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-180x180.png">
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="1024x1024" href="https://substackcdn.com/image/fetch/$s_!hatU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0c1d559-cfc9-48dc-9e78-57b4c52d5b70%2Fapple-touch-icon-1024x1024.png">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<link rel="alternate" type="application/rss+xml" href="/feed?sectionId=67723" title="Alex Ewerlöf Notes"/>
|
||
|
||
|
||
|
||
|
||
<style>
|
||
@font-face{font-family:'Merriweather';font-style:italic;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmTCUG36AvH4ZL_Ean2DTA.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Merriweather';font-style:italic;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmTCUG3zAvH4ZL_Ean2DTA.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Merriweather';font-style:italic;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmTCUG34AvH4ZL_Ean2DTA.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Merriweather';font-style:italic;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmTCUG35AvH4ZL_Ean2DTA.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Merriweather';font-style:italic;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmTCUG33AvH4ZL_Ean0.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Merriweather';font-style:normal;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr3icaGV31CPDaYKfFQn0.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Merriweather';font-style:normal;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr3icaEF31CPDaYKfFQn0.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Merriweather';font-style:normal;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr3icaG131CPDaYKfFQn0.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Merriweather';font-style:normal;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr3icaGl31CPDaYKfFQn0.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Merriweather';font-style:normal;font-weight:400;font-display:fallback;src:url(https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr3icaFF31CPDaYKfF.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
|
||
|
||
</style>
|
||
|
||
|
||
|
||
|
||
|
||
<style data-pub-theme-prefix>:root{--color_theme_bg_pop:#FFBC52;--background_pop:#FFBC52;--color_theme_bg_web:#001426;--cover_bg_color:#001426;--cover_bg_color_secondary:#0f2233;--background_pop_darken:#ffb238;--print_on_pop:#ffffff;--color_theme_bg_pop_darken:#ffb238;--color_theme_print_on_pop:#ffffff;--color_theme_bg_pop_20:rgba(255, 188, 82, 0.2);--color_theme_bg_pop_30:rgba(255, 188, 82, 0.3);--print_pop:#ffbc52;--color_theme_accent:#ffbc52;--cover_print_primary:#ffffff;--cover_print_secondary:#d9d9d9;--cover_print_tertiary:#d9d9d9;--cover_border_color:#ffffff;--font_family_headings_preset:'SF Pro Display', -apple-system, system-ui, BlinkMacSystemFont, 'Inter', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';--font_weight_headings_preset:900;--font_family_body_preset:Merriweather,sans-serif;--font_weight_body_preset:400;--font_preset_heading:sans;--font_preset_body:fancy_serif;--home_hero:feature-media;--home_posts:custom;--home_show_top_posts:true;--web_bg_color:#001426;--background_contrast_1:#0f2233;--background_contrast_2:#223443;--background_contrast_3:#485663;--background_contrast_4:#6d7882;--background_contrast_5:#aeb5ba;--color_theme_bg_contrast_1:#0f2233;--color_theme_bg_contrast_2:#223443;--color_theme_bg_contrast_3:#485663;--color_theme_bg_contrast_4:#6d7882;--color_theme_bg_contrast_5:#aeb5ba;--color_theme_bg_elevated:#0f2233;--color_theme_bg_elevated_secondary:#223443;--color_theme_bg_elevated_tertiary:#485663;--color_theme_detail:#192b3c;--background_contrast_pop:rgba(255, 188, 82, 0.4);--color_theme_bg_contrast_pop:rgba(255, 188, 82, 0.4);--theme_bg_is_dark:1;--print_on_web_bg_color:hsl(208.4210526315789, 25.00000000000006%, 90.74509803921569%);--print_secondary_on_web_bg_color:#99a1a8;--footer_bg_color:#000C17;--footer_bg_color_h:208.69565217391306;--footer_bg_color_s:100%;--footer_bg_color_l:4.509803921568627%;--print_on_footer_bg_color:hsl(208.69565217391306, 25.000000000000057%, 90.45098039215686%);--print_secondary_on_footer_bg_color:#999ea2;--footer_bg_contrast_1:#0f1b25;--footer_bg_contrast_2:#222d36;--footer_bg_contrast_3:#485158;--footer_bg_contrast_4:#6d737a;--footer_bg_elevated:#0f1b25;--footer_bg_elevated_secondary:#222d36;--footer_bg_elevated_tertiary:#485158;--footer_detail_color:#19242e;--background_pop_rgb:255, 188, 82;--color_theme_bg_pop_rgb:255, 188, 82;--color_theme_accent_rgb:255, 188, 82;}</style>
|
||
|
||
|
||
<link rel="stylesheet" href="https://substackcdn.com/bundle/theme/main.06a4c4c291d4583811c7.css" />
|
||
|
||
|
||
<style data-pub-theme-postfix></style>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<script async="true" src="https://www.googletagmanager.com/gtag/js?id=G-G8RXW18CW7&l=GA4DataLayer" >
|
||
</script>
|
||
|
||
</head>
|
||
|
||
<body class="">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<div id="entry">
|
||
<div id="main" style="--post-preview-border-radius:var(--border-radius-xs);" class="main typography use-theme-bg"><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><div data-testid="navbar" class="main-menu"><div class="mainMenuContent-DME8DR"><div style="position:relative;height:93px;" class="pencraft pc-display-flex pc-gap-12 pc-paddingLeft-20 pc-paddingRight-20 pc-paddingTop-0 pc-paddingBottom-0 pc-justifyContent-space-between pc-alignItems-center pc-reset border-bottom-detail-k1F6C4 topBar-pIF0J1"><div style="visibility:visible;flex:1 0 0;" class="logoContainer-p12gJb"><a href="/" native class="pencraft pc-display-contents pc-reset"><div draggable="false" class="pencraft pc-display-flex pc-position-relative pc-reset"><div style="width:40px;height:40px;" class="pencraft pc-display-flex pc-reset bg-white-ZBV5av pc-borderRadius-sm overflow-hidden-WdpwT6 sizing-border-box-DggLA4"><picture class="pencraft pc-display-contents pc-reset"><source type="image/webp" sizes="40px" srcset="https://substackcdn.com/image/fetch/$s_!_Ur2!,w_40,h_40,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png 40w, https://substackcdn.com/image/fetch/$s_!_Ur2!,w_80,h_80,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png 80w, https://substackcdn.com/image/fetch/$s_!_Ur2!,w_120,h_120,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png 120w" style="display:none;"/><img style="object-fit:cover;width:40px;height:40px;" src="https://substackcdn.com/image/fetch/$s_!_Ur2!,w_40,h_40,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png" srcset="https://substackcdn.com/image/fetch/$s_!_Ur2!,w_40,h_40,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png 40w, https://substackcdn.com/image/fetch/$s_!_Ur2!,w_80,h_80,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png 80w, https://substackcdn.com/image/fetch/$s_!_Ur2!,w_120,h_120,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png 120w" sizes="40px" alt="Alex Ewerlöf Notes" draggable="false" class="pencraft pc-reset"/></picture></div></div></a></div><div style="flex-basis:0px;flex-grow:2;min-width:0px;display:flex;justify-content:center;" class="logoTopCenterSlot-hss6WZ"><div style="flex-grow:0;" class="titleContainer-DJYq5v overflowVisible-joA5t0"><h1 id="wordlogo" class="pencraft pc-reset font-pub-headings-FE5byy reset-IxiVJZ title-oOnUGd titleWithWordmark-GfqxEZ"><a href="/" class="pencraft pc-display-contents pc-reset"><img alt="Alex Ewerlöf Notes" src="https://substackcdn.com/image/fetch/$s_!3m6V!,e_trim:10:white/e_trim:10:transparent/h_84,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd56dc7c-4b9f-43f2-99a1-ecc995284940_1200x256.png" style="max-height:42px;" class="wordmark-WcDTTu"/></a></h1></div></div><div style="flex-basis:0px;flex-grow:1;min-width:fit-content;" class="pencraft pc-display-flex pc-justifyContent-flex-end pc-alignItems-center pc-reset buttonsContainerContainer-ThaN_w"><div class="buttonsContainer-SJBuep"><div class="pencraft pc-display-flex pc-gap-8 pc-justifyContent-flex-end pc-alignItems-center pc-reset navbar-buttons"><div class="pencraft pc-display-flex pc-gap-4 pc-reset"><span data-state="closed"><button tabindex="0" type="button" aria-label="Search" class="pencraft pc-reset pencraft iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_md-gCDS3o priority_tertiary-rlke8z"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg></button></span><button tabindex="0" type="button" aria-label="Share Publication" id="radix-P0-4" aria-haspopup="menu" aria-expanded="false" data-state="closed" class="pencraft pc-reset pencraft iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_md-gCDS3o priority_tertiary-rlke8z"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-share"><path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"></path><polyline points="16 6 12 2 8 6"></polyline><line x1="12" x2="12" y1="2" y2="15"></line></svg></button></div><button tabindex="0" type="button" data-testid="noncontributor-cta-button" class="pencraft pc-reset pencraft buttonBase-GK1x3M buttonText-X0uSmG buttonStyle-r7yGCK priority_primary-RfbeYt size_md-gCDS3o">Subscribe</button><button tabindex="0" data-native="true" type="button" data-href="https://substack.com/sign-in?redirect=%2Fp%2Fpercentile&for_pub=alexewerlof" class="pencraft pc-reset pencraft buttonBase-GK1x3M buttonText-X0uSmG buttonStyle-r7yGCK priority_tertiary-rlke8z size_md-gCDS3o">Sign in</button></div></div></div></div></div><div style="background-color:#001426;height:94px;"></div></div></div><div><script nonce="xy9aAgQANmHbh_qzyYJzag" type="application/ld+json">{"@context":"https://schema.org","@type":"NewsArticle","url":"https://blog.alexewerlof.com/p/percentile","mainEntityOfPage":"https://blog.alexewerlof.com/p/percentile","headline":"Percentile","description":"What is percentile? Why is it used in the context of reliability engineering and optimization. Play with an open source web app that is created generated and graph random data according to your criteria.\nDiscover the key differences between percentile and average in data analysis. This comprehensive guide explains how percentiles work, their applications, and how they compare to averages. Perfect for students and professionals seeking a deeper understanding of these statistical measures. Percentiles are especially useful in the context of service levels (SLI/SLO).","image":[{"@type":"ImageObject","url":"https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png"}],"datePublished":"2024-06-25T17:06:35+00:00","dateModified":"2024-06-25T17:06:35+00:00","isAccessibleForFree":true,"author":[{"@type":"Person","name":"Alex Ewerl\u00F6f","url":"https://substack.com/@alexewerlof","description":"Writes about technical leadership, growth mindset, and system reliability engineering. Senior Staff Engineer, MSc Systems Engineering from KTH, Stockholmer, dad, amateur artist. Read more here: https://www.alexewerlof.com/who","identifier":"user:87732486","sameAs":["https://twitter.com/alexewerlof"],"image":{"@type":"ImageObject","contentUrl":"https://substackcdn.com/image/fetch/$s_!IRtW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg","thumbnailUrl":"https://substackcdn.com/image/fetch/$s_!IRtW!,w_128,h_128,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg"}}],"publisher":{"@type":"Organization","name":"Alex Ewerl\u00F6f Notes","url":"https://blog.alexewerlof.com","description":"Technical Leadership, Reliability Engineering, Growth","interactionStatistic":{"@type":"InteractionCounter","name":"Subscribers","interactionType":"https://schema.org/SubscribeAction","userInteractionCount":10000},"identifier":"pub:1002265","logo":{"@type":"ImageObject","url":"https://substackcdn.com/image/fetch/$s_!_Ur2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png","contentUrl":"https://substackcdn.com/image/fetch/$s_!_Ur2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png","thumbnailUrl":"https://substackcdn.com/image/fetch/$s_!_Ur2!,w_128,h_128,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png"},"image":{"@type":"ImageObject","url":"https://substackcdn.com/image/fetch/$s_!_Ur2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png","contentUrl":"https://substackcdn.com/image/fetch/$s_!_Ur2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png","thumbnailUrl":"https://substackcdn.com/image/fetch/$s_!_Ur2!,w_128,h_128,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png"},"sameAs":["https://twitter.com/alexewerlof"]},"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":31},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":3},{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2}]}</script><script nonce="xy9aAgQANmHbh_qzyYJzag" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Alex Ewerl\u00F6f Notes","item":"https://blog.alexewerlof.com"},{"@type":"ListItem","position":2,"name":"Percentile","item":"https://blog.alexewerlof.com/p/percentile"}]}</script><div aria-label="Post" role="main" class="single-post-container"><div class="container"><div class="single-post"><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><article class="typography newsletter-post post"><div role="region" aria-label="Post header" class="post-header"><div class="pencraft pc-display-flex pc-reset post-label"><a href="https://blog.alexewerlof.com/s/sre/?utm_source=substack&utm_medium=menu" class="pencraft pc-reset color-secondary-ls1g8s line-height-20-t4M0El font-meta-MWBumP size-14-MLPa7j weight-medium-fw81nC transform-uppercase-yKDgcq reset-IxiVJZ meta-EgzBVA">Reliability Engineering</a></div><h1 dir="auto" class="post-title published title-X77sOw">Percentile</h1><h3 dir="auto" class="subtitle subtitle-HEEcLo">What is it? Why is it used? And why is it important in the context of optimization and reliability engineering? Bonus: a browser app that lets you play with data.</h3><div aria-label="Post UFI" role="region" class="pencraft pc-display-flex pc-flexDirection-column pc-paddingBottom-16 pc-reset"><div class="pencraft pc-display-flex pc-paddingTop-16 pc-paddingBottom-16 pc-justifyContent-space-between pc-alignItems-center pc-reset"><div class="pencraft pc-display-flex pc-gap-12 pc-alignItems-center pc-reset byline-wrapper"><div class="pencraft pc-display-flex pc-reset"><div class="pencraft pc-display-flex pc-flexDirection-row pc-gap-8 pc-alignItems-center pc-justifyContent-flex-start pc-reset"><div style="--scale:36px;--offset:9px;--border-width:4.5px;" class="pencraft pc-display-flex pc-flexDirection-row pc-alignItems-center pc-justifyContent-flex-start pc-reset ltr-qDBmby"><a href="https://substack.com/@alexewerlof" aria-label="View Alex Ewerlöf's profile" class="pencraft pc-display-contents pc-reset"><div style="--scale:36px;" tabindex="0" class="pencraft pc-display-flex pc-width-36 pc-height-36 pc-justifyContent-center pc-alignItems-center pc-position-relative pc-reset bg-secondary-UUD3_J flex-auto-j3S2WA animate-XFJxE4 outline-detail-vcQLyr pc-borderRadius-full overflow-hidden-WdpwT6 sizing-border-box-DggLA4 pressable-sm-YIJFKJ showFocus-sk_vEm container-TAtrWj interactive-UkK0V6 avatar-u8q6xB last-JfNEJ_"><div style="--scale:36px;" title="Alex Ewerlöf" class="pencraft pc-display-flex pc-width-36 pc-height-36 pc-justifyContent-center pc-alignItems-center pc-position-relative pc-reset bg-secondary-UUD3_J flex-auto-j3S2WA outline-detail-vcQLyr pc-borderRadius-full overflow-hidden-WdpwT6 sizing-border-box-DggLA4 container-TAtrWj"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IRtW!,w_36,h_36,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg 1x, https://substackcdn.com/image/fetch/$s_!IRtW!,w_72,h_72,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg 2x, https://substackcdn.com/image/fetch/$s_!IRtW!,w_108,h_108,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg 3x"/><img src="https://substackcdn.com/image/fetch/$s_!IRtW!,w_36,h_36,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg" alt="Alex Ewerlöf's avatar" srcset="https://substackcdn.com/image/fetch/$s_!IRtW!,w_36,h_36,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg 1x, https://substackcdn.com/image/fetch/$s_!IRtW!,w_72,h_72,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg 2x, https://substackcdn.com/image/fetch/$s_!IRtW!,w_108,h_108,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg 3x" width="36" height="36" draggable="false" class="img-OACg1c object-fit-cover-u4ReeV pencraft pc-reset"/></picture></div></div></a></div></div></div><div class="pencraft pc-display-flex pc-flexDirection-column pc-reset"><div class="pencraft pc-reset color-primary-zABazT line-height-20-t4M0El font-meta-MWBumP size-11-NuY2Zx weight-medium-fw81nC transform-uppercase-yKDgcq reset-IxiVJZ meta-EgzBVA"><span style="min-width:0;" data-state="closed"><a href="https://substack.com/@alexewerlof" class="pencraft pc-reset decoration-hover-underline-ClDVRM reset-IxiVJZ">Alex Ewerlöf</a></span></div><div class="pencraft pc-display-flex pc-gap-4 pc-reset"><div class="pencraft pc-reset color-secondary-ls1g8s line-height-20-t4M0El font-meta-MWBumP size-11-NuY2Zx weight-medium-fw81nC transform-uppercase-yKDgcq reset-IxiVJZ meta-EgzBVA"><time datetime="2024-06-25T17:06:35.019Z" title="2024-06-25T17:06:35.019Z">Jun 25, 2024</time></div></div></div></div></div><div class="pencraft pc-display-flex pc-gap-16 pc-justifyContent-space-between pc-alignItems-center pc-reset flex-grow-rzmknG post-ufi"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><div class="like-button-container post-ufi-button style-button"><button tabindex="0" type="button" aria-label="Like (31)" aria-pressed="false" class="pencraft pc-reset pencraft post-ufi-button style-button has-label with-border"><svg aria-hidden="true" style="height:20px;width:20px;" width="20" height="20" viewBox="0 0 24 24" fill="#000000" stroke-width="2" stroke="#000" xmlns="http://www.w3.org/2000/svg" class="icon"><g><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-heart"><path d="M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"></path></svg></g></svg><div class="label">31</div></button></div><button tabindex="0" type="button" aria-label="View comments (2)" data-href="https://blog.alexewerlof.com/p/percentile/comments" class="pencraft pc-reset pencraft post-ufi-button style-button post-ufi-comment-button has-label with-border"><svg aria-hidden="true" style="height:20px;width:20px;" width="20" height="20" viewBox="0 0 24 24" fill="#000000" stroke-width="2" stroke="#000" xmlns="http://www.w3.org/2000/svg" class="icon"><g><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-circle"><path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"></path></svg></g></svg><div class="label">2</div></button><button tabindex="0" type="button" id="radix-P0-27" aria-haspopup="menu" aria-expanded="false" data-state="closed" class="pencraft pc-reset pencraft post-ufi-button style-button has-label with-border"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="2" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg><div class="label">3</div></button></div><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft post-ufi-button style-button has-label with-border"><div class="label">Share</div></button></div></div></div></div><div class="visibility-check"></div><div><div class="dt-post-body"><div class="available-content"><div dir="auto" class="body markup"><p>In simple terms, we can think of a metric as an array of values with a timestamp and some optional tags.</p><p>For example, the latency metric values for an API endpoint may look like this:</p><p><code><span>metric_data = [</span><br/><span> { epoch: 1716898141, 200, tags: [ “api”, “GET” ] },</span><br/><span> { epoch: 1716898142, 212, tags: [ “api”, “GET” ] },</span><br/><span> { epoch: 1716898143, 102, tags: [ “api”, “GET” ] },</span><br/><span> { epoch: 1716898144, 290, tags: [ “api”, “GET” ] },</span><br/><span> { epoch: 1716898145, 180, tags: [ “api”, “GET” ] },</span><br/><span> { epoch: 1716898146, 3000, tags: [ “api”, “GET” ] },</span><br/><span> { epoch: 1716898147, 153, tags: [ “api”, “GET” ] },</span><br/><span> …</span><br/><span>]</span></code></p><p>Let’s ignore the timing and tags for now to focus on the values:</p><p><code>metric_values = [ 200, 212, 102, 290, 180, 3000, 153, … ]</code></p><p><span>In this dataset, most latency values are in the range [</span><code>100ms..200ms] </code><span>but there’s an outlier there: </span><code>3000ms</code><span>. What happened there? Before we look into that, let’s see if one of the most common tools can help: average.</span></p><p>The average of the whole dataset including the outlier is:</p><p><code>average([200, 212, 102, 290, 180, 3000, 153]) = 591ms</code></p><p>Without the outlier we have:</p><p><code>average([200, 212, 102, 290, 180, 153]) = 189.5ms</code></p><p><span>So, it is </span><code>591ms</code><span> versus </span><code>189.5ms</code><span>! Pretty large difference!</span></p><p>That is how average works: it hides those outliers and makes all data look equally bad.</p><p>Average often does not represent an actual data point.</p><p><span>For example, the average American family </span><a href="https://www.statista.com/statistics/718084/average-number-of-own-children-per-family/">has 1.94 children</a><span>! I know what one child looks like, but what exactly is 0.94 child? 👶And apparently all families have it! 😄Even the ones with no kids! 🤯</span></p><p>If we want to focus our optimization efforts on the outliers, we need a tool that’s better than average (no pun intended)! We want a tool that picks actual outlier data points.</p><p>Say hello to percentiles!</p><h1 class="header-anchor-post">Percentiles<div class="pencraft pc-display-flex pc-alignItems-center pc-position-absolute pc-reset header-anchor-parent"><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><div id="§percentiles" class="pencraft pc-reset header-anchor offset-top"></div><button tabindex="0" type="button" aria-label="Link" data-href="https://blog.alexewerlof.com/i/145056343/percentiles" class="pencraft pc-reset pencraft iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_sm-G3LciD priority_secondary-S63h9o"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></button></div></div></h1><p>Percentile is the value above a percentage of all data points.</p><p>OK, that was a mouthful. 🤭Let’s say we have a metric with these values:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!42w4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!42w4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 424w, https://substackcdn.com/image/fetch/$s_!42w4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 848w, https://substackcdn.com/image/fetch/$s_!42w4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 1272w, https://substackcdn.com/image/fetch/$s_!42w4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!42w4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png" width="1456" height="450" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":450,"width":1456,"resizeWidth":null,"bytes":589623,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!42w4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 424w, https://substackcdn.com/image/fetch/$s_!42w4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 848w, https://substackcdn.com/image/fetch/$s_!42w4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 1272w, https://substackcdn.com/image/fetch/$s_!42w4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>These are 1000 values for a metric that is mostly hovering around 11000 to 12000 but occasionally there are outliers which are significantly higher or lower.</p><p>The purpose of percentiles is to deal with outliers (either remove them or flag them).</p><p>Why? I think this image does a pretty decent job of describing the problem with metrics:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!OSjx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OSjx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 424w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 848w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!OSjx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg" width="526" height="524" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":524,"width":526,"resizeWidth":null,"bytes":null,"alt":null,"title":null,"type":null,"href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!OSjx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 424w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 848w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The idea is very simple and intuitive:</p><ol><li><p>Sort the data</p></li><li><p><span>Pick the data at the index that is at </span><code>p%</code><span> of the number of data points</span></p></li></ol><p>Let’s try that with the dataset above.</p><ol><li><p>The sorted data looks like this:</p></li></ol><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!PpmL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PpmL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 424w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 848w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 1272w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!PpmL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png" width="1456" height="453" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":453,"width":1456,"resizeWidth":null,"bytes":56139,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!PpmL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 424w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 848w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 1272w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><ol start="2"><li><p><span>The percentile </span><code>P0, P1, P2, …, P100</code><span> look like this:</span></p></li></ol><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!PPQe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PPQe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 424w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 848w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 1272w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!PPQe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png" width="1456" height="427" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":427,"width":1456,"resizeWidth":null,"bytes":109706,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!PPQe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 424w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 848w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 1272w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Do you spot the similarity? That’s because percentiles are directly deduced from the sorted data points.</p><p><em>Note: for consistency, in this article we only sort the data in ascending order, but the data may as well be sorted in descending order. The sorting order is not a requirement for percentiles.</em></p><p>Now we can write a small function that returns a given data point at a desired percentile:</p><div data-attrs="{"innerHTML":"<div id=\"gist131039584\" class=\"gist\">\n <div class=\"gist-file\" translate=\"no\" data-color-mode=\"light\" data-light-theme=\"light\">\n <div class=\"gist-data\">\n <div class=\"js-gist-file-update-container js-task-list-container\">\n <div id=\"file-percentile-js\" class=\"file my-2\">\n \n <div itemprop=\"text\" class=\"Box-body p-0 blob-wrapper data type-javascript \">\n\n \n<div class=\"js-check-bidi js-blob-code-container blob-code-content\">\n\n <template class=\"js-file-alert-template\">\n <div data-view-component=\"true\" class=\"flash flash-warn flash-full d-flex flex-items-center\">\n <svg aria-hidden=\"true\" height=\"16\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" data-view-component=\"true\" class=\"octicon octicon-alert\">\n <path d=\"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"></path>\n</svg>\n <span>\n This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.\n <a class=\"Link--inTextBlock\" href=\"https://github.co/hiddenchars\" target=\"_blank\">Learn more about bidirectional Unicode characters</a>\n </span>\n\n\n <div data-view-component=\"true\" class=\"flash-action\"> <a href=\"{{ revealButtonHref }}\" data-view-component=\"true\" class=\"btn-sm btn\"> Show hidden characters\n</a>\n</div>\n</div></template>\n<template class=\"js-line-alert-template\">\n <span aria-label=\"This line has hidden Unicode characters\" data-view-component=\"true\" class=\"line-alert tooltipped tooltipped-e\">\n <svg aria-hidden=\"true\" height=\"16\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" data-view-component=\"true\" class=\"octicon octicon-alert\">\n <path d=\"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"></path>\n</svg>\n</span></template>\n\n <table data-hpc class=\"highlight tab-size js-file-line-container js-code-nav-container js-tagsearch-file\" data-tab-size=\"8\" data-paste-markdown-skip data-tagsearch-lang=\"JavaScript\" data-tagsearch-path=\"percentile.js\">\n <tr>\n <td id=\"file-percentile-js-L1\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"1\"></td>\n <td id=\"file-percentile-js-LC1\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c>/**</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L2\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"2\"></td>\n <td id=\"file-percentile-js-LC2\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c> * Gets the index of the element in an array that corresponds to the given percentile</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L3\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"3\"></td>\n <td id=\"file-percentile-js-LC3\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c> * @param {number} arrLength the length of the array that we want to calculate its percentile</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L4\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"4\"></td>\n <td id=\"file-percentile-js-LC4\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c> * @param {number} p the percentile in the range [0..100] inclusive</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L5\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"5\"></td>\n <td id=\"file-percentile-js-LC5\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c> * @returns index of the array element that corresponds to the given percentile</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L6\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"6\"></td>\n <td id=\"file-percentile-js-LC6\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c> */</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L7\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"7\"></td>\n <td id=\"file-percentile-js-LC7\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-k>export</span> <span class=pl-k>function</span> <span class=pl-en>percentileIndex</span><span class=pl-kos>(</span><span class=pl-s1>arrLength</span><span class=pl-kos>,</span> <span class=pl-s1>p</span><span class=pl-kos>)</span> <span class=pl-kos>{</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L8\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"8\"></td>\n <td id=\"file-percentile-js-LC8\" class=\"blob-code blob-code-inner js-file-line\"> <span class=pl-k>const</span> <span class=pl-s1>maxPossibleIndex</span> <span class=pl-c1>=</span> <span class=pl-s1>arrLength</span> <span class=pl-c1>-</span> <span class=pl-c1>1</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L9\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"9\"></td>\n <td id=\"file-percentile-js-LC9\" class=\"blob-code blob-code-inner js-file-line\"> <span class=pl-k>return</span> <span class=pl-v>Math</span><span class=pl-kos>.</span><span class=pl-en>ceil</span><span class=pl-kos>(</span><span class=pl-s1>maxPossibleIndex</span> <span class=pl-c1>*</span> <span class=pl-s1>p</span> <span class=pl-c1>/</span> <span class=pl-c1>100</span><span class=pl-kos>)</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L10\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"10\"></td>\n <td id=\"file-percentile-js-LC10\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-kos>}</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L11\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"11\"></td>\n <td id=\"file-percentile-js-LC11\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L12\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"12\"></td>\n <td id=\"file-percentile-js-LC12\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c>/**</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L13\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"13\"></td>\n <td id=\"file-percentile-js-LC13\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c> * @returns the value at the nth location in the array where n is between 0 to array.length</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L14\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"14\"></td>\n <td id=\"file-percentile-js-LC14\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-c> */</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L15\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"15\"></td>\n <td id=\"file-percentile-js-LC15\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-k>export</span> <span class=pl-k>function</span> <span class=pl-en>percentile</span><span class=pl-kos>(</span><span class=pl-s1>arr</span><span class=pl-kos>,</span> <span class=pl-s1>p</span><span class=pl-kos>)</span> <span class=pl-kos>{</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L16\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"16\"></td>\n <td id=\"file-percentile-js-LC16\" class=\"blob-code blob-code-inner js-file-line\"> <span class=pl-k>return</span> <span class=pl-s1>arr</span><span class=pl-kos>[</span><span class=pl-en>percentileIndex</span><span class=pl-kos>(</span><span class=pl-s1>arr</span><span class=pl-kos>.</span><span class=pl-c1>length</span><span class=pl-kos>)</span><span class=pl-kos>]</span></td>\n </tr>\n <tr>\n <td id=\"file-percentile-js-L17\" class=\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\" data-line-number=\"17\"></td>\n <td id=\"file-percentile-js-LC17\" class=\"blob-code blob-code-inner js-file-line\"><span class=pl-kos>}</span></td>\n </tr>\n </table>\n</div>\n\n\n </div>\n\n </div>\n</div>\n\n </div>\n <div class=\"gist-meta\">\n <a href=\"https://gist.github.com/alexewerlof/4f1b19e1818e9135abf83fc6180ec17b/raw/2d6dc92d466485352174dc446e8265a55d295330/percentile.js\" style=\"float:right\" class=\"Link--inTextBlock\">view raw</a>\n <a href=\"https://gist.github.com/alexewerlof/4f1b19e1818e9135abf83fc6180ec17b#file-percentile-js\" class=\"Link--inTextBlock\">\n percentile.js\n </a>\n hosted with &#10084; by <a class=\"Link--inTextBlock\" href=\"https://github.com\">GitHub</a>\n </div>\n </div>\n</div>\n","stylesheet":"https://github.githubassets.com/assets/gist-embed-c38b724e3032.css"}" data-component-name="GitgistToDOM" class="github-gist"><link rel="stylesheet" href="https://github.githubassets.com/assets/gist-embed-c38b724e3032.css"/><div id="gist131039584" class="gist"><span>
|
||
</span><div data-color-mode="light" data-light-theme="light" class="gist-file"><span>
|
||
</span><div class="gist-data"><span>
|
||
</span><div class="js-gist-file-update-container js-task-list-container"><span>
|
||
</span><div id="file-percentile-js" class="file my-2"><span>
|
||
|
||
</span><div itemprop="text" class="Box-body p-0 blob-wrapper data type-javascript "><span>
|
||
|
||
|
||
</span><div class="js-check-bidi js-blob-code-container blob-code-content"><span>
|
||
|
||
|
||
</span><div data-view-component="true" class="flash flash-warn flash-full d-flex flex-items-center"><span>
|
||
|
||
|
||
|
||
</span><span><span>
|
||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
|
||
</span><a href="https://github.co/hiddenchars" target="_blank" class="Link--inTextBlock">Learn more about bidirectional Unicode characters</a><span>
|
||
</span></span><span>
|
||
|
||
|
||
</span><div data-view-component="true" class="flash-action"><span> </span><a href="{{ revealButtonHref }}" data-view-component="true" class="btn-sm btn"> Show hidden characters
|
||
</a><span>
|
||
</span></div><span>
|
||
</span></div><span>
|
||
|
||
</span><span data-view-component="true" class="line-alert tooltipped tooltipped-e">
|
||
|
||
|
||
|
||
</span><span>
|
||
|
||
</span><table data-hpc data-tab-size="8" data-paste-markdown-skip data-tagsearch-lang="JavaScript" data-tagsearch-path="percentile.js" class="highlight tab-size js-file-line-container js-code-nav-container js-tagsearch-file"><span>
|
||
</span><tbody><tr><span>
|
||
</span><td id="file-percentile-js-L1" data-line-number="1" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC1" class="blob-code blob-code-inner js-file-line"><span class="pl-c">/**</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L2" data-line-number="2" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC2" class="blob-code blob-code-inner js-file-line"><span class="pl-c"> * Gets the index of the element in an array that corresponds to the given percentile</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L3" data-line-number="3" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC3" class="blob-code blob-code-inner js-file-line"><span class="pl-c"> * @param {number} arrLength the length of the array that we want to calculate its percentile</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L4" data-line-number="4" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC4" class="blob-code blob-code-inner js-file-line"><span class="pl-c"> * @param {number} p the percentile in the range [0..100] inclusive</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L5" data-line-number="5" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC5" class="blob-code blob-code-inner js-file-line"><span class="pl-c"> * @returns index of the array element that corresponds to the given percentile</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L6" data-line-number="6" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC6" class="blob-code blob-code-inner js-file-line"><span class="pl-c"> */</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L7" data-line-number="7" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC7" class="blob-code blob-code-inner js-file-line"><span class="pl-k">export</span><span> </span><span class="pl-k">function</span><span> </span><span class="pl-en">percentileIndex</span><span class="pl-kos">(</span><span class="pl-s1">arrLength</span><span class="pl-kos">,</span><span> </span><span class="pl-s1">p</span><span class="pl-kos">)</span><span> </span><span class="pl-kos">{</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L8" data-line-number="8" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC8" class="blob-code blob-code-inner js-file-line"><span> </span><span class="pl-k">const</span><span> </span><span class="pl-s1">maxPossibleIndex</span><span> </span><span class="pl-c1">=</span><span> </span><span class="pl-s1">arrLength</span><span> </span><span class="pl-c1">-</span><span> </span><span class="pl-c1">1</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L9" data-line-number="9" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC9" class="blob-code blob-code-inner js-file-line"><span> </span><span class="pl-k">return</span><span> </span><span class="pl-v">Math</span><span class="pl-kos">.</span><span class="pl-en">ceil</span><span class="pl-kos">(</span><span class="pl-s1">maxPossibleIndex</span><span> </span><span class="pl-c1">*</span><span> </span><span class="pl-s1">p</span><span> </span><span class="pl-c1">/</span><span> </span><span class="pl-c1">100</span><span class="pl-kos">)</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L10" data-line-number="10" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC10" class="blob-code blob-code-inner js-file-line"><span class="pl-kos">}</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L11" data-line-number="11" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC11" class="blob-code blob-code-inner js-file-line">
|
||
</td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L12" data-line-number="12" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC12" class="blob-code blob-code-inner js-file-line"><span class="pl-c">/**</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L13" data-line-number="13" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC13" class="blob-code blob-code-inner js-file-line"><span class="pl-c"> * @returns the value at the nth location in the array where n is between 0 to array.length</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L14" data-line-number="14" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC14" class="blob-code blob-code-inner js-file-line"><span class="pl-c"> */</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L15" data-line-number="15" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC15" class="blob-code blob-code-inner js-file-line"><span class="pl-k">export</span><span> </span><span class="pl-k">function</span><span> </span><span class="pl-en">percentile</span><span class="pl-kos">(</span><span class="pl-s1">arr</span><span class="pl-kos">,</span><span> </span><span class="pl-s1">p</span><span class="pl-kos">)</span><span> </span><span class="pl-kos">{</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L16" data-line-number="16" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC16" class="blob-code blob-code-inner js-file-line"><span> </span><span class="pl-k">return</span><span> </span><span class="pl-s1">arr</span><span class="pl-kos">[</span><span class="pl-en">percentileIndex</span><span class="pl-kos">(</span><span class="pl-s1">arr</span><span class="pl-kos">.</span><span class="pl-c1">length</span><span class="pl-kos">)</span><span class="pl-kos">]</span></td><span>
|
||
</span></tr><span>
|
||
</span><tr><span>
|
||
</span><td id="file-percentile-js-L17" data-line-number="17" class="blob-num js-line-number js-code-nav-line-number js-blob-rnum"></td><span>
|
||
</span><td id="file-percentile-js-LC17" class="blob-code blob-code-inner js-file-line"><span class="pl-kos">}</span></td><span>
|
||
</span></tr><span>
|
||
</span></tbody></table><span>
|
||
</span></div><span>
|
||
|
||
|
||
</span></div><span>
|
||
|
||
</span></div><span>
|
||
</span></div><span>
|
||
|
||
</span></div><span>
|
||
</span><div class="gist-meta"><span>
|
||
</span><a href="https://gist.github.com/alexewerlof/4f1b19e1818e9135abf83fc6180ec17b/raw/2d6dc92d466485352174dc446e8265a55d295330/percentile.js" style="float:right;" class="Link--inTextBlock">view raw</a><span>
|
||
</span><a href="https://gist.github.com/alexewerlof/4f1b19e1818e9135abf83fc6180ec17b#file-percentile-js" class="Link--inTextBlock">
|
||
percentile.js
|
||
</a><span>
|
||
hosted with ❤ by </span><a href="https://github.com" class="Link--inTextBlock">GitHub</a><span>
|
||
</span></div><span>
|
||
</span></div><span>
|
||
</span></div><span>
|
||
</span></div><p>The code is pretty simple. It just returns the array element at the nth position where n is at the p% position of the array length.</p><p>Example:</p><ul><li><p><span>If the array has </span><code>100 </code><span>elements, </span><code>P99 </code><span>is the item at the </span><code>99th</code><span> position. For languages that start the array from </span><code>0</code><span>, that would be </span><code>arr[98]</code></p></li><li><p><span>If the array has </span><code>1000 </code><span>elements, </span><code>P99 </code><span>is the </span><code>990th </code><span>element or </span><code>arr[989]</code></p></li><li><p><span>If the array has </span><code>24 </code><span>elements, </span><code>P95 </code><span>is the </span><code>23rd </code><span>element or </span><code>arr[22]</code><span>. That’s because the maximum possible array index is </span><code>23</code><span> and </span><code>95%23 = 21.85. Math.ceil(21.85) = 22</code><span>. Since this array is so short, even </span><code>P99 </code><span>is also at </span><code>arr[22]</code><span>.</span></p></li></ul><p><span>In simple terms, </span><code>P99 </code><span>is the value that shows up at the 99% position in a sorted array.</span></p><p><span>While </span><code>P99</code><span>, </span><code>P95</code><span>, or even </span><code>P90 </code><span>are most used, there’s no rule that excludes other numbers between 0-100.</span></p><p>For example, if you want to find unusually small numbers in a dataset, you can look for P1 or even P0.1.</p><p><code>P0.1</code><span> may look confusing, but it uses the same rules as before: find the data at the </span><code>0.1%</code><span> of the sorted dataset.</span></p><p>Example:</p><ul><li><p><span>If the array has </span><code>100 </code><span>elements, </span><code>P0.1 </code><span>is the item at the </span><code>2nd</code><span> position. For languages that start the array from 0, that would be </span><code>arr[1]</code></p></li><li><p><span>If the array has </span><code>10000 </code><span>elements, </span><code>P0.1 </code><span>is the </span><code>11th </code><span>element or </span><code>arr[10]</code><span>. That’s because the maximum possible array index is </span><code>9999 </code><span>and </span><code>0.1%9999 = 9.999. Math.ceil(9.999) = 10</code><span>.</span></p></li></ul><p>Other notable percentiles are:</p><ul><li><p><span>P10: Also known as </span><strong>1st Decile</strong></p></li><li><p><span>P20: Also known as </span><strong>2nd Decile</strong></p></li><li><p><span>P25: Also known as </span><strong>1st Quartile</strong></p></li><li><p><span>P50: Also known as </span><em>median</em><span> or </span><strong>2nd Quartile </strong><span>(this is not the average, but the item that is located exactly in the middle of the array)</span></p></li><li><p><span>P75: Also known as </span><strong>3rd Quartile</strong></p></li><li><p><span>P80: Also known as </span><strong>8th Decile</strong></p></li></ul><p><code>P50</code><span> is an interesting one. Instead of average, it represents the data in the middle of a sorted array.</span></p><p><span>For example, although the average American has </span><a href="https://www.statista.com/statistics/718084/average-number-of-own-children-per-family/">1.89 children</a><span>, the median family has either 0, 1, or 2 children. I couldn’t find the stats in a way that allowed me to calculate the median, but you get the point: </span><strong>percentile</strong><span> </span><em>selects</em><span> a data point from the array whereas </span><strong>average </strong><em>aggregates</em><span> the data points.</span></p><p><span>You don’t have to care about </span><em>decile</em><span> and </span><em>quartile</em><span>. I just wrote about them for the sake of inclusivity. In practice we almost exclusively work with </span><em>percentile</em><span>.</span></p><p>For the exact dataset that was visualized in this page, we have the following stats:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!itdg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!itdg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 424w, https://substackcdn.com/image/fetch/$s_!itdg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 848w, https://substackcdn.com/image/fetch/$s_!itdg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 1272w, https://substackcdn.com/image/fetch/$s_!itdg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!itdg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png" width="633" height="498" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":498,"width":633,"resizeWidth":null,"bytes":133203,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!itdg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 424w, https://substackcdn.com/image/fetch/$s_!itdg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 848w, https://substackcdn.com/image/fetch/$s_!itdg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 1272w, https://substackcdn.com/image/fetch/$s_!itdg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><span>If you want to play with different datasets, I’ve written </span><a href="https://alexewerlof.github.io/percentile/">a free open-source tool</a><span> that helped me learn and visualize these concepts.</span></p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!_LEM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_LEM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 424w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 848w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 1272w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!_LEM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png" width="1174" height="1280" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":1280,"width":1174,"resizeWidth":null,"bytes":290093,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!_LEM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 424w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 848w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 1272w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><span>The interface is a bit crud at the moment, but I have big plans for integrating it to the </span><a href="https://slc.alexewerlof.com/">Service Leval Calculator</a><span>.</span></p><div data-component-name="DigestPostEmbed" class="digestPostEmbed-flwiST"><a href="https://blog.alexewerlof.com/p/slc" rel="noopener" target="_blank"><div class="pencraft pc-display-flex pc-gap-16 pc-reset"><div style="width:70px;height:70px;" class="pencraft pc-reset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iHp5!,w_140,h_140,c_fill,f_webp,q_auto:good,fl_progressive:steep,g_auto/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb36bf32a-0d98-4de9-ae99-ea880183557d_500x500.png"/><img src="https://substackcdn.com/image/fetch/$s_!iHp5!,w_140,h_140,c_fill,f_auto,q_auto:good,fl_progressive:steep,g_auto/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb36bf32a-0d98-4de9-ae99-ea880183557d_500x500.png" sizes="100vw" alt="Introducing Service Level Calculator" width="140" height="140" class="img-OACg1c smSquare-NGbPBa pencraft pc-reset"/></picture></div><div class="pencraft pc-display-flex pc-flexDirection-column pc-reset"><h4 class="pencraft pc-reset color-pub-primary-text-NyXPlw line-height-24-jnGwiv font-display-nhmvtD size-20-P_cSRT weight-bold-DmI9lw reset-IxiVJZ">Introducing Service Level Calculator</h4><div class="pencraft pc-display-flex pc-gap-4 pc-alignItems-center pc-reset"><div class="pencraft pc-reset color-pub-secondary-text-hGQ02T line-height-20-t4M0El font-meta-MWBumP size-11-NuY2Zx weight-medium-fw81nC transform-uppercase-yKDgcq reset-IxiVJZ meta-EgzBVA"><a href="https://substack.com/profile/87732486-alex-ewerlof" class="inheritColor-WetTGJ">Alex Ewerlöf</a></div><div class="pencraft pc-reset color-pub-secondary-text-hGQ02T reset-IxiVJZ">·</div><div class="pencraft pc-reset color-pub-secondary-text-hGQ02T line-height-20-t4M0El font-meta-MWBumP size-11-NuY2Zx weight-medium-fw81nC transform-uppercase-yKDgcq reset-IxiVJZ meta-EgzBVA">December 6, 2023</div></div><div class="pencraft pc-display-flex pc-gap-16 pc-paddingTop-0 pc-paddingBottom-0 pc-alignItems-center pc-reset"><a href="https://blog.alexewerlof.com/p/slc" class="pencraft pc-reset align-center-y7ZD4w line-height-20-t4M0El font-text-qe4AeH size-13-hZTUKr weight-medium-fw81nC reset-IxiVJZ"><div class="pencraft pc-display-flex pc-gap-8 pc-alignItems-center pc-reset link-HREYZo"><span class="pencraft pc-reset color-accent-BVX_7M line-height-20-t4M0El font-text-qe4AeH size-14-MLPa7j weight-semibold-uqA4FV reset-IxiVJZ">Read full story</span><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></div></a></div></div></div></a></div><p>Note: using percentiles simplifies talking about data. For example, if you read:</p><blockquote><p><code>12%</code><span> of European households have </span><code>3</code><span> or more children —</span><a href="https://www.elfac.org/12-of-european-households-have-3-or-more-children/">elfac.org</a></p></blockquote><p>You know that if there was an array representing the number of children for each individual family in Europe:</p><ul><li><p><span>If it was sorted in the decreasing order, the family at the position </span><code>P12</code><span>, would have exactly </span><code>3</code><span> children</span></p></li></ul><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!ANw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ANw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 424w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 848w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 1272w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!ANw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png" width="1456" height="422" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":422,"width":1456,"resizeWidth":null,"bytes":55575,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!ANw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 424w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 848w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 1272w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><ul><li><p><span>If it was sorted in increasing order, the </span><code>P88</code><span> family would have exactly </span><code>3</code><span> children.</span></p></li></ul><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!YVAR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YVAR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 424w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 848w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 1272w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!YVAR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png" width="1456" height="419" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/a9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":419,"width":1456,"resizeWidth":null,"bytes":56048,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!YVAR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 424w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 848w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 1272w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h1 class="header-anchor-post">When to use percentiles?<div class="pencraft pc-display-flex pc-alignItems-center pc-position-absolute pc-reset header-anchor-parent"><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><div id="§when-to-use-percentiles" class="pencraft pc-reset header-anchor offset-top"></div><button tabindex="0" type="button" aria-label="Link" data-href="https://blog.alexewerlof.com/i/145056343/when-to-use-percentiles" class="pencraft pc-reset pencraft iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_sm-G3LciD priority_secondary-S63h9o"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></button></div></div></h1><p>Percentile is a popular tool in the field of reliability engineering and performance optimization. It is a powerful tool to spot the outlier data points without diluting the story that a dataset is capable of telling.</p><div class="subscription-widget-wrap"><div class="subscription-widget show-subscribe"><div class="preamble"><p>I write about technical leadership, reliability engineering, and growth breaking complex topics into simple visual concepts that are easy to understand and act upon</p></div><div data-component-name="SubscribeWidget" class="subscribe-widget"><div class="pencraft pc-display-flex pc-justifyContent-center pc-reset"><div class="container-IpPqBD"><form action="/api/v1/free?nojs=true" method="post" novalidate class="form form-M5sC90"><input type="hidden" name="first_url" value/><input type="hidden" name="first_referrer" value/><input type="hidden" name="current_url"/><input type="hidden" name="current_referrer"/><input type="hidden" name="first_session_url" value/><input type="hidden" name="first_session_referrer" value/><input type="hidden" name="referral_code"/><input type="hidden" name="source" value="subscribe-widget-preamble"/><input type="hidden" name="referring_pub_id"/><input type="hidden" name="additional_referring_pub_ids"/><input type="hidden" name="source_post_id" value="145056343"/><div class="sideBySideWrap-vGXrwP"><div class="emailInputWrapper-QlA86j"><div class="pencraft pc-display-flex pc-minWidth-0 pc-position-relative pc-reset flex-auto-j3S2WA"><input name="email" placeholder="Type your email..." type="email" class="pencraft emailInput-OkIMeB input-y4v6N4 inputText-pV_yWb"/></div></div><button tabindex="0" type="submit" disabled class="pencraft pc-reset pencraft rightButton primary subscribe-btn button-VFSdkv buttonBase-GK1x3M"><span class="button-text ">Subscribe</span></button></div><div id="error-container"></div></form></div></div></div></div></div><p>Percentile is especially useful for datasets that are not evenly distributed —most data!</p><blockquote><p>Evenly distributed what? —you may ask!</p></blockquote><p>First let’s look at some evenly distributed data where each value is as likely to show up:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!QRvq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QRvq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 424w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 848w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 1272w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!QRvq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png" width="1456" height="453" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":453,"width":1456,"resizeWidth":null,"bytes":823343,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!QRvq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 424w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 848w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 1272w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><span>This is how random number generators work. In fact, this data was created using </span><code>Math.random()</code><span> in JavaScript as we’ll see later.</span></p><p>If we sort that data it we get this:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!kOTU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kOTU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 424w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 848w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 1272w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!kOTU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png" width="1456" height="454" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":454,"width":1456,"resizeWidth":null,"bytes":67161,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!kOTU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 424w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 848w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 1272w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>As you can see, there are no anomalies. If we do the math, we can see that:</p><ul><li><p><span>Mean (also known as </span><em>average</em><span>) is </span><code>10279</code></p></li><li><p><span>Median (also known as </span><code>P50 </code><span>percentile) is </span><code>10453</code></p></li></ul><p>Not an enormous difference considering that the range of values is anywhere from 0 to 20000. And that’s expected from such an evenly distributed dataset.</p><p>But the story is different when there are outliers.</p><p>For example, if a small fraction of numbers are unusually high, we get something like this:</p><p></p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!xm9o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xm9o!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 424w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 848w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 1272w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!xm9o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png" width="1456" height="458" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":458,"width":1456,"resizeWidth":null,"bytes":444275,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!xm9o!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 424w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 848w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 1272w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Sorted, we get this:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!Asd3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Asd3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 424w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 848w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 1272w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!Asd3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png" width="1456" height="447" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":447,"width":1456,"resizeWidth":null,"bytes":54904,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!Asd3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 424w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 848w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 1272w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><ul><li><p><span>Mean (average): </span><code>2360</code></p></li><li><p><span>Median (</span><code>P50</code><span>): </span><code>2106</code></p></li><li><p><code>P95: 3969</code></p></li><li><p><code>P99: 18031</code><span>. This means </span><code>99%</code><span> of values are below </span><code>18031</code></p></li></ul><p><span>This type of data distribution is also known as </span><em><a href="https://en.wikipedia.org/wiki/Long_tail">long tail</a></em><span>.</span></p><p>Another example where most values are high, but a few are very low:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!gB-e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gB-e!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 424w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 848w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 1272w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!gB-e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png" width="1456" height="468" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/e32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":468,"width":1456,"resizeWidth":null,"bytes":277309,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!gB-e!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 424w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 848w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 1272w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Look for those extremely low values. They are easier to see when the data is sorted:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!wcoq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wcoq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 424w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 848w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 1272w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!wcoq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png" width="1456" height="460" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/c2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":460,"width":1456,"resizeWidth":null,"bytes":56974,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!wcoq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 424w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 848w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 1272w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Analysing:</p><ul><li><p><span>Mean (average): </span><code>17556</code></p></li><li><p><span>Median (</span><code>P50</code><span>): </span><code>18695</code></p></li><li><p><code>P1: 2359</code><span>. This means only </span><code>1%</code><span> of values are below </span><code>2359</code><span>.</span></p></li><li><p><code>P99: 19969</code></p></li></ul><p>And of course, there can be datasets where most data fluctuate around a usual range, but occasionally there are outliers that are either too high or too low:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!Y0Xr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 424w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 848w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 1272w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png" width="1456" height="445" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/a8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":445,"width":1456,"resizeWidth":null,"bytes":668389,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 424w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 848w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 1272w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Sorted:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!CGuf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CGuf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 424w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 848w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 1272w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!CGuf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png" width="1456" height="447" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":447,"width":1456,"resizeWidth":null,"bytes":63455,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!CGuf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 424w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 848w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 1272w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Analyzing:</p><ul><li><p><span>Mean (average): </span><code>10048</code></p></li><li><p><span>Median (P50): </span><code>10076</code></p></li><li><p><code>P1: 1546</code></p></li><li><p><code>P99: 17949</code></p></li><li><p><code>P99.5: 18858</code></p></li><li><p><code>P99.9: 19378</code></p></li></ul><h1 class="header-anchor-post">Selection vs aggregation<div class="pencraft pc-display-flex pc-alignItems-center pc-position-absolute pc-reset header-anchor-parent"><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><div id="§selection-vs-aggregation" class="pencraft pc-reset header-anchor offset-top"></div><button tabindex="0" type="button" aria-label="Link" data-href="https://blog.alexewerlof.com/i/145056343/selection-vs-aggregation" class="pencraft pc-reset pencraft iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_sm-G3LciD priority_secondary-S63h9o"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></button></div></div></h1><p>Percentile can select a subset of actual data to analyze and drive meaningful action. </p><p><span>For example, let’s say you are a policy maker who wants to reduce child obesity in Belgium. </span><a href="https://www.statista.com/statistics/1090687/body-mass-index-obese-belgian-children/">According to statista</a><span> 5.2% of Belgian children are obese. That’s a tiny number and if we were going to use average weight, we would think that the average Belgian child is slightly obese. Considering that a percentage of the children may be underweight, the average may actually mislead us to believe that the average Belgian child has a perfectly healthy BMI (body mass index).</span></p><p>However, if we sort all Belgian kids in a very very long row based on their BMI, we can quickly identify the obese ones.</p><p>This allows you to focus on one end of the row where obese children are standing and trying to understand what contributes to their obesity and what policies can reduce their risk factors.</p><h1 class="header-anchor-post">Crazy bounce<div class="pencraft pc-display-flex pc-alignItems-center pc-position-absolute pc-reset header-anchor-parent"><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><div id="§crazy-bounce" class="pencraft pc-reset header-anchor offset-top"></div><button tabindex="0" type="button" aria-label="Link" data-href="https://blog.alexewerlof.com/i/145056343/crazy-bounce" class="pencraft pc-reset pencraft iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_sm-G3LciD priority_secondary-S63h9o"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></button></div></div></h1><p>One final tip: when starting to optimize the system behavior, start from the common percentiles (e.g. P50) and gradually shrink your focus towards the outliers (e.g. P1 or P99 depending on the shape of the sorted diagram).</p><p>There is, however, no universal rule. Always start by looking at the sorted data to understand where you want to start.</p><p>For example, this rather uncommon dataset fluctuates between very high and very low values:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!d1FH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d1FH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 424w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 848w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 1272w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!d1FH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png" width="1456" height="444" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/be985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":444,"width":1456,"resizeWidth":null,"bytes":656598,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!d1FH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 424w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 848w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 1272w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Sorted:</p><div class="captioned-image-container"><figure><a target="_blank" href="https://substackcdn.com/image/fetch/$s_!-Yzm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png" data-component-name="Image2ToDOM" class="image-link image2 is-viewable-img can-restack"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-Yzm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 424w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 848w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 1272w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 1456w" sizes="100vw"/><img src="https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png" width="1456" height="469" data-attrs="{"src":"https://substack-post-media.s3.amazonaws.com/public/images/8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":469,"width":1456,"resizeWidth":null,"bytes":56757,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}" alt srcset="https://substackcdn.com/image/fetch/$s_!-Yzm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 424w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 848w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 1272w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 1456w" sizes="100vw" loading="lazy" class="sizing-normal"/></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><span>As you can see, the majority of data points are either too low or too high. This might be the average latency of an API where the data from </span><code>GET </code><span>and </span><code>POST </code><span>requests are combined in one view.</span></p><p>Here, you may want to use labels to narrow down the dataset to something that P1 or P99 can meaningfully tell a story and direct our optimization.</p><p><span>For example, we may realize that if we only look at the data for </span><code>GET </code><span>requests to the API, we see a long tail diagram like the ones we saw before. And that may actually look quite good. Maybe, it is the </span><code>PUT </code><span>requests that are taking too long.</span></p><p>Different subsets of data may tell different stories which may drive different actions.</p><h1 class="header-anchor-post">Recap<div class="pencraft pc-display-flex pc-alignItems-center pc-position-absolute pc-reset header-anchor-parent"><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><div id="§recap" class="pencraft pc-reset header-anchor offset-top"></div><button tabindex="0" type="button" aria-label="Link" data-href="https://blog.alexewerlof.com/i/145056343/recap" class="pencraft pc-reset pencraft iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_sm-G3LciD priority_secondary-S63h9o"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></button></div></div></h1><p>Percentiles allow:</p><ul><li><p><span>Selecting the outliers and focusing on understanding them (instead of aggregating them as </span><em>average</em><span> does)</span></p></li><li><p>Focusing the optimization efforts</p></li><li><p>Impactful decisions that are guided by actual data points</p></li></ul><p>Start the optimization effort with a percentile that represents the typical data points. As your optimization yields results, narrow down your efforts to more niche outliers.</p><p>There is no universal rule that applies to all datasets. The best way to know which percentile to use is to look at the sorted data.</p><p>You may have to filter the data to get to a shape that is actionable.</p><p>Try to identify the actions with the best ROI (return on investment). Just because there is a long tail, doesn’t mean that you have to trim it! 🐍</p><div><hr/></div><p><em><a href="https://blog.alexewerlof.com/p/faq#%C2%A7payment">My monetization strategy</a><span> is to give away most content for free. However, these posts take anywhere from a few hours to days to draft, edit, research, illustrate, and publish. I pull these hours from my private time, vacation days and weekends. Recently I went down in working hours and salary by 10% to be able to spend more time sharing my experience with the public. You can support this cause by sparing a few bucks for a paid subscription. As a token of appreciation, you get access to the Pro-Tips section as well as my online book </span><a href="https://blog.alexewerlof.com/p/book-intro-reliability-engineering">Reliability Engineering Mindset</a><span>. Right now, you can get 20% off via </span><a href="https://blog.alexewerlof.com/protipsdiscount">this link</a><span>. You can also </span><a href="https://blog.alexewerlof.com/leaderboard">invite your friends</a><span> to gain free access.</span></em></p><div data-attrs="{"url":"https://blog.alexewerlof.com/p/percentile?utm_source=substack&utm_medium=email&utm_content=share&action=share","text":"Share"}" data-component-name="CaptionedButtonToDOM" class="captioned-button-wrap"><div class="preamble"><p class="cta-caption">If you find this post insightful, please like and share it in your circles to inspire others.</p></div><p data-attrs="{"url":"https://blog.alexewerlof.com/p/percentile?utm_source=substack&utm_medium=email&utm_content=share&action=share","text":"Share"}" data-component-name="ButtonCreateButton" class="button-wrapper"><a href="https://blog.alexewerlof.com/p/percentile?utm_source=substack&utm_medium=email&utm_content=share&action=share" class="button primary"><span>Share</span></a></p></div><p><br/></p></div></div><div class="visibility-check"></div></div><div class="post-footer"><div class="pencraft pc-display-flex pc-gap-16 pc-paddingTop-16 pc-paddingBottom-16 pc-justifyContent-space-between pc-alignItems-center pc-reset flex-grow-rzmknG border-top-detail-themed-k9TZAY border-bottom-detail-themed-Ua9186 post-ufi"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><div class="like-button-container post-ufi-button style-button"><button tabindex="0" type="button" aria-label="Like (31)" aria-pressed="false" class="pencraft pc-reset pencraft post-ufi-button style-button has-label with-border"><svg aria-hidden="true" style="height:20px;width:20px;" width="20" height="20" viewBox="0 0 24 24" fill="#000000" stroke-width="2" stroke="#000" xmlns="http://www.w3.org/2000/svg" class="icon"><g><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-heart"><path d="M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"></path></svg></g></svg><div class="label">31</div></button></div><button tabindex="0" type="button" aria-label="View comments (2)" data-href="https://blog.alexewerlof.com/p/percentile/comments" class="pencraft pc-reset pencraft post-ufi-button style-button post-ufi-comment-button has-label with-border"><svg aria-hidden="true" style="height:20px;width:20px;" width="20" height="20" viewBox="0 0 24 24" fill="#000000" stroke-width="2" stroke="#000" xmlns="http://www.w3.org/2000/svg" class="icon"><g><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-circle"><path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"></path></svg></g></svg><div class="label">2</div></button><button tabindex="0" type="button" id="radix-P0-56" aria-haspopup="menu" aria-expanded="false" data-state="closed" class="pencraft pc-reset pencraft post-ufi-button style-button has-label with-border"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="2" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg><div class="label">3</div></button></div><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft post-ufi-button style-button has-label with-border"><div class="label">Share</div></button></div></div></div></div></article></div></div></div><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><div class="visibility-check"></div><div id="discussion" class="pencraft pc-display-flex pc-flexDirection-column pc-gap-16 pc-paddingTop-32 pc-paddingBottom-32 pc-reset"><div class="pencraft pc-display-flex pc-flexDirection-column pc-gap-32 pc-reset container"><h4 class="pencraft pc-reset line-height-24-jnGwiv font-display-nhmvtD size-20-P_cSRT weight-bold-DmI9lw reset-IxiVJZ">Discussion about this post</h4><div class="pencraft pc-alignSelf-flex-start pc-reset"><div class="pencraft pc-display-flex pc-flexDirection-column pc-position-relative pc-minWidth-0 pc-reset bg-primary-zk6FDl outline-detail-vcQLyr pc-borderRadius-sm overflow-hidden-WdpwT6"><div dir="ltr" data-orientation="horizontal" class="pencraft pc-display-flex pc-flexDirection-column pc-reset flex-grow-rzmknG"><div style="outline:none;" tabindex="-1" aria-label="Select discussion type" role="tablist" aria-orientation="horizontal" data-orientation="horizontal" class="pencraft pc-display-flex pc-gap-4 pc-padding-4 pc-position-relative pc-reset cursor-default-flE2S1 pc-borderRadius-sm overflow-auto-7WTsTi scrollBar-hidden-HcAIpI"><button tabindex="-1" type="button" role="tab" aria-selected="true" aria-controls="radix-P0-70-content-comments" data-state="active" id="radix-P0-70-trigger-comments" data-orientation="horizontal" data-radix-collection-item class="pencraft pc-reset flex-auto-j3S2WA pencraft segment-j4TeZ4 buttonBase-GK1x3M buttonText-X0uSmG buttonStyle-r7yGCK priority_quaternary-kpMibu size_sm-G3LciD">Comments</button><button tabindex="-1" type="button" role="tab" aria-selected="false" aria-controls="radix-P0-70-content-restacks" data-state="inactive" id="radix-P0-70-trigger-restacks" data-orientation="horizontal" data-radix-collection-item class="pencraft pc-reset flex-auto-j3S2WA pencraft segment-j4TeZ4 buttonBase-GK1x3M buttonText-X0uSmG buttonStyle-r7yGCK priority_quaternary-kpMibu size_sm-G3LciD">Restacks</button><div class="pencraft pc-position-absolute pc-height-32 pc-reset bg-secondary-UUD3_J pc-borderRadius-xs sizing-border-box-DggLA4 highlight-U002IP"></div></div></div><div class="pencraft pc-display-flex pc-alignItems-center pc-reset arrowButtonContainer-O4uSiH arrowButtonOverlaidContainer-t10AyH left-Tg8vqp"><div class="overlay-zrMCxn primary-lv_sOW"></div></div><div class="pencraft pc-display-flex pc-alignItems-center pc-reset arrowButtonContainer-O4uSiH arrowButtonOverlaidContainer-t10AyH right-i3oWGi"><div class="overlay-zrMCxn primary-lv_sOW"></div></div></div></div></div><div id="substack-comments" class="single-post-section comments-section"><div class="container"><div class="visibility-check"></div><div data-test-id="comment-input" class="pencraft pc-display-flex pc-reset flex-grow-rzmknG"><form class="comment-input-form form-CkZ7Kt"><div style="--scale:32px;" class="pencraft pc-display-flex pc-width-32 pc-height-32 pc-justifyContent-center pc-alignItems-center pc-position-relative pc-reset bg-secondary-UUD3_J flex-auto-j3S2WA outline-detail-vcQLyr pc-borderRadius-full overflow-hidden-WdpwT6 sizing-border-box-DggLA4 container-TAtrWj"><div style="--scale:32px;" title="User" class="pencraft pc-display-flex pc-width-32 pc-height-32 pc-justifyContent-center pc-alignItems-center pc-position-relative pc-reset bg-secondary-UUD3_J flex-auto-j3S2WA outline-detail-vcQLyr pc-borderRadius-full overflow-hidden-WdpwT6 sizing-border-box-DggLA4 container-TAtrWj"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TnFC!,w_32,h_32,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Favatars%2Fdefault-light.png 1x, https://substackcdn.com/image/fetch/$s_!TnFC!,w_64,h_64,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Favatars%2Fdefault-light.png 2x, https://substackcdn.com/image/fetch/$s_!TnFC!,w_96,h_96,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Favatars%2Fdefault-light.png 3x"/><img src="https://substackcdn.com/image/fetch/$s_!TnFC!,w_32,h_32,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Favatars%2Fdefault-light.png" alt="User's avatar" srcset="https://substackcdn.com/image/fetch/$s_!TnFC!,w_32,h_32,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Favatars%2Fdefault-light.png 1x, https://substackcdn.com/image/fetch/$s_!TnFC!,w_64,h_64,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Favatars%2Fdefault-light.png 2x, https://substackcdn.com/image/fetch/$s_!TnFC!,w_96,h_96,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Favatars%2Fdefault-light.png 3x" width="32" height="32" draggable="false" class="img-OACg1c object-fit-cover-u4ReeV pencraft pc-reset"/></picture></div></div><div class="pencraft pc-display-flex pc-flexDirection-column pc-gap-8 pc-reset flex-grow-rzmknG"><div class="pencraft pc-display-flex pc-flexDirection-column pc-boxShadow-xs pc-reset bg-primary-zk6FDl flex-grow-rzmknG border-detail-EGrm7T pc-borderRadius-sm"><textarea name="body" placeholder="Write a comment..." aria-label="Write a comment..." rows="4" class="pencraft input-qHk4bN autogrowing-_ipn9Y textarea-GbEjRX inputText-pV_yWb unstyled-IJLUJU"></textarea></div><div data-state="closed" class="pencraft pc-display-flex pc-flexDirection-column pc-reset overflow-hidden-WdpwT6"></div></div></form></div><div class="comment-list post-page-root-comment-list"><div class="comment-list-items"><div class="comment"><div id="comment-63912256" class="comment-anchor"></div><div id="comment-63912256-reply" class="comment-anchor"></div><div role="article" aria-label="Comment by John Hayes" class="pencraft pc-display-flex pc-gap-12 pc-paddingBottom-12 pc-reset comment-content"><div class="pencraft pc-display-flex pc-flexDirection-column pc-reset"><a href="https://substack.com/profile/254602565-john-hayes?utm_source=comment" aria-label="View John Hayes's profile" class="pencraft pc-display-contents pc-reset"><div style="--scale:32px;" tabindex="0" class="pencraft pc-display-flex pc-width-32 pc-height-32 pc-justifyContent-center pc-alignItems-center pc-position-relative pc-reset bg-secondary-UUD3_J flex-auto-j3S2WA animate-XFJxE4 outline-detail-vcQLyr pc-borderRadius-full overflow-hidden-WdpwT6 sizing-border-box-DggLA4 pressable-sm-YIJFKJ showFocus-sk_vEm container-TAtrWj interactive-UkK0V6"><div style="--scale:32px;" title="John Hayes" class="pencraft pc-display-flex pc-width-32 pc-height-32 pc-justifyContent-center pc-alignItems-center pc-position-relative pc-reset bg-secondary-UUD3_J flex-auto-j3S2WA outline-detail-vcQLyr pc-borderRadius-full overflow-hidden-WdpwT6 sizing-border-box-DggLA4 container-TAtrWj"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!m5ZK!,w_32,h_32,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c08e642-f4f0-438b-864f-66891459382c_144x144.png 1x, https://substackcdn.com/image/fetch/$s_!m5ZK!,w_64,h_64,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c08e642-f4f0-438b-864f-66891459382c_144x144.png 2x, https://substackcdn.com/image/fetch/$s_!m5ZK!,w_96,h_96,c_fill,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c08e642-f4f0-438b-864f-66891459382c_144x144.png 3x"/><img src="https://substackcdn.com/image/fetch/$s_!m5ZK!,w_32,h_32,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c08e642-f4f0-438b-864f-66891459382c_144x144.png" alt="John Hayes's avatar" srcset="https://substackcdn.com/image/fetch/$s_!m5ZK!,w_32,h_32,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c08e642-f4f0-438b-864f-66891459382c_144x144.png 1x, https://substackcdn.com/image/fetch/$s_!m5ZK!,w_64,h_64,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c08e642-f4f0-438b-864f-66891459382c_144x144.png 2x, https://substackcdn.com/image/fetch/$s_!m5ZK!,w_96,h_96,c_fill,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c08e642-f4f0-438b-864f-66891459382c_144x144.png 3x" width="32" height="32" draggable="false" class="img-OACg1c object-fit-cover-u4ReeV pencraft pc-reset"/></picture></div></div></a></div><div class="pencraft pc-display-flex pc-flexDirection-column pc-reset flex-grow-rzmknG"><div class="pencraft pc-display-flex pc-reset"><div class="pencraft pc-display-flex pc-flexDirection-column pc-gap-4 pc-reset"><div class="pencraft pc-display-flex pc-minWidth-0 pc-gap-8 pc-alignItems-center pc-justifyContent-space-between pc-reset line-height-20-t4M0El font-text-qe4AeH size-15-Psle70 weight-regular-mUq6Gb"><div class="pencraft pc-display-flex pc-minWidth-0 pc-gap-8 pc-alignItems-center pc-reset flex-grow-rzmknG"><div class="pencraft pc-display-flex pc-gap-6 pc-reset color-primary-zABazT line-height-20-t4M0El font-text-qe4AeH size-13-hZTUKr weight-regular-mUq6Gb reset-IxiVJZ comment-author-name"><div class="pencraft pc-display-flex pc-gap-4 pc-minWidth-0 pc-alignItems-center pc-reset"><span class="pencraft pc-reset ellipsis-Jb8om8 line-height-20-t4M0El font-text-qe4AeH size-15-Psle70 weight-medium-fw81nC reset-IxiVJZ"><span style="min-width:0;" data-state="closed"><span class="pencraft pc-reset decoration-hover-underline-ClDVRM reset-IxiVJZ"><a href="https://substack.com/profile/254602565-john-hayes?utm_source=substack-feed-item" showBack data-native="true" class="link-LIBpto">John Hayes</a></span></span></span></div></div><a data-native="true" href="https://blog.alexewerlof.com/p/percentile/comment/63912256" rel="nofollow" title="Jul 31, 2024, 2:36 PM" class="pencraft pc-reset color-secondary-ls1g8s decoration-hover-underline-ClDVRM reset-IxiVJZ"><span class="pencraft pc-reset color-secondary-ls1g8s line-height-20-t4M0El font-text-qe4AeH size-13-hZTUKr weight-regular-mUq6Gb nowrap-QngyoB reset-IxiVJZ">Jul 31, 2024</span></a></div></div><div class="pencraft pc-display-flex pc-gap-4 pc-reset"><button tabindex="-1" type="button" class="pencraft pc-display-flex pc-gap-4 pc-height-20 pc-paddingLeft-6 pc-paddingRight-6 pc-paddingTop-2 pc-paddingBottom-2 pc-alignItems-center pc-reset font-text-qe4AeH size-11-NuY2Zx weight-medium-fw81nC pencraft tag-XbOVLt theme_accent-Y2sqZY priority_secondary-outline-RpooJS pencraft pc-display-flex pc-height-20 pc-paddingLeft-6 pc-paddingRight-6 pc-paddingTop-2 pc-paddingBottom-2 pc-gap-4 pc-alignItems-center pc-reset cursor-inherit-LxLBJ6 pc-borderRadius-xs font-text-qe4AeH size-11-NuY2Zx weight-medium-fw81nC"><div class="pencraft pc-display-flex pc-alignItems-center pc-reset leading-mI5Ihl fillIcon-dQ0mii"><svg aria-hidden="true" style="height:14px;width:14px;" width="14" height="14" viewBox="0 0 20 20" fill="var(--color-fg-primary)" stroke-width="2.5" stroke="#000" xmlns="http://www.w3.org/2000/svg"><g><path stroke="none" d="M9.99915 16.7256C9.90515 16.7256 9.79102 16.692 9.65674 16.6249C9.52246 16.5622 9.3949 16.4906 9.27405 16.41C8.02974 15.6044 6.94657 14.7584 6.02454 13.8722C5.10697 12.9815 4.3953 12.0662 3.88953 11.1262C3.38375 10.1818 3.13086 9.23067 3.13086 8.27283C3.13086 7.63725 3.23157 7.05762 3.43298 6.53394C3.63888 6.01025 3.92086 5.55819 4.27893 5.17773C4.64148 4.79728 5.05774 4.50635 5.52771 4.30493C6.00216 4.09904 6.51241 3.99609 7.05847 3.99609C7.73433 3.99609 8.31844 4.16618 8.81079 4.50635C9.30762 4.84652 9.70374 5.28963 9.99915 5.83569C10.299 5.28516 10.6951 4.84204 11.1875 4.50635C11.6843 4.16618 12.2707 3.99609 12.9465 3.99609C13.4836 3.99609 13.9894 4.09904 14.4639 4.30493C14.9428 4.50635 15.3613 4.79728 15.7194 5.17773C16.0774 5.55819 16.3572 6.01025 16.5586 6.53394C16.7645 7.05762 16.8674 7.63725 16.8674 8.27283C16.8674 9.23067 16.6145 10.1818 16.1088 11.1262C15.603 12.0662 14.8891 12.9815 13.967 13.8722C13.0495 14.7584 11.9708 15.6044 10.731 16.41C10.6056 16.4906 10.4758 16.5622 10.3416 16.6249C10.2118 16.692 10.0976 16.7256 9.99915 16.7256Z"></path></g></svg></div>Liked by Alex Ewerlöf</button></div></div><div class="pencraft pc-display-flex pc-flexDirection-column pc-reset flex-grow-rzmknG"></div><div class="pencraft pc-display-flex pc-reset comment-menu-trigger-container triggerContainer-eX588u"><button tabindex="0" type="button" aria-label="Ellipsis" id="radix-P0-83" aria-haspopup="menu" aria-expanded="false" data-state="closed" class="pencraft pc-reset pencraft trigger-j08Uop iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_sm-G3LciD priority_quaternary-kpMibu"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ellipsis"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg></button></div></div><div class="comment-body expanded"><p><span>Really liked the article! I have featured in the latest Observability 360 newsletter!</span></p></div><div class="pencraft pc-display-flex pc-gap-16 pc-paddingTop-8 pc-justifyContent-flex-start pc-alignItems-center pc-reset comment-actions withShareButton-hQzuEn"><span class="pencraft pc-reset decoration-hover-underline-ClDVRM reset-IxiVJZ"><a class="pencraft pc-reset link-_X6et2 link-LIBpto"><div class="pencraft pc-display-flex pc-gap-6 pc-alignItems-center pc-reset"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="var(--color-fg-secondary-themed)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-circle"><path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"></path></svg><div class="pencraft pc-reset color-pub-secondary-text-hGQ02T line-height-20-t4M0El font-meta-MWBumP size-11-NuY2Zx weight-medium-fw81nC transform-uppercase-yKDgcq reset-IxiVJZ meta-EgzBVA comment-actions-label">Reply</div></div></a></span><span class="pencraft pc-reset decoration-hover-underline-ClDVRM reset-IxiVJZ"><a class="pencraft pc-reset link-_X6et2 link-LIBpto"><div class="pencraft pc-display-flex pc-gap-6 pc-alignItems-center pc-reset"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="var(--color-fg-secondary-themed)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-share"><path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"></path><polyline points="16 6 12 2 8 6"></polyline><line x1="12" x2="12" y1="2" y2="15"></line></svg><div class="pencraft pc-reset color-pub-secondary-text-hGQ02T line-height-20-t4M0El font-meta-MWBumP size-11-NuY2Zx weight-medium-fw81nC transform-uppercase-yKDgcq reset-IxiVJZ meta-EgzBVA comment-actions-label">Share</div></div></a></span></div><div data-state="closed" class="pencraft pc-display-flex pc-flexDirection-column pc-reset overflow-hidden-WdpwT6"></div></div></div><div class="more-replies-container"><a href="https://blog.alexewerlof.com/p/percentile/comment/63912256" class="more-replies">1 reply by Alex Ewerlöf</a></div></div></div></div><a href="https://blog.alexewerlof.com/p/percentile/comments" class="more-comments">1 more comment...</a></div></div></div><div class="single-post-section"><div class="container"><div class="visibility-check"></div><div style="margin-left:-8px;margin-right:-8px;" aria-label="Top Posts Footer" role="region" class="pencraft pc-paddingTop-24 pc-paddingBottom-24 pc-reset"><div class="portable-archive empty-list"><div aria-label="Archive sort tabs" role="navigation" class="pencraft pc-display-flex pc-gap-12 pc-paddingLeft-8 pc-paddingRight-8 pc-paddingBottom-16 pc-justifyContent-space-between pc-alignItems-center pc-reset"><div class="pencraft pc-display-flex pc-flexDirection-column pc-position-relative pc-minWidth-0 pc-reset bg-primary-zk6FDl outline-detail-vcQLyr pc-borderRadius-sm overflow-hidden-WdpwT6"><div dir="ltr" data-orientation="horizontal" class="pencraft pc-display-flex pc-flexDirection-column pc-reset flex-grow-rzmknG"><div style="outline:none;" tabindex="-1" aria-label="Tabs" role="tablist" aria-orientation="horizontal" data-orientation="horizontal" class="pencraft pc-display-flex pc-gap-4 pc-padding-4 pc-position-relative pc-reset cursor-default-flE2S1 pc-borderRadius-sm overflow-auto-7WTsTi scrollBar-hidden-HcAIpI"><button tabindex="-1" type="button" role="tab" aria-selected="true" aria-controls="radix-P0-101-content-top" data-state="active" id="radix-P0-101-trigger-top" data-orientation="horizontal" data-radix-collection-item class="pencraft pc-reset flex-auto-j3S2WA pencraft segment-j4TeZ4 buttonBase-GK1x3M buttonText-X0uSmG buttonStyle-r7yGCK priority_quaternary-kpMibu size_sm-G3LciD">Top</button><button tabindex="-1" type="button" role="tab" aria-selected="false" aria-controls="radix-P0-101-content-new" data-state="inactive" id="radix-P0-101-trigger-new" data-orientation="horizontal" data-radix-collection-item class="pencraft pc-reset flex-auto-j3S2WA pencraft segment-j4TeZ4 buttonBase-GK1x3M buttonText-X0uSmG buttonStyle-r7yGCK priority_quaternary-kpMibu size_sm-G3LciD">Latest</button><button tabindex="-1" type="button" role="tab" aria-selected="false" aria-controls="radix-P0-101-content-community" data-state="inactive" id="radix-P0-101-trigger-community" data-orientation="horizontal" data-radix-collection-item class="pencraft pc-reset flex-auto-j3S2WA pencraft segment-j4TeZ4 buttonBase-GK1x3M buttonText-X0uSmG buttonStyle-r7yGCK priority_quaternary-kpMibu size_sm-G3LciD">Discussions</button><div class="pencraft pc-position-absolute pc-height-32 pc-reset bg-secondary-UUD3_J pc-borderRadius-xs sizing-border-box-DggLA4 highlight-U002IP"></div></div></div><div class="pencraft pc-display-flex pc-alignItems-center pc-reset arrowButtonContainer-O4uSiH arrowButtonOverlaidContainer-t10AyH left-Tg8vqp"><div class="overlay-zrMCxn primary-lv_sOW"></div></div><div class="pencraft pc-display-flex pc-alignItems-center pc-reset arrowButtonContainer-O4uSiH arrowButtonOverlaidContainer-t10AyH right-i3oWGi"><div class="overlay-zrMCxn primary-lv_sOW"></div></div></div><button tabindex="0" type="button" aria-label="Search" class="pencraft pc-reset pencraft iconButton-mq_Et5 iconButtonBase-dJGHgN buttonBase-GK1x3M buttonStyle-r7yGCK size_md-gCDS3o priority_tertiary-rlke8z"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.3-4.3"></path></svg></button></div><div class="portable-archive-list"><p class="portable-archive-empty dt-archive-empty-state">No posts</p></div></div></div></div></div><div class="visibility-check"></div><div class="pencraft pc-display-contents pc-reset pubInvertedTheme-U483dz"><div class="pencraft pc-display-flex pc-flexDirection-column pc-alignItems-center pc-justifyContent-center pc-padding-48 pc-mobile-padding-24 pc-reset bg-primary-zk6FDl container-jsOc9L"><div class="pencraft pc-display-flex pc-flexDirection-column pc-alignItems-center pc-gap-24 pc-flexWrap-wrap pc-reset content-jLbYeh"><h3 class="pencraft pc-reset color-primary-zABazT align-center-y7ZD4w line-height-28-s562kJ font-display-nhmvtD size-24-lFU3ly weight-semibold-uqA4FV reset-IxiVJZ">Ready for more?</h3><div class="container-IpPqBD"><form action="/api/v1/free?nojs=true" method="post" novalidate class="form form-M5sC90"><input type="hidden" name="first_url" value/><input type="hidden" name="first_referrer" value/><input type="hidden" name="current_url"/><input type="hidden" name="current_referrer"/><input type="hidden" name="first_session_url" value/><input type="hidden" name="first_session_referrer" value/><input type="hidden" name="referral_code"/><input type="hidden" name="source" value="subscribe_footer"/><input type="hidden" name="referring_pub_id"/><input type="hidden" name="additional_referring_pub_ids"/><div class="sideBySideWrap-vGXrwP"><div class="emailInputWrapper-QlA86j"><div class="pencraft pc-display-flex pc-minWidth-0 pc-position-relative pc-reset flex-auto-j3S2WA"><input name="email" placeholder="Type your email..." type="email" class="pencraft emailInput-OkIMeB emailInputOnAccentBackground-TfaCGr input-y4v6N4 inputText-pV_yWb"/></div></div><button tabindex="0" type="submit" disabled class="pencraft pc-reset pencraft rightButton primary subscribe-btn button-VFSdkv buttonOnAccentBackground-vmEt94 buttonBase-GK1x3M"><span class="button-text ">Subscribe</span></button></div><div id="error-container"></div></form></div></div></div></div></div></div></div><div class="pencraft pc-display-flex pc-flexDirection-column pc-reset container-K5XPov"></div><div class="pencraft pc-display-contents pc-reset pubTheme-yiXxQA"><div class="footer-wrap compact-footer"><div class="visibility-check"></div><div class="footer custom-themed-background"><div class="pencraft pc-display-flex pc-gap-12 pc-alignItems-center pc-reset flex-grow-rzmknG"><div class="pencraft pc-display-flex pc-minWidth-0 pc-reset flex-grow-rzmknG nowrap-QngyoB"><span><span>© 2026 Alex Ewerlöf</span><span> · </span><a href="https://substack.com/privacy" target="_blank" rel="noopener" class="pencraft pc-reset decoration-underline-ClTkYc">Privacy</a><span> ∙ </span><a href="https://substack.com/tos" target="_blank" rel="noopener" class="pencraft pc-reset decoration-underline-ClTkYc">Terms</a><span> ∙ </span><a href="https://substack.com/ccpa#personal-data-collected" target="_blank" rel="noopener" class="pencraft pc-reset decoration-underline-ClTkYc">Collection notice</a></span></div><div class="pencraft pc-display-flex pc-reset"><div class="pencraft pc-display-flex pc-gap-8 pc-justifyContent-center pc-alignItems-center pc-reset footerButtons-ap9Sk7"><a data-native="true" href="https://substack.com/signup?utm_source=substack&utm_medium=web&utm_content=footer" class="footerSubstackCta-v5HWfj sizeSm-F_aC8H"><svg aria-hidden="true" width="1000" height="1000" viewBox="0 0 1000 1000" fill="#ff6719" stroke-width="1.8" stroke="none" xmlns="http://www.w3.org/2000/svg"><g><path d="M764.166 348.371H236.319V419.402H764.166V348.371Z"></path><path d="M236.319 483.752V813.999L500.231 666.512L764.19 813.999V483.752H236.319Z"></path><path d="M764.166 213H236.319V284.019H764.166V213Z"></path></g></svg> Start your Substack</a><a data-native="true" href="https://substack.com/app/app-store-redirect?utm_campaign=app-marketing&utm_content=web-footer-button" class="footerSubstackCta-v5HWfj getTheApp-Yk3w1O noIcon-z7v9D8 sizeSm-F_aC8H sizeSmNoIcon-KRHkpZ">Get the app</a></div></div><div class="pencraft pc-display-flex pc-minWidth-0 pc-justifyContent-flex-end pc-reset flex-grow-rzmknG"><div translated class="pencraft pc-reset reset-IxiVJZ footer-slogan-blurb"><a href="https://substack.com" data-native="true">Substack</a> is the home for great culture</div></div></div></div></div></div></div><div role="region" aria-label="Notifications (F8)" tabindex="-1" style="pointer-events:none;"><ol tabindex="-1" style="--offset:0px;z-index:1000;" class="viewport-_BM4Bg"></ol></div><div></div><script suppressHydrationWarning nonce="xy9aAgQANmHbh_qzyYJzag">window.__staticRouterHydrationData = JSON.parse("{\"loaderData\":{},\"actionData\":null,\"errors\":null}");</script>
|
||
</div>
|
||
|
||
|
||
<script src="https://js.sentry-cdn.com/6c2ff3e3828e4017b7faf7b63e24cdf8.min.js" crossorigin="anonymous"></script>
|
||
<script nonce="xy9aAgQANmHbh_qzyYJzag">
|
||
window.Sentry && window.Sentry.onLoad(function() {
|
||
window.Sentry.init({
|
||
environment: window._preloads.sentry_environment,
|
||
dsn: window._preloads.sentry_dsn,
|
||
})
|
||
})
|
||
</script>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<script nonce="xy9aAgQANmHbh_qzyYJzag">window._preloads = JSON.parse("{\"cspNonce\":\"xy9aAgQANmHbh_qzyYJzag\",\"isEU\":false,\"language\":\"en\",\"country\":\"US\",\"leaderboardCountries\":[\"ES\",\"FR\",\"GB\",\"IT\",\"NL\"],\"enabledLeaderboardCountries\":[\"ES\",\"FR\",\"GB\",\"IT\",\"NL\"],\"userLocale\":{\"language\":\"en\",\"region\":\"US\",\"source\":\"accept-language\"},\"base_url\":\"https://blog.alexewerlof.com\",\"stripe_publishable_key\":\"pk_live_51QfnARLDSWi1i85FBpvw6YxfQHljOpWXw8IKi5qFWEzvW8HvoD8cqTulR9UWguYbYweLvA16P7LN6WZsGdZKrNkE00uGbFaOE3\",\"captcha_site_key\":\"6LeI15YsAAAAAPXyDcvuVqipba_jEFQCjz1PFQoz\",\"pub\":{\"apple_pay_disabled\":false,\"apex_domain\":null,\"author_id\":87732486,\"byline_images_enabled\":true,\"bylines_enabled\":true,\"chartable_token\":null,\"community_enabled\":true,\"copyright\":\"Alex Ewerl\u00F6f\",\"cover_photo_url\":\"https://substack-post-media.s3.amazonaws.com/public/images/ffddf167-cd34-41aa-9334-ad26acca3ed2_600x600.png\",\"created_at\":\"2022-07-14T22:27:58.683Z\",\"custom_domain_optional\":false,\"custom_domain\":\"blog.alexewerlof.com\",\"default_comment_sort\":\"oldest_first\",\"default_coupon\":null,\"default_group_coupon\":\"d8f4bfde\",\"default_show_guest_bios\":true,\"email_banner_url\":\"https://substack-post-media.s3.amazonaws.com/public/images/74f8e318-c490-4be2-b868-df0285fc2f3e_1100x220.png\",\"email_from_name\":\"Alex Ewerl\u00F6f Notes\",\"email_from\":null,\"embed_tracking_disabled\":false,\"explicit\":false,\"expose_paywall_content_to_search_engines\":true,\"fb_pixel_id\":null,\"fb_site_verification_token\":null,\"flagged_as_spam\":false,\"founding_subscription_benefits\":[\"1:1 chat, 60m video call\"],\"free_subscription_benefits\":[\"All the public posts\"],\"ga_pixel_id\":null,\"google_site_verification_token\":\"HIy4u2xUDZkIs6P0KJw9TSYeq7KqXSPAQvZIs9911qU\",\"google_tag_manager_token\":\"\",\"hero_image\":null,\"hero_text\":\"Technical Leadership, Reliability Engineering, Growth\",\"hide_intro_subtitle\":null,\"hide_intro_title\":null,\"hide_podcast_feed_link\":false,\"homepage_type\":\"newspaper\",\"id\":1002265,\"image_thumbnails_always_enabled\":false,\"invite_only\":false,\"hide_podcast_from_pub_listings\":false,\"hide_podcast_from_pub_listings_prior_to\":null,\"language\":\"en\",\"logo_url_wide\":\"https://substackcdn.com/image/fetch/$s_!3m6V!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd56dc7c-4b9f-43f2-99a1-ecc995284940_1200x256.png\",\"logo_url\":\"https://substackcdn.com/image/fetch/$s_!_Ur2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png\",\"minimum_group_size\":2,\"moderation_enabled\":true,\"name\":\"Alex Ewerl\u00F6f Notes\",\"paid_subscription_benefits\":[\"The pro-tips on all articles\",\"Support spending my private time to write\",\"Access to full archive\"],\"parsely_pixel_id\":null,\"chartbeat_domain\":null,\"payments_state\":\"enabled\",\"paywall_free_trial_enabled\":true,\"podcast_art_url\":null,\"paid_podcast_episode_art_url\":null,\"podcast_byline\":null,\"podcast_description\":null,\"podcast_enabled\":false,\"podcast_feed_url\":null,\"podcast_title\":null,\"post_preview_limit\":null,\"primary_user_id\":87732486,\"require_clickthrough\":false,\"show_pub_podcast_tab\":false,\"show_recs_on_homepage\":true,\"subdomain\":\"alexewerlof\",\"subscriber_invites\":0,\"support_email\":null,\"theme_var_background_pop\":\"#786CFF\",\"theme_var_color_links\":false,\"theme_var_cover_bg_color\":null,\"trial_end_override\":null,\"twitter_pixel_id\":null,\"type\":\"newsletter\",\"post_reaction_faces_enabled\":true,\"is_personal_mode\":false,\"plans\":[{\"id\":\"monthly7_5eur\",\"object\":\"plan\",\"active\":true,\"aggregate_usage\":null,\"amount\":750,\"amount_decimal\":\"750\",\"billing_scheme\":\"per_unit\",\"created\":1728579524,\"currency\":\"eur\",\"interval\":\"month\",\"interval_count\":1,\"livemode\":true,\"metadata\":{\"substack\":\"yes\"},\"meter\":null,\"nickname\":\"\u20AC7.50 a month\",\"product\":\"prod_R0QYoetykRH93k\",\"tiers_mode\":null,\"transform_usage\":null,\"trial_period_days\":null,\"usage_type\":\"licensed\",\"currency_options\":{\"aud\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":1300,\"unit_amount_decimal\":\"1300\"},\"brl\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":4400,\"unit_amount_decimal\":\"4400\"},\"cad\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":1300,\"unit_amount_decimal\":\"1300\"},\"chf\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":800,\"unit_amount_decimal\":\"800\"},\"dkk\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":6000,\"unit_amount_decimal\":\"6000\"},\"eur\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":750,\"unit_amount_decimal\":\"750\"},\"gbp\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":700,\"unit_amount_decimal\":\"700\"},\"inr\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":82500,\"unit_amount_decimal\":\"82500\"},\"jpy\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":1500,\"unit_amount_decimal\":\"1500\"},\"mxn\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":15000,\"unit_amount_decimal\":\"15000\"},\"nok\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":8500,\"unit_amount_decimal\":\"8500\"},\"nzd\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":1500,\"unit_amount_decimal\":\"1500\"},\"pln\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":3300,\"unit_amount_decimal\":\"3300\"},\"sek\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":8500,\"unit_amount_decimal\":\"8500\"},\"usd\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":900,\"unit_amount_decimal\":\"900\"}}},{\"id\":\"yearly74eur\",\"object\":\"plan\",\"active\":true,\"aggregate_usage\":null,\"amount\":7400,\"amount_decimal\":\"7400\",\"billing_scheme\":\"per_unit\",\"created\":1728579524,\"currency\":\"eur\",\"interval\":\"year\",\"interval_count\":1,\"livemode\":true,\"metadata\":{\"substack\":\"yes\"},\"meter\":null,\"nickname\":\"\u20AC74 a year\",\"product\":\"prod_R0QYUJf9xqVpaq\",\"tiers_mode\":null,\"transform_usage\":null,\"trial_period_days\":null,\"usage_type\":\"licensed\",\"currency_options\":{\"aud\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":12500,\"unit_amount_decimal\":\"12500\"},\"brl\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":43500,\"unit_amount_decimal\":\"43500\"},\"cad\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":12000,\"unit_amount_decimal\":\"12000\"},\"chf\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":7000,\"unit_amount_decimal\":\"7000\"},\"dkk\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":55500,\"unit_amount_decimal\":\"55500\"},\"eur\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":7400,\"unit_amount_decimal\":\"7400\"},\"gbp\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":6500,\"unit_amount_decimal\":\"6500\"},\"inr\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":811000,\"unit_amount_decimal\":\"811000\"},\"jpy\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":14000,\"unit_amount_decimal\":\"14000\"},\"mxn\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":148000,\"unit_amount_decimal\":\"148000\"},\"nok\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":81500,\"unit_amount_decimal\":\"81500\"},\"nzd\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":15000,\"unit_amount_decimal\":\"15000\"},\"pln\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":32500,\"unit_amount_decimal\":\"32500\"},\"sek\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":82000,\"unit_amount_decimal\":\"82000\"},\"usd\":{\"custom_unit_amount\":null,\"tax_behavior\":\"unspecified\",\"unit_amount\":8500,\"unit_amount_decimal\":\"8500\"}}},{\"id\":\"founding20000eur\",\"name\":\"founding20000eur\",\"nickname\":\"founding20000eur\",\"active\":true,\"amount\":20000,\"currency\":\"eur\",\"interval\":\"year\",\"interval_count\":1,\"metadata\":{\"substack\":\"yes\",\"founding\":\"yes\",\"no_coupons\":\"yes\",\"short_description\":\"VIP supporter\",\"short_description_english\":\"VIP supporter\",\"minimum\":\"20000\",\"minimum_local\":{\"usd\":23500,\"gbp\":17500,\"eur\":20000,\"cad\":32500,\"mxn\":394000,\"aud\":32500,\"brl\":119000,\"sek\":225500,\"chf\":19000,\"dkk\":149500,\"nok\":215500,\"inr\":2217000,\"jpy\":36000,\"nzd\":40000,\"pln\":86500}},\"currency_options\":{\"usd\":{\"unit_amount\":23500,\"tax_behavior\":\"unspecified\"},\"gbp\":{\"unit_amount\":17500,\"tax_behavior\":\"unspecified\"},\"eur\":{\"unit_amount\":20000,\"tax_behavior\":\"unspecified\"},\"cad\":{\"unit_amount\":32500,\"tax_behavior\":\"unspecified\"},\"mxn\":{\"unit_amount\":394000,\"tax_behavior\":\"unspecified\"},\"aud\":{\"unit_amount\":32500,\"tax_behavior\":\"unspecified\"},\"brl\":{\"unit_amount\":119000,\"tax_behavior\":\"unspecified\"},\"sek\":{\"unit_amount\":225500,\"tax_behavior\":\"unspecified\"},\"chf\":{\"unit_amount\":19000,\"tax_behavior\":\"unspecified\"},\"dkk\":{\"unit_amount\":149500,\"tax_behavior\":\"unspecified\"},\"nok\":{\"unit_amount\":215500,\"tax_behavior\":\"unspecified\"},\"inr\":{\"unit_amount\":2217000,\"tax_behavior\":\"unspecified\"},\"jpy\":{\"unit_amount\":36000,\"tax_behavior\":\"unspecified\"},\"nzd\":{\"unit_amount\":40000,\"tax_behavior\":\"unspecified\"},\"pln\":{\"unit_amount\":86500,\"tax_behavior\":\"unspecified\"}}}],\"stripe_user_id\":\"acct_1MAFmbEv9TeVut3s\",\"stripe_country\":\"SE\",\"stripe_publishable_key\":\"pk_live_51MAFmbEv9TeVut3sg6LOLDoGpzdvqtqZvasczL18isiPGcezpoD3DRMPDmivD2Qu12m0h0mpKUgIqx5cJZisTK1500fjcalFnx\",\"stripe_platform_account\":\"US\",\"automatic_tax_enabled\":false,\"author_name\":\"Alex Ewerl\u00F6f\",\"author_handle\":\"alexewerlof\",\"author_photo_url\":\"https://substackcdn.com/image/fetch/$s_!IRtW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg\",\"author_bio\":\"Writes about technical leadership, growth mindset, and system reliability engineering. Senior Staff Engineer, MSc Systems Engineering from KTH, Stockholmer, dad, amateur artist. Read more here: https://www.alexewerlof.com/who\",\"twitter_screen_name\":\"alexewerlof\",\"has_custom_tos\":false,\"has_custom_privacy\":false,\"theme\":{\"background_pop_color\":\"#FFBC52\",\"web_bg_color\":\"#001426\",\"cover_bg_color\":\"#001426\",\"publication_id\":1002265,\"color_links\":null,\"font_preset_heading\":\"sans\",\"font_preset_body\":\"fancy_serif\",\"font_family_headings\":null,\"font_family_body\":null,\"font_family_ui\":null,\"font_size_body_desktop\":null,\"print_secondary\":null,\"custom_css_web\":null,\"custom_css_email\":null,\"home_hero\":\"feature-media\",\"home_posts\":\"custom\",\"home_show_top_posts\":true,\"hide_images_from_list\":false,\"home_hero_alignment\":\"left\",\"home_hero_show_podcast_links\":true,\"default_post_header_variant\":null,\"custom_header\":{\"layout\":\"stacked\",\"navStyle\":\"text\",\"navPosition\":\"bottom\",\"wordmarkLogoSize\":42},\"custom_footer\":{\"layout\":\"two-column\",\"backgroundColor\":\"#000C17\",\"publicationNameSize\":50,\"showPublicationName\":false,\"publicationNameStyle\":\"text\",\"publicationNamePosition\":\"bottom\",\"publicationNameBackgroundColor\":null},\"social_media_links\":{\"bluesky\":\"https://bsky.app/profile/alexewerlof.com\",\"youtube\":\"https://www.youtube.com/@alexewerlof\",\"linkedin\":\"https://www.linkedin.com/in/alexewerlof/\"},\"font_options\":{\"body\":\"merriweather_400\",\"heading\":\"heavy_sans\"},\"section_template\":null,\"custom_subscribe\":null,\"design_template\":null,\"design_template_options\":null},\"threads_v2_settings\":{\"first_thread_email_sent_at\":\"2023-02-12T20:30:37.079+00:00\",\"activated_at\":\"2023-02-12T20:30:06.164+00:00\",\"reader_thread_notifications_enabled\":true,\"create_thread_minimum_role\":\"paid\",\"photo_replies_enabled\":true,\"boost_free_subscriber_chat_preview_enabled\":false,\"push_suppression_enabled\":false},\"default_group_coupon_percent_off\":\"50.00\",\"default_group_coupon_include_founding\":false,\"pause_return_date\":null,\"has_posts\":true,\"has_recommendations\":true,\"first_post_date\":\"2020-09-24T11:28:00.000Z\",\"has_podcast\":false,\"has_free_podcast\":false,\"has_subscriber_only_podcast\":false,\"has_community_content\":true,\"rankingDetail\":\"Launched 4 years ago\",\"rankingDetailFreeIncluded\":\"Tens of thousands of subscribers\",\"rankingDetailOrderOfMagnitude\":10,\"rankingDetailFreeIncludedOrderOfMagnitude\":10000,\"rankingDetailFreeSubscriberCount\":\"Over 19,000 subscribers\",\"rankingDetailByLanguage\":{\"ar\":{\"rankingDetail\":\"\u062A\u0645 \u0627\u0644\u0625\u0637\u0644\u0627\u0642 4 years ago\"},\"ca\":{\"rankingDetail\":\"S\u2019ha llan\u00E7at fa 4 anys\"},\"da\":{\"rankingDetail\":\"Lancering 4 \u00E5r\"},\"de\":{\"rankingDetail\":\"vor 4 Jahren gelauncht\"},\"es\":{\"rankingDetail\":\"Lanzado hace 4 a\u00F1os\"},\"fr\":{\"rankingDetail\":\"Lanc\u00E9 il y a 4 ann\u00E9es\"},\"id\":{\"rankingDetail\":\"Diluncurkan 4 tahun yang lalu\"},\"ja\":{\"rankingDetail\":\"\u958B\u59CB\u65E5 4\u5E74\u524D\"},\"ko\":{\"rankingDetail\":\"4\uB144 \uC804\uC5D0 \uCD9C\uC2DC\"},\"nb\":{\"rankingDetail\":\"Lansert 4 \u00E5r\"},\"nl\":{\"rankingDetail\":\"Gelanceerd 4 jaar geleden\"},\"pl\":{\"rankingDetail\":\"Uruchomiono 4 lat temu\"},\"pt\":{\"rankingDetail\":\"Lan\u00E7ado 4 anos\"},\"pt-br\":{\"rankingDetail\":\"Lan\u00E7ado 4 anos\"},\"en-gb\":{\"rankingDetail\":\"Launched 4 years ago\"},\"it\":{\"rankingDetail\":\"Lanciato 4 anni\"},\"tr\":{\"rankingDetail\":\"4 y\u0131l ba\u015Flat\u0131ld\u0131\"},\"sv\":{\"rankingDetail\":\"Lanserad 4 \u00E5r sedan\"},\"fi\":{\"rankingDetail\":\"Launched 4 vuotta\"},\"is\":{\"rankingDetail\":\"Launched 4 \u00E1r\"},\"zh-hans\":{\"rankingDetail\":\"\u4E8E4 \u5E74\u524D\u4E0A\u7EBF\"},\"zh-hant\":{\"rankingDetail\":\"\u65BC 4 \u5E74\u524D \u63A8\u51FA\"},\"en\":{\"rankingDetail\":\"Launched 4 years ago\"}},\"freeSubscriberCount\":\"19,000\",\"freeSubscriberCountOrderOfMagnitude\":\"19K+\",\"author_bestseller_tier\":0,\"author_badge\":null,\"disable_monthly_subscriptions\":false,\"disable_annual_subscriptions\":false,\"hide_post_restacks\":false,\"notes_feed_enabled\":true,\"showIntroModule\":false,\"isPortraitLayout\":false,\"last_chat_post_at\":\"2025-10-31T11:34:19.438Z\",\"primary_profile_name\":\"Alex Ewerl\u00F6f\",\"primary_profile_photo_url\":\"https://substackcdn.com/image/fetch/$s_!IRtW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg\",\"no_follow\":false,\"sponsorshipCampaigns\":{},\"paywall_chat\":\"free\",\"sections\":[{\"id\":67726,\"created_at\":\"2023-05-31T20:13:23.606Z\",\"updated_at\":\"2024-11-12T15:54:54.980Z\",\"publication_id\":1002265,\"name\":\"Technical Leadership\",\"description\":\"Technical Leadership, Staff Engineering, and impact without mandate\",\"slug\":\"tech-lead\",\"is_podcast\":false,\"is_live\":true,\"is_default_on\":true,\"sibling_rank\":0,\"port_status\":\"success\",\"logo_url\":null,\"hide_from_navbar\":false,\"email_from_name\":\"\",\"hide_posts_from_pub_listings\":false,\"email_banner_url\":null,\"cover_photo_url\":null,\"hide_intro_title\":false,\"hide_intro_subtitle\":false,\"ignore_publication_email_settings\":false,\"custom_config\":{},\"unifiedPodcastSettings\":null,\"showLinks\":[],\"podcastSettings\":null,\"pageTheme\":{\"id\":51608,\"publication_id\":1002265,\"section_id\":67726,\"page\":null,\"page_hero\":\"default\",\"page_posts\":\"grid\",\"show_podcast_links\":true,\"hero_alignment\":\"center\"},\"podcastPalette\":{\"DarkMuted\":{\"population\":72,\"rgb\":[73,153,137]},\"DarkVibrant\":{\"population\":6013,\"rgb\":[4,100,84]},\"LightMuted\":{\"population\":7,\"rgb\":[142,198,186]},\"LightVibrant\":{\"population\":3,\"rgb\":[166,214,206]},\"Muted\":{\"population\":6,\"rgb\":[92,164,156]},\"Vibrant\":{\"population\":5,\"rgb\":[76,164,146]}},\"spotify_podcast_settings\":null,\"unified_podcast_settings\":null},{\"id\":67723,\"created_at\":\"2023-05-31T19:57:24.859Z\",\"updated_at\":\"2024-03-22T13:16:12.203Z\",\"publication_id\":1002265,\"name\":\"Reliability Engineering\",\"description\":\"Concepts that help you with building reliable systems and architecture\",\"slug\":\"sre\",\"is_podcast\":false,\"is_live\":true,\"is_default_on\":true,\"sibling_rank\":1,\"port_status\":\"success\",\"logo_url\":null,\"hide_from_navbar\":false,\"email_from_name\":\"\",\"hide_posts_from_pub_listings\":false,\"email_banner_url\":null,\"cover_photo_url\":null,\"hide_intro_title\":false,\"hide_intro_subtitle\":false,\"ignore_publication_email_settings\":false,\"custom_config\":{},\"unifiedPodcastSettings\":null,\"showLinks\":[],\"podcastSettings\":null,\"pageTheme\":{\"id\":51609,\"publication_id\":1002265,\"section_id\":67723,\"page\":null,\"page_hero\":\"default\",\"page_posts\":\"grid\",\"show_podcast_links\":true,\"hero_alignment\":\"center\"},\"podcastPalette\":{\"DarkMuted\":{\"population\":72,\"rgb\":[73,153,137]},\"DarkVibrant\":{\"population\":6013,\"rgb\":[4,100,84]},\"LightMuted\":{\"population\":7,\"rgb\":[142,198,186]},\"LightVibrant\":{\"population\":3,\"rgb\":[166,214,206]},\"Muted\":{\"population\":6,\"rgb\":[92,164,156]},\"Vibrant\":{\"population\":5,\"rgb\":[76,164,146]}},\"spotify_podcast_settings\":null,\"unified_podcast_settings\":null},{\"id\":69986,\"created_at\":\"2023-06-17T13:00:28.926Z\",\"updated_at\":\"2023-06-17T13:00:28.926Z\",\"publication_id\":1002265,\"name\":\"Growth\",\"description\":\"Growth mindset, productivity, organizational growth, culture\",\"slug\":\"growth\",\"is_podcast\":false,\"is_live\":true,\"is_default_on\":true,\"sibling_rank\":2,\"port_status\":\"success\",\"logo_url\":null,\"hide_from_navbar\":false,\"email_from_name\":\"\",\"hide_posts_from_pub_listings\":false,\"email_banner_url\":null,\"cover_photo_url\":null,\"hide_intro_title\":false,\"hide_intro_subtitle\":false,\"ignore_publication_email_settings\":false,\"custom_config\":{},\"unifiedPodcastSettings\":null,\"showLinks\":[],\"podcastSettings\":null,\"pageTheme\":{\"id\":51610,\"publication_id\":1002265,\"section_id\":69986,\"page\":null,\"page_hero\":\"default\",\"page_posts\":\"grid\",\"show_podcast_links\":true,\"hero_alignment\":\"center\"},\"podcastPalette\":{\"DarkMuted\":{\"population\":72,\"rgb\":[73,153,137]},\"DarkVibrant\":{\"population\":6013,\"rgb\":[4,100,84]},\"LightMuted\":{\"population\":7,\"rgb\":[142,198,186]},\"LightVibrant\":{\"population\":3,\"rgb\":[166,214,206]},\"Muted\":{\"population\":6,\"rgb\":[92,164,156]},\"Vibrant\":{\"population\":5,\"rgb\":[76,164,146]}},\"spotify_podcast_settings\":null,\"unified_podcast_settings\":null},{\"id\":65305,\"created_at\":\"2023-05-14T08:17:44.620Z\",\"updated_at\":\"2023-05-14T08:17:44.620Z\",\"publication_id\":1002265,\"name\":\"Cartoons\",\"description\":\"The cartoons and doodles I draw from time to time\",\"slug\":\"cartoons\",\"is_podcast\":false,\"is_live\":true,\"is_default_on\":true,\"sibling_rank\":3,\"port_status\":\"success\",\"logo_url\":null,\"hide_from_navbar\":false,\"email_from_name\":\"\",\"hide_posts_from_pub_listings\":false,\"email_banner_url\":null,\"cover_photo_url\":null,\"hide_intro_title\":false,\"hide_intro_subtitle\":false,\"ignore_publication_email_settings\":false,\"custom_config\":{},\"unifiedPodcastSettings\":null,\"showLinks\":[],\"podcastSettings\":null,\"pageTheme\":{\"id\":51611,\"publication_id\":1002265,\"section_id\":65305,\"page\":null,\"page_hero\":\"default\",\"page_posts\":\"grid\",\"show_podcast_links\":true,\"hero_alignment\":\"center\"},\"podcastPalette\":{\"DarkMuted\":{\"population\":72,\"rgb\":[73,153,137]},\"DarkVibrant\":{\"population\":6013,\"rgb\":[4,100,84]},\"LightMuted\":{\"population\":7,\"rgb\":[142,198,186]},\"LightVibrant\":{\"population\":3,\"rgb\":[166,214,206]},\"Muted\":{\"population\":6,\"rgb\":[92,164,156]},\"Vibrant\":{\"population\":5,\"rgb\":[76,164,146]}},\"spotify_podcast_settings\":null,\"unified_podcast_settings\":null},{\"id\":192721,\"created_at\":\"2025-02-23T16:44:05.979Z\",\"updated_at\":\"2025-02-23T16:44:09.931Z\",\"publication_id\":1002265,\"name\":\"Code\",\"description\":\"Code and software development\",\"slug\":\"code\",\"is_podcast\":false,\"is_live\":true,\"is_default_on\":true,\"sibling_rank\":4,\"port_status\":\"success\",\"logo_url\":null,\"hide_from_navbar\":false,\"email_from_name\":\"\",\"hide_posts_from_pub_listings\":false,\"email_banner_url\":null,\"cover_photo_url\":null,\"hide_intro_title\":false,\"hide_intro_subtitle\":false,\"ignore_publication_email_settings\":false,\"custom_config\":{},\"unifiedPodcastSettings\":null,\"showLinks\":[],\"podcastSettings\":null,\"pageTheme\":{\"id\":51612,\"publication_id\":1002265,\"section_id\":192721,\"page\":null,\"page_hero\":\"default\",\"page_posts\":\"grid\",\"show_podcast_links\":true,\"hero_alignment\":\"center\"},\"podcastPalette\":{\"DarkMuted\":{\"population\":72,\"rgb\":[73,153,137]},\"DarkVibrant\":{\"population\":6013,\"rgb\":[4,100,84]},\"LightMuted\":{\"population\":7,\"rgb\":[142,198,186]},\"LightVibrant\":{\"population\":3,\"rgb\":[166,214,206]},\"Muted\":{\"population\":6,\"rgb\":[92,164,156]},\"Vibrant\":{\"population\":5,\"rgb\":[76,164,146]}},\"spotify_podcast_settings\":null,\"unified_podcast_settings\":null}],\"podcastTabInfo\":null,\"multipub_migration\":null,\"navigationBarItems\":[{\"id\":\"693b47dd-b5e5-4dbb-b7b3-891c9b2c1835\",\"publication_id\":1002265,\"sibling_rank\":0,\"link_title\":null,\"link_url\":null,\"section_id\":null,\"post_id\":null,\"is_hidden\":false,\"standard_key\":\"about\",\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":null},{\"id\":\"52ced5af-109a-4b1e-8910-89961a72b0a3\",\"publication_id\":1002265,\"sibling_rank\":0,\"link_title\":null,\"link_url\":null,\"section_id\":null,\"post_id\":null,\"is_hidden\":true,\"standard_key\":\"leaderboard\",\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":null},{\"id\":\"5657cede-0e4c-4869-8f2d-c73ebe2b3338\",\"publication_id\":1002265,\"sibling_rank\":0,\"link_title\":null,\"link_url\":null,\"section_id\":null,\"post_id\":null,\"is_hidden\":true,\"standard_key\":\"notes\",\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":null},{\"id\":\"d020acfa-0f0b-4afb-a793-8626297a59aa\",\"publication_id\":1002265,\"sibling_rank\":1,\"link_title\":null,\"link_url\":null,\"section_id\":null,\"post_id\":null,\"is_hidden\":true,\"standard_key\":\"chat\",\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":null},{\"id\":\"fc613bc6-10ab-41ef-9d39-a6a818fbb5ba\",\"publication_id\":1002265,\"sibling_rank\":2,\"link_title\":null,\"link_url\":null,\"section_id\":67726,\"post_id\":null,\"is_hidden\":null,\"standard_key\":null,\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":{\"id\":67726,\"slug\":\"tech-lead\",\"name\":\"Technical Leadership\",\"hide_from_navbar\":false,\"is_podcast\":false,\"logo_url\":null,\"newsletter_enabled\":null}},{\"id\":\"68d82a75-97a1-498b-b089-b9d606ee0f27\",\"publication_id\":1002265,\"sibling_rank\":3,\"link_title\":null,\"link_url\":null,\"section_id\":67723,\"post_id\":null,\"is_hidden\":null,\"standard_key\":null,\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":{\"id\":67723,\"slug\":\"sre\",\"name\":\"Reliability Engineering\",\"hide_from_navbar\":false,\"is_podcast\":false,\"logo_url\":null,\"newsletter_enabled\":null}},{\"id\":\"8a522501-651b-45bc-b881-3e2a2497ec29\",\"publication_id\":1002265,\"sibling_rank\":4,\"link_title\":null,\"link_url\":null,\"section_id\":69986,\"post_id\":null,\"is_hidden\":null,\"standard_key\":null,\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":{\"id\":69986,\"slug\":\"growth\",\"name\":\"Growth\",\"hide_from_navbar\":false,\"is_podcast\":false,\"logo_url\":null,\"newsletter_enabled\":null}},{\"id\":\"702039d0-d1f1-4070-adb7-6a88110ac904\",\"publication_id\":1002265,\"sibling_rank\":5,\"link_title\":null,\"link_url\":null,\"section_id\":65305,\"post_id\":null,\"is_hidden\":null,\"standard_key\":null,\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":{\"id\":65305,\"slug\":\"cartoons\",\"name\":\"Cartoons\",\"hide_from_navbar\":false,\"is_podcast\":false,\"logo_url\":null,\"newsletter_enabled\":null}},{\"id\":\"71e27c1f-1d9d-486d-bcce-3b707aedb0f6\",\"publication_id\":1002265,\"sibling_rank\":8,\"link_title\":\"FAQ\",\"link_url\":\"\",\"section_id\":null,\"post_id\":141786627,\"is_hidden\":null,\"standard_key\":null,\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":{\"id\":141786627,\"slug\":\"faq\",\"title\":\"FAQ\",\"type\":\"page\"},\"section\":null},{\"id\":\"c3e7d81f-5147-498f-8317-72f318b996c3\",\"publication_id\":1002265,\"sibling_rank\":9999,\"link_title\":null,\"link_url\":null,\"section_id\":192721,\"post_id\":null,\"is_hidden\":null,\"standard_key\":null,\"post_tag_id\":null,\"parent_id\":null,\"is_group\":false,\"postTag\":null,\"children\":[],\"post\":null,\"section\":{\"id\":192721,\"slug\":\"code\",\"name\":\"Code\",\"hide_from_navbar\":false,\"is_podcast\":false,\"logo_url\":null,\"newsletter_enabled\":null}}],\"has_active_perks\":false,\"contributors\":[{\"name\":\"Alex Ewerl\u00F6f\",\"handle\":\"alexewerlof\",\"role\":\"admin\",\"owner\":true,\"user_id\":87732486,\"photo_url\":\"https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg\",\"bio\":\"Writes about technical leadership, growth mindset, and system reliability engineering. Senior Staff Engineer, MSc Systems Engineering from KTH, Stockholmer, dad, amateur artist. Read more here: https://www.alexewerlof.com/who\",\"status\":{\"bestsellerTier\":null,\"subscriberTier\":null,\"leaderboard\":null,\"vip\":false,\"badge\":null,\"subscriber\":null}}],\"threads_v2_enabled\":true,\"viralGiftsConfig\":{\"id\":\"549946e0-1129-4592-ba5f-6bcab8c6cb5d\",\"publication_id\":1002265,\"enabled\":true,\"gifts_per_user\":5,\"gift_length_months\":1,\"send_extra_gifts\":true,\"message\":\"Technical Leadership, personal growth, software\",\"created_at\":\"2022-12-01T16:46:31.467333+00:00\",\"updated_at\":\"2022-12-01T16:46:31.467333+00:00\",\"days_til_invite\":14,\"send_emails\":true,\"show_link\":null},\"no_index\":false,\"tier\":2,\"can_set_google_site_verification\":true,\"can_have_sitemap\":true,\"iap_advanced_plans\":[{\"sku\":\"c1LuwhX14kmFN5UK5J\",\"publication_id\":\"1002265\",\"is_active\":true,\"price_base_units\":1200,\"currency_alpha3\":\"usd\",\"period\":\"month\",\"created_at\":\"2026-07-07T19:37:06.872Z\",\"updated_at\":\"2026-07-07T19:37:06.872Z\",\"id\":\"1272592\",\"payout_amount_base_units\":86,\"alternate_currencies\":{\"aud\":1800,\"brl\":6500,\"cad\":1800,\"chf\":1000,\"dkk\":8000,\"eur\":1100,\"gbp\":900,\"mxn\":21000,\"nok\":12000,\"nzd\":2200,\"pln\":4500,\"sek\":12000},\"is_founding\":false,\"display_name\":\"Alex Ewerl\u00F6f Notes (Monthly)\",\"display_price\":\"$12\"},{\"sku\":\"MC73cNbFZtu7O35fUc\",\"publication_id\":\"1002265\",\"is_active\":true,\"price_base_units\":11500,\"currency_alpha3\":\"usd\",\"period\":\"year\",\"created_at\":\"2026-07-07T19:37:06.880Z\",\"updated_at\":\"2026-07-07T19:37:06.880Z\",\"id\":\"1272593\",\"payout_amount_base_units\":847,\"alternate_currencies\":{\"aud\":17000,\"brl\":59500,\"cad\":16500,\"chf\":9500,\"dkk\":75500,\"eur\":10500,\"gbp\":9000,\"mxn\":200000,\"nok\":112500,\"nzd\":20500,\"pln\":43500,\"sek\":111000},\"is_founding\":false,\"display_name\":\"Alex Ewerl\u00F6f Notes (Yearly)\",\"display_price\":\"$115\"}],\"iap_founding_plan\":{\"base_plan_id\":\"founding20000eur\",\"name\":\"VIP supporter\",\"minimum_amount\":27500,\"suggested_amount\":27500,\"currency_alpha3\":\"usd\",\"alternate_currencies\":{\"gbp\":{\"minimum_amount\":20500,\"suggested_amount\":20500},\"eur\":{\"minimum_amount\":24000,\"suggested_amount\":24000},\"cad\":{\"minimum_amount\":38500,\"suggested_amount\":38500},\"mxn\":{\"minimum_amount\":467000,\"suggested_amount\":467000},\"aud\":{\"minimum_amount\":38500,\"suggested_amount\":38500},\"brl\":{\"minimum_amount\":141000,\"suggested_amount\":141000},\"sek\":{\"minimum_amount\":267000,\"suggested_amount\":267000},\"chf\":{\"minimum_amount\":22500,\"suggested_amount\":22500},\"dkk\":{\"minimum_amount\":177500,\"suggested_amount\":177500},\"nok\":{\"minimum_amount\":255500,\"suggested_amount\":255500},\"inr\":{\"minimum_amount\":2628500,\"suggested_amount\":2628500},\"jpy\":{\"minimum_amount\":42500,\"suggested_amount\":42500},\"nzd\":{\"minimum_amount\":47500,\"suggested_amount\":47500},\"pln\":{\"minimum_amount\":103000,\"suggested_amount\":103000}}},\"founding_plan_name_english\":\"VIP supporter\",\"base_url\":\"https://blog.alexewerlof.com\",\"hostname\":\"blog.alexewerlof.com\",\"is_on_substack\":false,\"spotify_podcast_settings\":null,\"unified_podcast_settings\":null,\"podcastPalette\":{\"DarkMuted\":{\"population\":72,\"rgb\":[73,153,137]},\"DarkVibrant\":{\"population\":6013,\"rgb\":[4,100,84]},\"LightMuted\":{\"population\":7,\"rgb\":[142,198,186]},\"LightVibrant\":{\"population\":3,\"rgb\":[166,214,206]},\"Muted\":{\"population\":6,\"rgb\":[92,164,156]},\"Vibrant\":{\"population\":5,\"rgb\":[76,164,146]}},\"pageThemes\":{\"podcast\":null},\"supports_ip_content_unlock\":false,\"appTheme\":{\"colors\":{\"accent\":{\"name\":\"#ffbc52\",\"primary\":{\"r\":222,\"g\":158,\"b\":52,\"a\":1},\"primary_hover\":{\"r\":201,\"g\":140,\"b\":31,\"a\":1},\"primary_elevated\":{\"r\":201,\"g\":140,\"b\":31,\"a\":1},\"secondary\":{\"r\":222,\"g\":158,\"b\":52,\"a\":0.2},\"contrast\":{\"r\":255,\"g\":255,\"b\":255,\"a\":1},\"bg\":{\"r\":222,\"g\":158,\"b\":52,\"a\":0.2},\"bg_hover\":{\"r\":222,\"g\":158,\"b\":52,\"a\":0.3},\"dark\":{\"primary\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1},\"primary_hover\":{\"r\":255,\"g\":210,\"b\":125,\"a\":1},\"primary_elevated\":{\"r\":255,\"g\":210,\"b\":125,\"a\":1},\"secondary\":{\"r\":255,\"g\":188,\"b\":82,\"a\":0.2},\"contrast\":{\"r\":0,\"g\":0,\"b\":0,\"a\":0.8},\"bg\":{\"r\":255,\"g\":188,\"b\":82,\"a\":0.2},\"bg_hover\":{\"r\":255,\"g\":188,\"b\":82,\"a\":0.3}}},\"fg\":{\"primary\":{\"r\":0,\"g\":0,\"b\":0,\"a\":0.8},\"secondary\":{\"r\":0,\"g\":0,\"b\":0,\"a\":0.6},\"tertiary\":{\"r\":0,\"g\":0,\"b\":0,\"a\":0.4},\"accent\":{\"r\":151,\"g\":97,\"b\":0,\"a\":1},\"dark\":{\"primary\":{\"r\":255,\"g\":255,\"b\":255,\"a\":0.9},\"secondary\":{\"r\":255,\"g\":255,\"b\":255,\"a\":0.6},\"tertiary\":{\"r\":255,\"g\":255,\"b\":255,\"a\":0.4},\"accent\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1}}},\"bg\":{\"name\":\"#0085e5\",\"hue\":{\"r\":0,\"g\":133,\"b\":229,\"a\":1},\"tint\":{\"r\":0,\"g\":133,\"b\":229,\"a\":0.1},\"primary\":{\"r\":229.5,\"g\":242.8,\"b\":252.39999999999998,\"a\":1},\"primary_hover\":{\"r\":225,\"g\":238.29999999999998,\"b\":247.9,\"a\":1},\"primary_elevated\":{\"r\":225,\"g\":238.29999999999998,\"b\":247.9,\"a\":1},\"secondary\":{\"r\":214.2,\"g\":227.5,\"b\":237.1,\"a\":1},\"secondary_elevated\":{\"r\":184.9454280083347,\"g\":197.91521411644928,\"b\":207.26517218866366,\"a\":1},\"tertiary\":{\"r\":197.1,\"g\":210.4,\"b\":219.99999999999997,\"a\":1},\"quaternary\":{\"r\":163.79999999999998,\"g\":177.10000000000002,\"b\":186.70000000000002,\"a\":1},\"dark\":{\"primary\":{\"r\":19.8,\"g\":34,\"b\":44.5,\"a\":1},\"primary_hover\":{\"r\":24.3,\"g\":38.50000000000001,\"b\":48.99999999999999,\"a\":1},\"primary_elevated\":{\"r\":24.3,\"g\":38.50000000000001,\"b\":48.99999999999999,\"a\":1},\"secondary\":{\"r\":31.5,\"g\":46.60000000000001,\"b\":56.2,\"a\":1},\"secondary_elevated\":{\"r\":38.73972711589789,\"g\":54.076229834048654,\"b\":63.89709451363946,\"a\":1},\"tertiary\":{\"r\":48.6,\"g\":62.8,\"b\":72.4,\"a\":1},\"quaternary\":{\"r\":81.00000000000001,\"g\":95.2,\"b\":104.80000000000001,\"a\":1}}}}},\"portalAppTheme\":{\"colors\":{\"accent\":{\"name\":\"#FFBC52\",\"primary\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1},\"primary_hover\":{\"r\":255,\"g\":178,\"b\":56,\"a\":1},\"primary_elevated\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1},\"secondary\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1},\"contrast\":{\"r\":255,\"g\":255,\"b\":255,\"a\":1},\"bg\":{\"r\":255,\"g\":103,\"b\":25,\"a\":0.2},\"bg_hover\":{\"r\":255,\"g\":103,\"b\":25,\"a\":0.3},\"dark\":{\"name\":\"#FFBC52\",\"primary\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1},\"primary_hover\":{\"r\":255,\"g\":178,\"b\":56,\"a\":1},\"primary_elevated\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1},\"secondary\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1},\"contrast\":{\"r\":255,\"g\":255,\"b\":255,\"a\":1},\"bg\":{\"r\":255,\"g\":103,\"b\":25,\"a\":0.2},\"bg_hover\":{\"r\":255,\"g\":103,\"b\":25,\"a\":0.3}}},\"fg\":{\"primary\":{\"r\":226,\"g\":232,\"b\":237,\"a\":1},\"secondary\":{\"r\":153,\"g\":161,\"b\":168,\"a\":1},\"tertiary\":{\"r\":109,\"g\":120,\"b\":130,\"a\":1},\"accent\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1},\"dark\":{\"primary\":{\"r\":226,\"g\":232,\"b\":237,\"a\":1},\"secondary\":{\"r\":153,\"g\":161,\"b\":168,\"a\":1},\"tertiary\":{\"r\":109,\"g\":120,\"b\":130,\"a\":1},\"accent\":{\"r\":255,\"g\":188,\"b\":82,\"a\":1}}},\"bg\":{\"name\":\"#001426\",\"hue\":{\"r\":0,\"g\":20,\"b\":38,\"a\":1},\"tint\":{\"r\":0,\"g\":20,\"b\":38,\"a\":1},\"primary\":{\"r\":0,\"g\":20,\"b\":38,\"a\":1},\"primary_hover\":{\"r\":15,\"g\":34,\"b\":51,\"a\":1},\"primary_elevated\":{\"r\":15,\"g\":34,\"b\":51,\"a\":1},\"secondary\":{\"r\":15,\"g\":34,\"b\":51,\"a\":1},\"secondary_elevated\":{\"r\":34,\"g\":52,\"b\":67,\"a\":1},\"tertiary\":{\"r\":34,\"g\":52,\"b\":67,\"a\":1},\"quaternary\":{\"r\":72,\"g\":86,\"b\":99,\"a\":1},\"dark\":{\"name\":\"#001426\",\"hue\":{\"r\":0,\"g\":20,\"b\":38,\"a\":1},\"tint\":{\"r\":0,\"g\":20,\"b\":38,\"a\":1},\"primary\":{\"r\":0,\"g\":20,\"b\":38,\"a\":1},\"primary_hover\":{\"r\":15,\"g\":34,\"b\":51,\"a\":1},\"primary_elevated\":{\"r\":15,\"g\":34,\"b\":51,\"a\":1},\"secondary\":{\"r\":15,\"g\":34,\"b\":51,\"a\":1},\"secondary_elevated\":{\"r\":34,\"g\":52,\"b\":67,\"a\":1},\"tertiary\":{\"r\":34,\"g\":52,\"b\":67,\"a\":1},\"quaternary\":{\"r\":72,\"g\":86,\"b\":99,\"a\":1}}},\"wordmark_bg\":{\"r\":0,\"g\":20,\"b\":38,\"a\":1},\"is_dark\":true},\"fonts\":{\"heading\":\"heavy_sans\",\"body\":\"merriweather_400\"}},\"logoPalette\":{\"Vibrant\":{\"rgb\":[252,188,84],\"population\":5509},\"DarkVibrant\":{\"rgb\":[4,20,36],\"population\":556},\"LightVibrant\":{\"rgb\":[244,181,84],\"population\":7},\"Muted\":{\"rgb\":[124,100,60],\"population\":1},\"DarkMuted\":{\"rgb\":[80,71,52],\"population\":65},\"LightMuted\":{\"rgb\":[143.75274725274724,90.7912087912088,9.247252747252743],\"population\":0}},\"section\":{\"id\":67723,\"created_at\":\"2023-05-31T19:57:24.859Z\",\"updated_at\":\"2024-03-22T13:16:12.203Z\",\"publication_id\":1002265,\"name\":\"Reliability Engineering\",\"description\":\"Concepts that help you with building reliable systems and architecture\",\"slug\":\"sre\",\"is_podcast\":false,\"is_live\":true,\"is_default_on\":true,\"sibling_rank\":1,\"port_status\":\"success\",\"logo_url\":null,\"hide_from_navbar\":false,\"email_from_name\":\"\",\"hide_posts_from_pub_listings\":false,\"email_banner_url\":null,\"cover_photo_url\":null,\"hide_intro_title\":false,\"hide_intro_subtitle\":false,\"ignore_publication_email_settings\":false,\"custom_config\":{},\"unifiedPodcastSettings\":null,\"showLinks\":[],\"podcastSettings\":null,\"pageTheme\":{\"id\":51609,\"publication_id\":1002265,\"section_id\":67723,\"page\":null,\"page_hero\":\"default\",\"page_posts\":\"grid\",\"show_podcast_links\":true,\"hero_alignment\":\"center\"},\"podcastPalette\":{\"DarkMuted\":{\"population\":72,\"rgb\":[73,153,137]},\"DarkVibrant\":{\"population\":6013,\"rgb\":[4,100,84]},\"LightMuted\":{\"population\":7,\"rgb\":[142,198,186]},\"LightVibrant\":{\"population\":3,\"rgb\":[166,214,206]},\"Muted\":{\"population\":6,\"rgb\":[92,164,156]},\"Vibrant\":{\"population\":5,\"rgb\":[76,164,146]}},\"spotify_podcast_settings\":null,\"unified_podcast_settings\":null}},\"confirmedLogin\":false,\"hide_intro_popup\":false,\"block_auto_login\":false,\"domainInfo\":{\"isSubstack\":false,\"customDomain\":\"blog.alexewerlof.com\"},\"experimentFeatures\":{},\"experimentExposures\":{},\"siteConfigs\":{\"score_upsell_email\":\"control\",\"first_chat_email_enabled\":true,\"new_commenter_approval\":false,\"pub_update_opennode_api_key\":false,\"notes_video_max_duration_minutes\":15,\"show_content_label_age_gating_in_feed\":false,\"zendesk_automation_cancellations\":false,\"mfa_action_box_enabled\":false,\"publication_max_bylines\":35,\"no_contest_charge_disputes\":false,\"scheduled_post_share_assets_enabled\":false,\"publication_tabs_reorder\":false,\"comp_expiry_email_new_copy\":\"NONE\",\"free_unlock_required\":false,\"enable_section_group_pages\":false,\"enable_post_summarization\":false,\"live_stream_host_warning_message\":\"\",\"bitcoin_enabled\":false,\"minimum_ios_os_version\":\"17.0.0\",\"show_entire_square_image\":false,\"hide_subscriber_count\":false,\"fit_in_live_stream_player\":false,\"publication_author_display_override\":\"\",\"enable_saved_segments\":true,\"generate_pdf_tax_report\":false,\"hide_post_sidebar\":false,\"show_generic_post_importer\":false,\"enable_pledges_modal\":true,\"community_automod_non_english_enabled\":true,\"audio_clips_enabled\":false,\"enable_videos_page\":false,\"exempt_from_gtm_filter\":false,\"group_sections_and_podcasts_in_menu\":false,\"boost_optin_modal_enabled\":true,\"standards_and_enforcement_features_enabled\":false,\"pub_creation_captcha_behavior\":\"risky_pubs_or_rate_limit\",\"post_blogspot_importer\":false,\"enable_high_res_background_uploading\":false,\"pub_tts_override\":\"default\",\"disable_monthly_subscriptions\":false,\"skip_welcome_email\":false,\"chat_reader_thread_notification_default\":false,\"scheduled_pinned_posts\":false,\"disable_redirect_outbound_utm_params\":false,\"reader_gift_referrals_enabled\":true,\"dont_show_guest_byline\":false,\"like_comments_enabled\":true,\"enable_theme_editor_deferred_saves\":false,\"enable_sponsorship_campaigns_advanced\":false,\"temporal_livestream_ended_draft\":true,\"enable_pangram_ai_detection\":true,\"fallback_to_archive_search_on_section_pages\":false,\"livekit_track_egress_custom_base_url\":\"http://livekit-egress-custom-recorder-participant-test.s3-website-us-east-1.amazonaws.com\",\"welcome_screen_blurb_override\":\"\",\"like_posts_enabled\":true,\"twitter_player_card_enabled\":true,\"feed_promoted_user\":false,\"show_note_stats_for_all_notes\":false,\"section_specific_csv_imports_enabled\":false,\"disable_podcast_feed_description_cta\":false,\"bypass_profile_substack_logo_detection\":false,\"use_preloaded_player_sources\":false,\"list_pruning_enabled\":false,\"facebook_connect\":false,\"opt_in_to_sections_during_subscribe\":false,\"underlined_colored_links\":false,\"enable_efficient_digest_embed\":false,\"enable_aligned_images\":false,\"max_image_upload_mb\":64,\"threads_suggested_ios_version\":null,\"pledges_disabled\":false,\"threads_minimum_ios_version\":812,\"hide_podcast_email_setup_link\":false,\"subscribe_captcha_behavior\":\"default\",\"publication_ban_sample_rate\":0,\"custom_themes_substack_subscribe_modal\":false,\"ios_post_share_assets_screenshot_trigger\":\"control\",\"opt_in_to_sections_during_subscribe_include_main_pub_newsletter\":false,\"continue_support_cta_in_newsletter_emails\":false,\"bloomberg_syndication_enabled\":false,\"allow_document_freeze\":false,\"test_age_gate_user\":false,\"podcast_main_feed_is_firehose\":false,\"pub_app_incentive_gift\":\"\",\"no_embed_redirect\":false,\"customized_email_from_name_for_new_follow_emails\":\"treatment\",\"spotify_open_access_sandbox_mode\":false,\"disable_custom_nav_menu\":false,\"enable_livestream_name_cards\":false,\"fullstory_enabled\":false,\"chat_reply_poll_interval\":3,\"thefp_enable_email_upsell_banner\":false,\"force_pub_links_to_use_subdomain\":false,\"always_show_cookie_banner\":false,\"hide_media_download_option\":false,\"hide_post_restacks\":false,\"feed_item_source_debug_mode\":false,\"twitter_embed_video_playback_enabled\":false,\"publication_homepage_title_display_override\":\"\",\"enable_email_automation_stats\":false,\"post_preview_highlight_byline\":false,\"4k_video\":false,\"enable_islands_section_intent_screen\":false,\"post_metering_enabled\":false,\"notifications_disabled\":\"\",\"cross_post_notification_threshold\":1000,\"facebook_connect_prod_app\":true,\"force_into_pymk_ranking\":false,\"minimum_android_version\":756,\"group_size_change_notification_email_enabled\":false,\"enable_transcription_translations\":false,\"use_og_image_as_twitter_image_for_post_previews\":false,\"always_use_podcast_channel_art_as_episode_art_in_rss\":false,\"seo_tier_override\":\"NONE\",\"editor_role_enabled\":false,\"no_follow_links\":false,\"publisher_api_enabled\":false,\"zendesk_support_priority\":\"default\",\"enable_post_clips_stats\":false,\"enable_subscriber_referrals_awards\":true,\"ios_profile_themes_feed_permalink_enabled\":false,\"reader_survey_during_subscribe_enabled\":true,\"use_publication_language_for_transcription\":false,\"show_substack_funded_gifts_tooltip\":true,\"disable_ai_transcription\":false,\"per_pub_notification_settings\":false,\"live_stream_creation_enabled\":true,\"disable_card_element_in_europe\":false,\"web_growth_item_promotion_threshold\":0,\"bundle_subscribe_enabled\":false,\"web_vitals_sample_rate\":0,\"allow_live_stream_auto_takedown\":\"true\",\"mobile_publication_attachments_enabled\":false,\"enable_design_templates_events_page\":false,\"enable_survey_response_crm_filters\":false,\"disable_personal_substack_initialization\":false,\"section_specific_welcome_pages\":false,\"local_payment_methods\":\"control\",\"publisher_api_cancel_comp\":false,\"posts_in_rss_feed\":20,\"publisher_dashboard_section_selector\":false,\"reader_surveys_platform_question_order\":\"36,1,4,2,3,5,6,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35\",\"login_guard_app_link_in_email\":true,\"community_moderators_enabled\":false,\"enable_custom_theme\":false,\"monthly_sub_is_one_off\":false,\"unread_notes_activity_digest\":\"control\",\"display_cookie_settings\":false,\"welcome_page_query_params\":false,\"enable_free_podcast_urls\":false,\"comp_expiry_emails_disabled\":false,\"enable_description_on_polls\":false,\"use_microlink_for_instagram_embeds\":false,\"free_signup_confirmation_behavior\":\"with_email_validation\",\"ios_post_stats_for_admins\":false,\"enable_design_templates\":false,\"use_livestream_post_media_composition\":true,\"section_specific_preambles\":false,\"pub_export_temp_disable\":false,\"show_menu_on_posts\":false,\"ios_post_subscribe_web_routing\":true,\"enable_pangram_detection_settings\":false,\"freewalls_enabled_web\":false,\"app_onboarding_survey_email\":false,\"republishing_enabled\":false,\"app_mode\":false,\"show_phone_banner\":false,\"minimum_ios_version\":2200,\"enable_author_pages\":false,\"enable_decagon_chat\":true,\"first_month_upsell\":\"control\",\"new_user_checklist_enabled\":\"use_follower_count\",\"disable_high_res_recording\":false,\"latex_upgraded_inline\":false,\"anonymous_post_metering_enabled\":false,\"rss_verification_code\":\"\",\"notification_post_emails\":\"experiment\",\"chat_suppress_contributor_push_option_enabled\":false,\"enable_subscriber_tags\":true,\"media_feed_app_prepend_inbox_limit\":0,\"export_hooks_enabled\":false,\"audio_encoding_bitrate\":null,\"extra_seats_coupon_type\":false,\"post_subdomain_universal_links\":false,\"post_import_max_file_size\":26214400,\"feed_promoted_video_publication\":false,\"livekit_reconnect_slate_url\":\"https://mux-livestream-assets.s3.us-east-1.amazonaws.com/custom-disconnect-slate-tall.png\",\"exclude_from_pymk_suggestions\":false,\"publication_ranking_variant\":\"experiment\",\"disable_annual_subscriptions\":false,\"hack_jane_manchun_wong\":true,\"android_enable_auto_gain_control\":true,\"allow_coupons_on_upgrade\":false,\"test_au_age_gate_user\":false,\"pub_auto_moderation_enabled\":false,\"disable_live_stream_ai_trimming_by_default\":false,\"disable_deletion\":false,\"livekit_egress_custom_base_url\":\"http://livekit-egress-custom-recorder.s3-website-us-east-1.amazonaws.com\",\"clip_focused_video_upload_flow\":false,\"live_stream_max_guest_users\":2,\"android_upgrade_alert_dialog_reincarnated\":true,\"enable_video_seo_data\":false,\"can_reimport_unsubscribed_users_with_2x_optin\":false,\"founding_upgrade_during_gift_disabled\":false,\"thefp_enable_section_groups\":false,\"review_incoming_email\":\"default\",\"enable_founding_gifts\":false,\"enable_sponsorship_campaigns\":false,\"thefp_forum_polls_enabled\":false,\"thefp_enable_embed_media_links\":false,\"sort_modal_search_results\":false,\"default_thumbnail_time\":10,\"load_test_unichat\":false,\"live_stream_head_alignment_guide\":false,\"free_press_combo_subscribe_flow_enabled\":false,\"enable_code_embed_toc\":false,\"enable_publication_tax_settings\":false,\"gifts_from_substack_feature_available\":true,\"disable_ai_clips\":false,\"enable_elevenlabs_voiceovers\":false,\"thefp_enable_transcripts\":false,\"show_simple_post_editor\":false,\"instacart_integration_enabled\":false,\"enable_publication_podcasts_page\":false,\"enable_direct_message_request_bypass\":false,\"enable_apple_news_sync\":false,\"live_stream_in_trending_topic_overrides\":\"\",\"free_press_newsletter_promo_enabled\":false,\"account_based_post_metering_enabled\":false,\"disable_live_stream_reactions\":false,\"instacart_partner_id\":\"\",\"enable_adhoc_email_scheduling\":true,\"media_feed_prepend_inbox_limit\":35,\"welcome_page_no_opt_out\":false,\"enable_caption_translation_tools\":false,\"section_specific_postscripts\":false,\"edit_profile_theme_colors\":false,\"disable_clipping_for_readers\":false,\"enable_apple_podcast_delivery_self_serve_pem_files\":false,\"enable_press_kit_preview_modal\":false,\"enable_rnc_page\":true,\"live_stream_video_degradation_preference\":\"maintainFramerate\",\"enable_high_follower_dm\":true,\"pause_app_badges\":false,\"profile_feed_expanded_inventory\":false,\"livekit_mux_latency_mode\":\"low\",\"feed_juiced_user\":0,\"global_iap_plan_setup_countries\":\"AE,AG,AL,AM,AT,AU,BA,BG,BH,BJ,BN,BS,BT,BW,CH,CI,CR,CY,CZ,DK,DZ,EC,EE,ET,FI,GM,GT,GY,HK,HR,HU,ID,IL,IN,IS,JM,JO,KE,KW,LC,LI,LK,LT,LU,LV,MA,MD,MG,MK,MN,MT,MU,MX,MY,MZ,NA,NO,NZ,OM,PA,PE,PH,PK,QA,RO,RS,RW,SE,SG,SI,SK,SN,SV,TH,TN,TR,TT,TW,TZ,UZ,VN,ZA\",\"enable_collapsed_content\":false,\"enable_polymarket_expandable_embeds\":true,\"publisher_dashboard_group_subs_sidebar\":false,\"use_advanced_commerce_api_for_iap\":false,\"skip_free_preview_language_in_podcast_notes\":false,\"larger_wordmark_on_publication_homepage\":false,\"enable_mobile_stats_for_admins\":false,\"enable_livestream_youtube_simulcast\":false,\"enable_persona_sandbox_environment\":false,\"allowed_email_domains\":\"mozmail.com\",\"create_nav_item_from_tag\":false,\"bypass_single_unlock_token_limit\":false,\"enable_code_embeds\":false,\"add_section_and_tag_metadata\":false,\"daily_promoted_notes_enabled\":true,\"enable_segments_ui_revamp\":true,\"enable_islands_cms\":false,\"enable_livestream_combined_stats\":false,\"redirect_to_pub_after_welcome_signup\":false,\"chartbeat_video_enabled\":false,\"enable_drip_campaigns\":false,\"enable_filtered_posts_on_homepage\":false,\"post_management_search_engine\":\"elasticsearch\",\"new_bestseller_leaderboard_feed_item_enabled\":false,\"feed_main_disabled\":false,\"enable_account_settings_revamp\":false,\"thefp_enable_fp_recirc_block\":false,\"top_search_variant\":\"control\",\"enable_debug_logs_ios\":false,\"show_pub_content_on_profile_for_pub_id\":0,\"show_pub_content_on_profile\":false,\"livekit_track_egress\":true,\"onboarding_suggestions_search\":\"experiment\",\"feed_tuner_enabled\":false,\"livekit_mux_latency_mode_rtmp\":\"low\",\"google_login_enabled\":false,\"livekit_high_quality_egress\":false,\"iap_announcement_blog_url\":\"\",\"disable_code_embed_chrome\":false,\"ios_livestream_feedback\":false,\"founding_plan_upgrade_warning\":false,\"ios_mediaplayer_reply_bar_v2\":false,\"enable_notification_email_batching\":true,\"note_author_poll_results_visible_by_default\":true,\"ios_hide_portal_tab_bar\":false,\"follow_upsell_rollout_percentage\":30,\"gift_article_enabled\":false,\"live_stream_invite_ttl_seconds\":900000,\"include_founding_plans_coupon_option\":false,\"thefp_enable_cancellation_discount_offer\":false,\"android_enable_edit_profile_theme\":false,\"disable_audio_enhancement\":false,\"pub_search_variant\":\"control\",\"ignore_video_in_notes_length_limit\":false,\"substack_gtm_enabled\":false,\"allow_long_videos\":true,\"enable_automation_filters\":false,\"use_enhanced_video_embed_player\":true,\"founding_upgrade_preview\":false,\"enable_viewing_all_livestream_viewers\":false,\"send_subscription_canceled_email\":false,\"enable_clip_prompt_variant_filtering\":true,\"chartbeat_enabled\":false,\"dpn_ranking_enabled\":true,\"enable_custom_email_css\":false,\"thefp_enable_shows_page\":false,\"enable_apple_podcast_auto_publish\":false,\"linkedin_profile_search_enabled\":false,\"publication_has_own_app\":false,\"suggested_minimum_ios_version\":0,\"thebulwark_enable_footer_actions\":false,\"enable_posts_to_segments\":true,\"trending_topics_module_long_term_experiment\":\"control\",\"phone_verification_fallback_to_twilio\":false,\"enable_suggested_searches\":true,\"enable_subscription_notification_email_batching\":true,\"feed_controls\":\"control\",\"thefp_enable_plans_modal_v2\":false,\"a24_redemption_link\":\"\",\"design_templates_launch_phase\":\"off\",\"post_custom_email_from_name_enabled\":false,\"ios_live_stream_auto_gain_enabled\":true,\"enable_publication_tts_player\":false,\"enable_group_direct_messages\":true,\"enable_notes_admins\":false,\"thefp_show_pub_app_callout_on_post\":false,\"search_ranker_variant\":\"experiment\",\"forced_featured_topic_id\":\"\",\"ios_audio_captions_disabled\":false,\"web_podcasts_tab\":false,\"related_posts_enabled\":false,\"thefp_enable_homepage_secondary_nav\":false,\"ios_live_stream_pip_dismiss_v4\":\"control\",\"reply_rate_limit_max_distinct_users_daily\":110,\"web_post_metering_enabled\":true,\"search_retrieval_variant\":\"experiment\",\"mobile_user_attachments_enabled\":false,\"web_profile_publication_recommendations_carousel\":true,\"publisher_banner\":\"\",\"enable_sponsorship_profile\":false,\"gift_article_button_enabled\":false,\"reply_rate_limit_max_distinct_users_monthly\":600,\"desktop_live_stream_screen_share_audio_enabled\":false,\"creator_match\":true,\"ai_image_generation_enabled\":true,\"ios_default_coupon_enabled\":true,\"automod_admin_hidden_comments_tab\":true,\"video_clip_suggestions_enabled\":false,\"publisher_dashboard_home_layout_experiment\":\"control\",\"android_polymarket_embed_search\":false,\"audience_section_editor_help_link\":\"https://support.substack.com/hc/en-us/articles/50558240901268-How-do-I-add-audience-specific-content-to-a-post-on-Substack\",\"portal_ranking_variant\":\"experiment\",\"permalink_reply_ranking_variant\":\"experiment\",\"allow_feed_category_filtering\":false,\"enable_dynamic_content\":true,\"enable_thumbnail_editor_media_settings_integration\":false,\"subscriber_profile_survey_responses_enabled\":true,\"private_live_streaming_enabled\":true,\"desktop_live_stream_safe_framing\":0.8,\"translate_posts_on_standalone_sites\":true,\"bundle_subscribe_default_to_regular_plan\":false,\"enable_standardized_sponsorship_formats\":false,\"enable_pencraft_signin_form\":true,\"thefp_enable_secondary_section_redesign\":false,\"bignight_page_enabled\":true,\"thefp_paywall_annual_plans_experiment\":\"control\",\"enable_launch_assistant\":false,\"enable_youtube_exploration\":true,\"publisher_dashboard_nav_refresh\":false,\"thefp_enable_bundle_post_follow\":false,\"web_notes_tiptap_v3_experiment\":\"treatment_tiptap_v3\",\"recipe_rich_text_enabled\":true,\"publisher_dashboard_nav_refresh_experiment\":\"treatment\",\"chat_channel_creation_enabled\":false,\"web_onboarding_content_type_preferences\":\"experiment\",\"web_mobile_asset_handoff\":false},\"trackingTokens\":{\"fbPixelId\":null,\"gaPixelId\":null,\"twitterPixelId\":null,\"parselyPixelId\":null,\"googleTagManagerToken\":\"\",\"googleAnalytics4Token\":\"G-G8RXW18CW7\",\"twitterPixelSignupEventId\":null,\"twitterPixelSubscribeEventId\":null},\"publicationSettings\":{\"block_ai_crawlers\":false,\"credit_token_enabled\":true,\"custom_tos_and_privacy\":false,\"did_identity\":null,\"disable_optimistic_bank_payments\":false,\"display_welcome_page_details\":true,\"payment_pledges_enabled\":false,\"enable_drop_caps\":false,\"enable_post_page_conversion\":true,\"enable_prev_next_nav\":false,\"enable_restacking\":false,\"founding_group_subscriptions_enabled\":false,\"gifts_from_substack_disabled\":false,\"google_analytics_4_token\":\"G-G8RXW18CW7\",\"group_sections_and_podcasts_in_menu_enabled\":false,\"live_stream_homepage_visibility\":\"contributorsAndAdmins\",\"live_stream_homepage_style\":\"autoPlay\",\"live_stream_replay_enabled\":true,\"medium_length_description\":\"Senior Staff Engineer distilling 2+ decades of experience in System Reliability Engineering, Technical Leadership, and growth\",\"notes_feed_enabled\":true,\"paywall_unlock_tokens\":true,\"post_preview_crop_gravity\":\"center\",\"post_preview_radius\":\"xs\",\"reader_referrals_enabled\":true,\"reader_referrals_leaderboard_enabled\":true,\"seen_coming_soon_explainer\":false,\"seen_google_analytics_migration_modal\":false,\"local_currency_modal_seen\":true,\"local_payment_methods_modal_seen\":true,\"twitter_pixel_signup_event_id\":null,\"twitter_pixel_subscribe_event_id\":null,\"use_inclusive_sales_tax\":false,\"use_local_currency\":true,\"welcome_page_opt_out_text\":\"Maybe Later\",\"cookie_settings\":\"\",\"show_restacks_below_posts\":true,\"holiday_gifting_post_header\":true,\"homepage_message_text\":\"\",\"homepage_message_link\":\"\",\"about_us_author_ids\":\"\",\"archived_section_ids\":\"\",\"column_section_ids\":\"\",\"fp_primary_column_section_ids\":\"\",\"event_section_ids\":\"\",\"podcasts_metadata\":\"\",\"video_section_ids\":\"\",\"post_metering_enabled\":false,\"account_based_post_metering_enabled\":false,\"use_custom_theme\":false,\"reply_rules\":null,\"automatic_moderation_enabled\":true,\"auto_translate_enabled\":true,\"additional_post_languages_enabled\":false,\"high_res_recording_beta\":false},\"publicationUserSettings\":null,\"userSettings\":{\"user_id\":null,\"activity_likes_enabled\":true,\"dashboard_nav_refresh_enabled\":false,\"is_guest_post_enabled\":true,\"invite_friends_nux_dismissed_at\":null,\"suggestions_feed_item_last_shown_at\":null,\"last_notification_alert_shown_at\":null,\"disable_reply_hiding\":false,\"newest_seen_chat_item_published_at\":null,\"explicitContentEnabled\":false,\"contactMatchingEnabled\":false,\"messageRequestLevel\":\"everyone\",\"liveStreamAcceptableInviteLevel\":\"everyone\",\"liveStreamAcceptableChatLevel\":\"everyone\",\"creditTokensTreatmentExposed\":false,\"appBadgeIncludesChat\":false,\"autoPlayVideo\":true,\"autoAdvanceVideo\":true,\"smart_delivery_enabled\":false,\"chatbotTermsLastAcceptedAt\":null,\"has_seen_notes_post_app_upsell\":false,\"first_note_id\":null,\"show_concurrent_live_stream_viewers\":false,\"edit_profile_feed_item_dismissed_at\":null,\"mobile_permalink_app_upsell_seen_at\":null,\"new_user_checklist_enabled\":false,\"has_seen_youtube_shorts_auto_publish_announcement\":false,\"has_seen_publish_youtube_connect_upsell\":false,\"notificationQualityFilterEnabled\":true,\"hasSeenOnboardingNewslettersScreen\":false,\"bestsellerBadgeEnabled\":true,\"hasSelfIdentifiedAsCreator\":false,\"autoTranslateEnabled\":true,\"autoTranslateBlocklist\":[],\"fineTuneFeedItemSeenAt\":null,\"fineTuneFeedItemDismissedAt\":null,\"aiGeneratedTextMode\":\"show\",\"feedVideoPreference\":5,\"feedAudioPreference\":5,\"feedLongerPostsPreference\":5,\"feedChatPreference\":5},\"mux_env_key\":\"u42pci814i6011qg3segrcpp9\",\"persona_environment_id\":\"env_o1Lbk4JhpY4PmvNkwaBdYwe5Fzkt\",\"sentry_environment\":\"production\",\"launchWelcomePage\":false,\"pendingInviteForActiveLiveStream\":null,\"isEligibleForLiveStreamCreation\":true,\"webviewPlatform\":null,\"noIndex\":false,\"post\":{\"audience\":\"everyone\",\"audience_before_archived\":null,\"canonical_url\":\"https://blog.alexewerlof.com/p/percentile\",\"default_comment_sort\":null,\"editor_v2\":false,\"exempt_from_archive_paywall\":false,\"free_unlock_required\":false,\"id\":145056343,\"podcast_art_url\":null,\"podcast_duration\":null,\"podcast_preview_upload_id\":null,\"podcast_upload_id\":null,\"podcast_url\":null,\"post_date\":\"2024-06-25T17:06:35.019Z\",\"updated_at\":\"2026-06-17T13:32:08.945Z\",\"publication_id\":1002265,\"search_engine_description\":\"What is percentile? Why is it used in the context of reliability engineering and optimization. Play with an open source web app that is created generated and graph random data according to your criteria.\\nDiscover the key differences between percentile and average in data analysis. This comprehensive guide explains how percentiles work, their applications, and how they compare to averages. Perfect for students and professionals seeking a deeper understanding of these statistical measures. Percentiles are especially useful in the context of service levels (SLI/SLO).\",\"search_engine_title\":null,\"section_id\":67723,\"should_send_free_preview\":false,\"show_guest_bios\":true,\"slug\":\"percentile\",\"social_title\":\"Percentile\",\"subtitle\":\"What is it? Why is it used? And why is it important in the context of optimization and reliability engineering? Bonus: a browser app that lets you play with data.\",\"teaser_post_eligible\":true,\"title\":\"Percentile\",\"type\":\"newsletter\",\"video_upload_id\":null,\"write_comment_permissions\":\"everyone\",\"meter_type\":\"none\",\"live_stream_id\":null,\"is_published\":true,\"restacks\":3,\"reactions\":{\"\u2764\":31},\"top_exclusions\":[],\"pins\":[],\"section_pins\":[],\"has_shareable_clips\":false,\"previous_post_slug\":\"service-level-adoption-obstacles\",\"next_post_slug\":\"service-degradation-vs-disruption\",\"cover_image\":\"https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png\",\"cover_image_is_square\":false,\"cover_image_is_explicit\":false,\"videoUpload\":null,\"podcastFields\":{\"post_id\":145056343,\"podcast_episode_number\":null,\"podcast_season_number\":null,\"podcast_episode_type\":null,\"should_syndicate_to_other_feed\":null,\"syndicate_to_section_id\":null,\"hide_from_feed\":false,\"free_podcast_url\":null,\"free_podcast_duration\":null,\"preview_contains_ad\":false,\"was_imported_self_serve_sync\":false,\"draft_free_podcast_url\":null,\"draft_free_podcast_duration\":null},\"podcastUpload\":null,\"podcastPreviewUpload\":null,\"voiceover_upload_id\":null,\"voiceoverUpload\":null,\"has_voiceover\":false,\"description\":\"What is it? Why is it used? And why is it important in the context of reliability engineering?\",\"body_html\":\"<p>In simple terms, we can think of a metric as an array of values with a timestamp and some optional tags.</p><p>For example, the latency metric values for an API endpoint may look like this:</p><p><code>metric_data = [<br> { epoch: 1716898141, 200, tags: [ \u201Capi\u201D, \u201CGET\u201D ] },<br> { epoch: 1716898142, 212, tags: [ \u201Capi\u201D, \u201CGET\u201D ] },<br> { epoch: 1716898143, 102, tags: [ \u201Capi\u201D, \u201CGET\u201D ] },<br> { epoch: 1716898144, 290, tags: [ \u201Capi\u201D, \u201CGET\u201D ] },<br> { epoch: 1716898145, 180, tags: [ \u201Capi\u201D, \u201CGET\u201D ] },<br> { epoch: 1716898146, 3000, tags: [ \u201Capi\u201D, \u201CGET\u201D ] },<br> { epoch: 1716898147, 153, tags: [ \u201Capi\u201D, \u201CGET\u201D ] },<br> \u2026<br>]</code></p><p>Let\u2019s ignore the timing and tags for now to focus on the values:</p><p><code>metric_values = [ 200, 212, 102, 290, 180, 3000, 153, \u2026 ]</code></p><p>In this dataset, most latency values are in the range [<code>100ms..200ms] </code>but there\u2019s an outlier there: <code>3000ms</code>. What happened there? Before we look into that, let\u2019s see if one of the most common tools can help: average.</p><p>The average of the whole dataset including the outlier is:</p><p><code>average([200, 212, 102, 290, 180, 3000, 153]) = 591ms</code></p><p>Without the outlier we have:</p><p><code>average([200, 212, 102, 290, 180, 153]) = 189.5ms</code></p><p>So, it is <code>591ms</code> versus <code>189.5ms</code>! Pretty large difference!</p><p>That is how average works: it hides those outliers and makes all data look equally bad.</p><p>Average often does not represent an actual data point.</p><p>For example, the average American family <a href=\\\"https://www.statista.com/statistics/718084/average-number-of-own-children-per-family/\\\">has 1.94 children</a>! I know what one child looks like, but what exactly is 0.94 child? \uD83D\uDC76And apparently all families have it! \uD83D\uDE04Even the ones with no kids! \uD83E\uDD2F</p><p>If we want to focus our optimization efforts on the outliers, we need a tool that\u2019s better than average (no pun intended)! We want a tool that picks actual outlier data points.</p><p>Say hello to percentiles!</p><h1>Percentiles</h1><p>Percentile is the value above a percentage of all data points.</p><p>OK, that was a mouthful. \uD83E\uDD2DLet\u2019s say we have a metric with these values:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!42w4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!42w4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 424w, https://substackcdn.com/image/fetch/$s_!42w4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 848w, https://substackcdn.com/image/fetch/$s_!42w4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 1272w, https://substackcdn.com/image/fetch/$s_!42w4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!42w4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png\\\" width=\\\"1456\\\" height=\\\"450\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":450,"width":1456,"resizeWidth":null,"bytes":589623,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!42w4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 424w, https://substackcdn.com/image/fetch/$s_!42w4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 848w, https://substackcdn.com/image/fetch/$s_!42w4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 1272w, https://substackcdn.com/image/fetch/$s_!42w4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7ede2bd5-3a1f-49aa-8e6e-f47f0f274bc5_3129x968.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>These are 1000 values for a metric that is mostly hovering around 11000 to 12000 but occasionally there are outliers which are significantly higher or lower.</p><p>The purpose of percentiles is to deal with outliers (either remove them or flag them).</p><p>Why? I think this image does a pretty decent job of describing the problem with metrics:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!OSjx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!OSjx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 424w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 848w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!OSjx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg\\\" width=\\\"526\\\" height=\\\"524\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":524,"width":526,"resizeWidth":null,"bytes":null,"alt":null,"title":null,"type":null,"href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!OSjx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 424w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 848w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!OSjx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a29827e-f053-47a0-9ed2-5a06613ab162_526x524.jpeg 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>The idea is very simple and intuitive:</p><ol><li><p>Sort the data</p></li><li><p>Pick the data at the index that is at <code>p%</code> of the number of data points</p></li></ol><p>Let\u2019s try that with the dataset above.</p><ol><li><p>The sorted data looks like this:</p></li></ol><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!PpmL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!PpmL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 424w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 848w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 1272w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!PpmL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png\\\" width=\\\"1456\\\" height=\\\"453\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":453,"width":1456,"resizeWidth":null,"bytes":56139,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!PpmL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 424w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 848w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 1272w, https://substackcdn.com/image/fetch/$s_!PpmL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b43209c-15ae-43f6-a2b7-1910184efc3f_1558x485.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><ol start=\\\"2\\\"><li><p>The percentile <code>P0, P1, P2, \u2026, P100</code> look like this:</p></li></ol><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!PPQe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!PPQe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 424w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 848w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 1272w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!PPQe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png\\\" width=\\\"1456\\\" height=\\\"427\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":427,"width":1456,"resizeWidth":null,"bytes":109706,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!PPQe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 424w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 848w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 1272w, https://substackcdn.com/image/fetch/$s_!PPQe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F372395ff-70a1-4cc6-8a18-247f9bfd9753_3393x994.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>Do you spot the similarity? That\u2019s because percentiles are directly deduced from the sorted data points.</p><p><em>Note: for consistency, in this article we only sort the data in ascending order, but the data may as well be sorted in descending order. The sorting order is not a requirement for percentiles.</em></p><p>Now we can write a small function that returns a given data point at a desired percentile:</p><div class=\\\"github-gist\\\" data-attrs=\\\"{"innerHTML":"<div id=\\\\"gist131039584\\\\" class=\\\\"gist\\\\">\\\\n <div class=\\\\"gist-file\\\\" translate=\\\\"no\\\\" data-color-mode=\\\\"light\\\\" data-light-theme=\\\\"light\\\\">\\\\n <div class=\\\\"gist-data\\\\">\\\\n <div class=\\\\"js-gist-file-update-container js-task-list-container\\\\">\\\\n <div id=\\\\"file-percentile-js\\\\" class=\\\\"file my-2\\\\">\\\\n \\\\n <div itemprop=\\\\"text\\\\" class=\\\\"Box-body p-0 blob-wrapper data type-javascript \\\\">\\\\n\\\\n \\\\n<div class=\\\\"js-check-bidi js-blob-code-container blob-code-content\\\\">\\\\n\\\\n <template class=\\\\"js-file-alert-template\\\\">\\\\n <div data-view-component=\\\\"true\\\\" class=\\\\"flash flash-warn flash-full d-flex flex-items-center\\\\">\\\\n <svg aria-hidden=\\\\"true\\\\" height=\\\\"16\\\\" viewBox=\\\\"0 0 16 16\\\\" version=\\\\"1.1\\\\" width=\\\\"16\\\\" data-view-component=\\\\"true\\\\" class=\\\\"octicon octicon-alert\\\\">\\\\n <path d=\\\\"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\\\\"></path>\\\\n</svg>\\\\n <span>\\\\n This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.\\\\n <a class=\\\\"Link--inTextBlock\\\\" href=\\\\"https://github.co/hiddenchars\\\\" target=\\\\"_blank\\\\">Learn more about bidirectional Unicode characters</a>\\\\n </span>\\\\n\\\\n\\\\n <div data-view-component=\\\\"true\\\\" class=\\\\"flash-action\\\\"> <a href=\\\\"{{ revealButtonHref }}\\\\" data-view-component=\\\\"true\\\\" class=\\\\"btn-sm btn\\\\"> Show hidden characters\\\\n</a>\\\\n</div>\\\\n</div></template>\\\\n<template class=\\\\"js-line-alert-template\\\\">\\\\n <span aria-label=\\\\"This line has hidden Unicode characters\\\\" data-view-component=\\\\"true\\\\" class=\\\\"line-alert tooltipped tooltipped-e\\\\">\\\\n <svg aria-hidden=\\\\"true\\\\" height=\\\\"16\\\\" viewBox=\\\\"0 0 16 16\\\\" version=\\\\"1.1\\\\" width=\\\\"16\\\\" data-view-component=\\\\"true\\\\" class=\\\\"octicon octicon-alert\\\\">\\\\n <path d=\\\\"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\\\\"></path>\\\\n</svg>\\\\n</span></template>\\\\n\\\\n <table data-hpc class=\\\\"highlight tab-size js-file-line-container js-code-nav-container js-tagsearch-file\\\\" data-tab-size=\\\\"8\\\\" data-paste-markdown-skip data-tagsearch-lang=\\\\"JavaScript\\\\" data-tagsearch-path=\\\\"percentile.js\\\\">\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L1\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"1\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC1\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c>/**</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L2\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"2\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC2\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c> * Gets the index of the element in an array that corresponds to the given percentile</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L3\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"3\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC3\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c> * @param {number} arrLength the length of the array that we want to calculate its percentile</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L4\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"4\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC4\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c> * @param {number} p the percentile in the range [0..100] inclusive</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L5\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"5\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC5\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c> * @returns index of the array element that corresponds to the given percentile</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L6\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"6\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC6\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c> */</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L7\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"7\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC7\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-k>export</span> <span class=pl-k>function</span> <span class=pl-en>percentileIndex</span><span class=pl-kos>(</span><span class=pl-s1>arrLength</span><span class=pl-kos>,</span> <span class=pl-s1>p</span><span class=pl-kos>)</span> <span class=pl-kos>{</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L8\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"8\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC8\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"> <span class=pl-k>const</span> <span class=pl-s1>maxPossibleIndex</span> <span class=pl-c1>=</span> <span class=pl-s1>arrLength</span> <span class=pl-c1>-</span> <span class=pl-c1>1</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L9\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"9\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC9\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"> <span class=pl-k>return</span> <span class=pl-v>Math</span><span class=pl-kos>.</span><span class=pl-en>ceil</span><span class=pl-kos>(</span><span class=pl-s1>maxPossibleIndex</span> <span class=pl-c1>*</span> <span class=pl-s1>p</span> <span class=pl-c1>/</span> <span class=pl-c1>100</span><span class=pl-kos>)</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L10\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"10\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC10\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-kos>}</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L11\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"11\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC11\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\">\\\\n</td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L12\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"12\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC12\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c>/**</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L13\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"13\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC13\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c> * @returns the value at the nth location in the array where n is between 0 to array.length</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L14\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"14\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC14\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-c> */</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L15\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"15\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC15\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-k>export</span> <span class=pl-k>function</span> <span class=pl-en>percentile</span><span class=pl-kos>(</span><span class=pl-s1>arr</span><span class=pl-kos>,</span> <span class=pl-s1>p</span><span class=pl-kos>)</span> <span class=pl-kos>{</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L16\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"16\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC16\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"> <span class=pl-k>return</span> <span class=pl-s1>arr</span><span class=pl-kos>[</span><span class=pl-en>percentileIndex</span><span class=pl-kos>(</span><span class=pl-s1>arr</span><span class=pl-kos>.</span><span class=pl-c1>length</span><span class=pl-kos>)</span><span class=pl-kos>]</span></td>\\\\n </tr>\\\\n <tr>\\\\n <td id=\\\\"file-percentile-js-L17\\\\" class=\\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\\" data-line-number=\\\\"17\\\\"></td>\\\\n <td id=\\\\"file-percentile-js-LC17\\\\" class=\\\\"blob-code blob-code-inner js-file-line\\\\"><span class=pl-kos>}</span></td>\\\\n </tr>\\\\n </table>\\\\n</div>\\\\n\\\\n\\\\n </div>\\\\n\\\\n </div>\\\\n</div>\\\\n\\\\n </div>\\\\n <div class=\\\\"gist-meta\\\\">\\\\n <a href=\\\\"https://gist.github.com/alexewerlof/4f1b19e1818e9135abf83fc6180ec17b/raw/2d6dc92d466485352174dc446e8265a55d295330/percentile.js\\\\" style=\\\\"float:right\\\\" class=\\\\"Link--inTextBlock\\\\">view raw</a>\\\\n <a href=\\\\"https://gist.github.com/alexewerlof/4f1b19e1818e9135abf83fc6180ec17b#file-percentile-js\\\\" class=\\\\"Link--inTextBlock\\\\">\\\\n percentile.js\\\\n </a>\\\\n hosted with &#10084; by <a class=\\\\"Link--inTextBlock\\\\" href=\\\\"https://github.com\\\\">GitHub</a>\\\\n </div>\\\\n </div>\\\\n</div>\\\\n","stylesheet":"https://github.githubassets.com/assets/gist-embed-c38b724e3032.css"}\\\" data-component-name=\\\"GitgistToDOM\\\"><link rel=\\\"stylesheet\\\" href=\\\"https://github.githubassets.com/assets/gist-embed-c38b724e3032.css\\\"><div id=\\\"gist131039584\\\" class=\\\"gist\\\">\\n <div class=\\\"gist-file\\\" data-color-mode=\\\"light\\\" data-light-theme=\\\"light\\\">\\n <div class=\\\"gist-data\\\">\\n <div class=\\\"js-gist-file-update-container js-task-list-container\\\">\\n <div id=\\\"file-percentile-js\\\" class=\\\"file my-2\\\">\\n \\n <div itemprop=\\\"text\\\" class=\\\"Box-body p-0 blob-wrapper data type-javascript \\\">\\n\\n \\n<div class=\\\"js-check-bidi js-blob-code-container blob-code-content\\\">\\n\\n \\n <div data-view-component=\\\"true\\\" class=\\\"flash flash-warn flash-full d-flex flex-items-center\\\">\\n \\n \\n\\n <span>\\n This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.\\n <a class=\\\"Link--inTextBlock\\\" href=\\\"https://github.co/hiddenchars\\\" target=\\\"_blank\\\">Learn more about bidirectional Unicode characters</a>\\n </span>\\n\\n\\n <div data-view-component=\\\"true\\\" class=\\\"flash-action\\\"> <a href=\\\"{{ revealButtonHref }}\\\" data-view-component=\\\"true\\\" class=\\\"btn-sm btn\\\"> Show hidden characters\\n</a>\\n</div>\\n</div>\\n\\n <span data-view-component=\\\"true\\\" class=\\\"line-alert tooltipped tooltipped-e\\\">\\n \\n \\n\\n</span>\\n\\n <table data-hpc=\\\"\\\" class=\\\"highlight tab-size js-file-line-container js-code-nav-container js-tagsearch-file\\\" data-tab-size=\\\"8\\\" data-paste-markdown-skip=\\\"\\\" data-tagsearch-lang=\\\"JavaScript\\\" data-tagsearch-path=\\\"percentile.js\\\">\\n <tbody><tr>\\n <td id=\\\"file-percentile-js-L1\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"1\\\"></td>\\n <td id=\\\"file-percentile-js-LC1\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\">/**</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L2\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"2\\\"></td>\\n <td id=\\\"file-percentile-js-LC2\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\"> * Gets the index of the element in an array that corresponds to the given percentile</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L3\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"3\\\"></td>\\n <td id=\\\"file-percentile-js-LC3\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\"> * @param {number} arrLength the length of the array that we want to calculate its percentile</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L4\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"4\\\"></td>\\n <td id=\\\"file-percentile-js-LC4\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\"> * @param {number} p the percentile in the range [0..100] inclusive</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L5\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"5\\\"></td>\\n <td id=\\\"file-percentile-js-LC5\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\"> * @returns index of the array element that corresponds to the given percentile</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L6\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"6\\\"></td>\\n <td id=\\\"file-percentile-js-LC6\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\"> */</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L7\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"7\\\"></td>\\n <td id=\\\"file-percentile-js-LC7\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-k\\\">export</span> <span class=\\\"pl-k\\\">function</span> <span class=\\\"pl-en\\\">percentileIndex</span><span class=\\\"pl-kos\\\">(</span><span class=\\\"pl-s1\\\">arrLength</span><span class=\\\"pl-kos\\\">,</span> <span class=\\\"pl-s1\\\">p</span><span class=\\\"pl-kos\\\">)</span> <span class=\\\"pl-kos\\\">{</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L8\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"8\\\"></td>\\n <td id=\\\"file-percentile-js-LC8\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"> <span class=\\\"pl-k\\\">const</span> <span class=\\\"pl-s1\\\">maxPossibleIndex</span> <span class=\\\"pl-c1\\\">=</span> <span class=\\\"pl-s1\\\">arrLength</span> <span class=\\\"pl-c1\\\">-</span> <span class=\\\"pl-c1\\\">1</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L9\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"9\\\"></td>\\n <td id=\\\"file-percentile-js-LC9\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"> <span class=\\\"pl-k\\\">return</span> <span class=\\\"pl-v\\\">Math</span><span class=\\\"pl-kos\\\">.</span><span class=\\\"pl-en\\\">ceil</span><span class=\\\"pl-kos\\\">(</span><span class=\\\"pl-s1\\\">maxPossibleIndex</span> <span class=\\\"pl-c1\\\">*</span> <span class=\\\"pl-s1\\\">p</span> <span class=\\\"pl-c1\\\">/</span> <span class=\\\"pl-c1\\\">100</span><span class=\\\"pl-kos\\\">)</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L10\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"10\\\"></td>\\n <td id=\\\"file-percentile-js-LC10\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-kos\\\">}</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L11\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"11\\\"></td>\\n <td id=\\\"file-percentile-js-LC11\\\" class=\\\"blob-code blob-code-inner js-file-line\\\">\\n</td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L12\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"12\\\"></td>\\n <td id=\\\"file-percentile-js-LC12\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\">/**</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L13\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"13\\\"></td>\\n <td id=\\\"file-percentile-js-LC13\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\"> * @returns the value at the nth location in the array where n is between 0 to array.length</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L14\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"14\\\"></td>\\n <td id=\\\"file-percentile-js-LC14\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-c\\\"> */</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L15\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"15\\\"></td>\\n <td id=\\\"file-percentile-js-LC15\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-k\\\">export</span> <span class=\\\"pl-k\\\">function</span> <span class=\\\"pl-en\\\">percentile</span><span class=\\\"pl-kos\\\">(</span><span class=\\\"pl-s1\\\">arr</span><span class=\\\"pl-kos\\\">,</span> <span class=\\\"pl-s1\\\">p</span><span class=\\\"pl-kos\\\">)</span> <span class=\\\"pl-kos\\\">{</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L16\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"16\\\"></td>\\n <td id=\\\"file-percentile-js-LC16\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"> <span class=\\\"pl-k\\\">return</span> <span class=\\\"pl-s1\\\">arr</span><span class=\\\"pl-kos\\\">[</span><span class=\\\"pl-en\\\">percentileIndex</span><span class=\\\"pl-kos\\\">(</span><span class=\\\"pl-s1\\\">arr</span><span class=\\\"pl-kos\\\">.</span><span class=\\\"pl-c1\\\">length</span><span class=\\\"pl-kos\\\">)</span><span class=\\\"pl-kos\\\">]</span></td>\\n </tr>\\n <tr>\\n <td id=\\\"file-percentile-js-L17\\\" class=\\\"blob-num js-line-number js-code-nav-line-number js-blob-rnum\\\" data-line-number=\\\"17\\\"></td>\\n <td id=\\\"file-percentile-js-LC17\\\" class=\\\"blob-code blob-code-inner js-file-line\\\"><span class=\\\"pl-kos\\\">}</span></td>\\n </tr>\\n </tbody></table>\\n</div>\\n\\n\\n </div>\\n\\n </div>\\n</div>\\n\\n </div>\\n <div class=\\\"gist-meta\\\">\\n <a href=\\\"https://gist.github.com/alexewerlof/4f1b19e1818e9135abf83fc6180ec17b/raw/2d6dc92d466485352174dc446e8265a55d295330/percentile.js\\\" style=\\\"float:right\\\" class=\\\"Link--inTextBlock\\\">view raw</a>\\n <a href=\\\"https://gist.github.com/alexewerlof/4f1b19e1818e9135abf83fc6180ec17b#file-percentile-js\\\" class=\\\"Link--inTextBlock\\\">\\n percentile.js\\n </a>\\n hosted with \u2764 by <a class=\\\"Link--inTextBlock\\\" href=\\\"https://github.com\\\">GitHub</a>\\n </div>\\n </div>\\n</div>\\n</div><p>The code is pretty simple. It just returns the array element at the nth position where n is at the p% position of the array length.</p><p>Example:</p><ul><li><p>If the array has <code>100 </code>elements, <code>P99 </code>is the item at the <code>99th</code> position. For languages that start the array from <code>0</code>, that would be <code>arr[98]</code></p></li><li><p>If the array has <code>1000 </code>elements, <code>P99 </code>is the <code>990th </code>element or <code>arr[989]</code></p></li><li><p>If the array has <code>24 </code>elements, <code>P95 </code>is the <code>23rd </code>element or <code>arr[22]</code>. That\u2019s because the maximum possible array index is <code>23</code> and <code>95%23 = 21.85. Math.ceil(21.85) = 22</code>. Since this array is so short, even <code>P99 </code>is also at <code>arr[22]</code>.</p></li></ul><p>In simple terms, <code>P99 </code>is the value that shows up at the 99% position in a sorted array.</p><p>While <code>P99</code>, <code>P95</code>, or even <code>P90 </code>are most used, there\u2019s no rule that excludes other numbers between 0-100.</p><p>For example, if you want to find unusually small numbers in a dataset, you can look for P1 or even P0.1.</p><p><code>P0.1</code> may look confusing, but it uses the same rules as before: find the data at the <code>0.1%</code> of the sorted dataset.</p><p>Example:</p><ul><li><p>If the array has <code>100 </code>elements, <code>P0.1 </code>is the item at the <code>2nd</code> position. For languages that start the array from 0, that would be <code>arr[1]</code></p></li><li><p>If the array has <code>10000 </code>elements, <code>P0.1 </code>is the <code>11th </code>element or <code>arr[10]</code>. That\u2019s because the maximum possible array index is <code>9999 </code>and <code>0.1%9999 = 9.999. Math.ceil(9.999) = 10</code>.</p></li></ul><p>Other notable percentiles are:</p><ul><li><p>P10: Also known as <strong>1st Decile</strong></p></li><li><p>P20: Also known as <strong>2nd Decile</strong></p></li><li><p>P25: Also known as <strong>1st Quartile</strong></p></li><li><p>P50: Also known as <em>median</em> or <strong>2nd Quartile </strong>(this is not the average, but the item that is located exactly in the middle of the array)</p></li><li><p>P75: Also known as <strong>3rd Quartile</strong></p></li><li><p>P80: Also known as <strong>8th Decile</strong></p></li></ul><p><code>P50</code> is an interesting one. Instead of average, it represents the data in the middle of a sorted array.</p><p>For example, although the average American has <a href=\\\"https://www.statista.com/statistics/718084/average-number-of-own-children-per-family/\\\">1.89 children</a>, the median family has either 0, 1, or 2 children. I couldn\u2019t find the stats in a way that allowed me to calculate the median, but you get the point: <strong>percentile</strong> <em>selects</em> a data point from the array whereas <strong>average </strong><em>aggregates</em> the data points.</p><p>You don\u2019t have to care about <em>decile</em> and <em>quartile</em>. I just wrote about them for the sake of inclusivity. In practice we almost exclusively work with <em>percentile</em>.</p><p>For the exact dataset that was visualized in this page, we have the following stats:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!itdg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!itdg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 424w, https://substackcdn.com/image/fetch/$s_!itdg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 848w, https://substackcdn.com/image/fetch/$s_!itdg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 1272w, https://substackcdn.com/image/fetch/$s_!itdg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!itdg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png\\\" width=\\\"633\\\" height=\\\"498\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":498,"width":633,"resizeWidth":null,"bytes":133203,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!itdg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 424w, https://substackcdn.com/image/fetch/$s_!itdg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 848w, https://substackcdn.com/image/fetch/$s_!itdg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 1272w, https://substackcdn.com/image/fetch/$s_!itdg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8136c08c-edc3-4dc9-bc17-78e535534032_633x498.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>If you want to play with different datasets, I\u2019ve written <a href=\\\"https://alexewerlof.github.io/percentile/\\\">a free open-source tool</a> that helped me learn and visualize these concepts.</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!_LEM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!_LEM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 424w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 848w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 1272w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!_LEM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png\\\" width=\\\"1174\\\" height=\\\"1280\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":1280,"width":1174,"resizeWidth":null,"bytes":290093,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!_LEM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 424w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 848w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 1272w, https://substackcdn.com/image/fetch/$s_!_LEM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F570f2593-7c0f-4fef-95a5-14dd230b68a4_1174x1280.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>The interface is a bit crud at the moment, but I have big plans for integrating it to the <a href=\\\"https://slc.alexewerlof.com/\\\">Service Leval Calculator</a>.</p><div class=\\\"digest-post-embed\\\" data-attrs=\\\"{"nodeId":"fbccd967-1ee1-4488-9cf8-b6faca70e9f3","caption":"Note: the \uD83D\uDD34 red circles mark the articles that are to be published. As they are gradually published, they will be linked. At my current job, I\u2019m responsible to help over hundred teams to set their Service Levels: Choose meaningful indicators (SLI) Set","cta":null,"showBylines":true,"showDescription":true,"showImage":true,"size":"sm","isEditorNode":true,"title":"Introducing Service Level Calculator","publishedBylines":[{"id":87732486,"name":"Alex Ewerl\u00F6f","bio":"Writes about technical leadership, growth mindset, and system reliability engineering.\\\\n\\\\nSenior Staff Engineer, MSc Systems Engineering from KTH, Stockholmer, dad, amateur artist.\\\\n\\\\nRead more here: https://www.alexewerlof.com/who","photo_url":"https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg","is_guest":false,"bestseller_tier":null}],"post_date":"2023-12-06T05:30:16.528Z","cover_image":"https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb36bf32a-0d98-4de9-ae99-ea880183557d_500x500.png","cover_image_alt":null,"canonical_url":"https://blog.alexewerlof.com/p/slc","section_name":"Reliability Engineering","video_upload_id":null,"id":139424483,"type":"newsletter","reaction_count":4,"comment_count":2,"publication_id":null,"publication_name":"Alex Ewerl\u00F6f Notes","publication_logo_url":"https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png","belowTheFold":true,"youtube_url":null,"show_links":null,"feed_url":null}\\\"></div><p>Note: using percentiles simplifies talking about data. For example, if you read:</p><blockquote><p><code>12%</code> of European households have <code>3</code> or more children \u2014<a href=\\\"https://www.elfac.org/12-of-european-households-have-3-or-more-children/\\\">elfac.org</a></p></blockquote><p>You know that if there was an array representing the number of children for each individual family in Europe:</p><ul><li><p>If it was sorted in the decreasing order, the family at the position <code>P12</code>, would have exactly <code>3</code> children</p></li></ul><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!ANw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!ANw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 424w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 848w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 1272w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!ANw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png\\\" width=\\\"1456\\\" height=\\\"422\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":422,"width":1456,"resizeWidth":null,"bytes":55575,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!ANw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 424w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 848w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 1272w, https://substackcdn.com/image/fetch/$s_!ANw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c3cc67-8247-4e71-b8e7-357a933a29b8_1621x470.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><ul><li><p>If it was sorted in increasing order, the <code>P88</code> family would have exactly <code>3</code> children.</p></li></ul><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!YVAR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!YVAR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 424w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 848w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 1272w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!YVAR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png\\\" width=\\\"1456\\\" height=\\\"419\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/a9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":419,"width":1456,"resizeWidth":null,"bytes":56048,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!YVAR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 424w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 848w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 1272w, https://substackcdn.com/image/fetch/$s_!YVAR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9372cd1-0ce8-4f29-8722-93565a0f56bd_1624x467.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><h1>When to use percentiles?</h1><p>Percentile is a popular tool in the field of reliability engineering and performance optimization. It is a powerful tool to spot the outlier data points without diluting the story that a dataset is capable of telling.</p><div class=\\\"subscription-widget-wrap-editor\\\" data-attrs=\\\"{"url":"https://blog.alexewerlof.com/subscribe?","text":"Subscribe","language":"en"}\\\" data-component-name=\\\"SubscribeWidgetToDOM\\\"><div class=\\\"subscription-widget show-subscribe\\\"><div class=\\\"preamble\\\"><p class=\\\"cta-caption\\\">I write about technical leadership, reliability engineering, and growth breaking complex topics into simple visual concepts that are easy to understand and act upon</p></div><form class=\\\"subscription-widget-subscribe\\\"><input type=\\\"email\\\" class=\\\"email-input\\\" name=\\\"email\\\" placeholder=\\\"Type your email\u2026\\\" tabindex=\\\"-1\\\"><input type=\\\"submit\\\" class=\\\"button primary\\\" value=\\\"Subscribe\\\"><div class=\\\"fake-input-wrapper\\\"><div class=\\\"fake-input\\\"></div><div class=\\\"fake-button\\\"></div></div></form></div></div><p>Percentile is especially useful for datasets that are not evenly distributed \u2014most data!</p><blockquote><p>Evenly distributed what? \u2014you may ask!</p></blockquote><p>First let\u2019s look at some evenly distributed data where each value is as likely to show up:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!QRvq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!QRvq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 424w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 848w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 1272w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!QRvq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png\\\" width=\\\"1456\\\" height=\\\"453\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":453,"width":1456,"resizeWidth":null,"bytes":823343,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!QRvq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 424w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 848w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 1272w, https://substackcdn.com/image/fetch/$s_!QRvq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fb0f24a-e9a9-4973-ab9e-ad7360ec995a_3098x964.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>This is how random number generators work. In fact, this data was created using <code>Math.random()</code> in JavaScript as we\u2019ll see later.</p><p>If we sort that data it we get this:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!kOTU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!kOTU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 424w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 848w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 1272w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!kOTU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png\\\" width=\\\"1456\\\" height=\\\"454\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":454,"width":1456,"resizeWidth":null,"bytes":67161,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!kOTU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 424w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 848w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 1272w, https://substackcdn.com/image/fetch/$s_!kOTU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d58e963-65c2-427b-a27f-8eeed040200b_1539x480.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>As you can see, there are no anomalies. If we do the math, we can see that:</p><ul><li><p>Mean (also known as <em>average</em>) is <code>10279</code></p></li><li><p>Median (also known as <code>P50 </code>percentile) is <code>10453</code></p></li></ul><p>Not an enormous difference considering that the range of values is anywhere from 0 to 20000. And that\u2019s expected from such an evenly distributed dataset.</p><p>But the story is different when there are outliers.</p><p>For example, if a small fraction of numbers are unusually high, we get something like this:</p><p></p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!xm9o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!xm9o!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 424w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 848w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 1272w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!xm9o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png\\\" width=\\\"1456\\\" height=\\\"458\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":458,"width":1456,"resizeWidth":null,"bytes":444275,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!xm9o!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 424w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 848w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 1272w, https://substackcdn.com/image/fetch/$s_!xm9o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410b8518-a35e-438f-9ba9-a6d116b179db_3084x970.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>Sorted, we get this:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!Asd3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!Asd3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 424w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 848w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 1272w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!Asd3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png\\\" width=\\\"1456\\\" height=\\\"447\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":447,"width":1456,"resizeWidth":null,"bytes":54904,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!Asd3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 424w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 848w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 1272w, https://substackcdn.com/image/fetch/$s_!Asd3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e125d6c-1158-4ffb-b876-ddbf90647036_1550x476.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><ul><li><p>Mean (average): <code>2360</code></p></li><li><p>Median (<code>P50</code>): <code>2106</code></p></li><li><p><code>P95: 3969</code></p></li><li><p><code>P99: 18031</code>. This means <code>99%</code> of values are below <code>18031</code></p></li></ul><p>This type of data distribution is also known as <em><a href=\\\"https://en.wikipedia.org/wiki/Long_tail\\\">long tail</a></em>.</p><p>Another example where most values are high, but a few are very low:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!gB-e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!gB-e!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 424w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 848w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 1272w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!gB-e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png\\\" width=\\\"1456\\\" height=\\\"468\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/e32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":468,"width":1456,"resizeWidth":null,"bytes":277309,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!gB-e!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 424w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 848w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 1272w, https://substackcdn.com/image/fetch/$s_!gB-e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe32ed13e-508e-4a65-84af-1b66c0097714_1576x507.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>Look for those extremely low values. They are easier to see when the data is sorted:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!wcoq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!wcoq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 424w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 848w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 1272w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!wcoq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png\\\" width=\\\"1456\\\" height=\\\"460\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/c2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":460,"width":1456,"resizeWidth":null,"bytes":56974,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!wcoq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 424w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 848w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 1272w, https://substackcdn.com/image/fetch/$s_!wcoq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2977b92-59a1-4f38-81e8-1136a16fe354_1532x484.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>Analysing:</p><ul><li><p>Mean (average): <code>17556</code></p></li><li><p>Median (<code>P50</code>): <code>18695</code></p></li><li><p><code>P1: 2359</code>. This means only <code>1%</code> of values are below <code>2359</code>.</p></li><li><p><code>P99: 19969</code></p></li></ul><p>And of course, there can be datasets where most data fluctuate around a usual range, but occasionally there are outliers that are either too high or too low:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!Y0Xr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 424w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 848w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 1272w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png\\\" width=\\\"1456\\\" height=\\\"445\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/a8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":445,"width":1456,"resizeWidth":null,"bytes":668389,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 424w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 848w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 1272w, https://substackcdn.com/image/fetch/$s_!Y0Xr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d82-10e6-4ff8-8836-523a47c13ad9_3090x945.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>Sorted:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!CGuf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!CGuf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 424w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 848w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 1272w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!CGuf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png\\\" width=\\\"1456\\\" height=\\\"447\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":447,"width":1456,"resizeWidth":null,"bytes":63455,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!CGuf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 424w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 848w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 1272w, https://substackcdn.com/image/fetch/$s_!CGuf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b67c1b8-da33-441f-bf4e-90ecb6e0c7bd_1547x475.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>Analyzing:</p><ul><li><p>Mean (average): <code>10048</code></p></li><li><p>Median (P50): <code>10076</code></p></li><li><p><code>P1: 1546</code></p></li><li><p><code>P99: 17949</code></p></li><li><p><code>P99.5: 18858</code></p></li><li><p><code>P99.9: 19378</code></p></li></ul><h1>Selection vs aggregation</h1><p>Percentile can select a subset of actual data to analyze and drive meaningful action. </p><p>For example, let\u2019s say you are a policy maker who wants to reduce child obesity in Belgium. <a href=\\\"https://www.statista.com/statistics/1090687/body-mass-index-obese-belgian-children/\\\">According to statista</a> 5.2% of Belgian children are obese. That\u2019s a tiny number and if we were going to use average weight, we would think that the average Belgian child is slightly obese. Considering that a percentage of the children may be underweight, the average may actually mislead us to believe that the average Belgian child has a perfectly healthy BMI (body mass index).</p><p>However, if we sort all Belgian kids in a very very long row based on their BMI, we can quickly identify the obese ones.</p><p>This allows you to focus on one end of the row where obese children are standing and trying to understand what contributes to their obesity and what policies can reduce their risk factors.</p><h1>Crazy bounce</h1><p>One final tip: when starting to optimize the system behavior, start from the common percentiles (e.g. P50) and gradually shrink your focus towards the outliers (e.g. P1 or P99 depending on the shape of the sorted diagram).</p><p>There is, however, no universal rule. Always start by looking at the sorted data to understand where you want to start.</p><p>For example, this rather uncommon dataset fluctuates between very high and very low values:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!d1FH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!d1FH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 424w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 848w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 1272w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!d1FH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png\\\" width=\\\"1456\\\" height=\\\"444\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/be985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":444,"width":1456,"resizeWidth":null,"bytes":656598,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!d1FH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 424w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 848w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 1272w, https://substackcdn.com/image/fetch/$s_!d1FH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe985234-ac06-4347-8fe8-13ab2f7230a2_3137x957.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>Sorted:</p><div class=\\\"captioned-image-container\\\"><figure><a class=\\\"image-link image2 is-viewable-img\\\" target=\\\"_blank\\\" href=\\\"https://substackcdn.com/image/fetch/$s_!-Yzm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png\\\" data-component-name=\\\"Image2ToDOM\\\"><div class=\\\"image2-inset\\\"><picture><source type=\\\"image/webp\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!-Yzm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 424w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 848w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 1272w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 1456w\\\" sizes=\\\"100vw\\\"><img src=\\\"https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png\\\" width=\\\"1456\\\" height=\\\"469\\\" data-attrs=\\\"{"src":"https://substack-post-media.s3.amazonaws.com/public/images/8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png","srcNoWatermark":null,"fullscreen":null,"imageSize":null,"height":469,"width":1456,"resizeWidth":null,"bytes":56757,"alt":null,"title":null,"type":"image/png","href":null,"belowTheFold":true,"topImage":false,"internalRedirect":null,"isProcessing":false,"align":null,"offset":false}\\\" class=\\\"sizing-normal\\\" alt=\\\"\\\" srcset=\\\"https://substackcdn.com/image/fetch/$s_!-Yzm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 424w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 848w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 1272w, https://substackcdn.com/image/fetch/$s_!-Yzm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a06203f-3e2d-4ea9-9fa5-40f5786406ec_1542x497.png 1456w\\\" sizes=\\\"100vw\\\" loading=\\\"lazy\\\"></picture><div class=\\\"image-link-expand\\\"><div class=\\\"pencraft pc-display-flex pc-gap-8 pc-reset\\\"><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container restack-image\\\"><svg aria-hidden=\\\"true\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 20 20\\\" fill=\\\"none\\\" stroke-width=\\\"1.5\\\" stroke=\\\"var(--color-fg-primary)\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><g><path d=\\\"M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882\\\"></path></g></svg></button><button tabindex=\\\"0\\\" type=\\\"button\\\" class=\\\"pencraft pc-reset pencraft icon-container view-image\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"20\\\" height=\\\"20\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" class=\\\"lucide lucide-maximize2 lucide-maximize-2\\\"><polyline points=\\\"15 3 21 3 21 9\\\"></polyline><polyline points=\\\"9 21 3 21 3 15\\\"></polyline><line x1=\\\"21\\\" x2=\\\"14\\\" y1=\\\"3\\\" y2=\\\"10\\\"></line><line x1=\\\"3\\\" x2=\\\"10\\\" y1=\\\"21\\\" y2=\\\"14\\\"></line></svg></button></div></div></div></a></figure></div><p>As you can see, the majority of data points are either too low or too high. This might be the average latency of an API where the data from <code>GET </code>and <code>POST </code>requests are combined in one view.</p><p>Here, you may want to use labels to narrow down the dataset to something that P1 or P99 can meaningfully tell a story and direct our optimization.</p><p>For example, we may realize that if we only look at the data for <code>GET </code>requests to the API, we see a long tail diagram like the ones we saw before. And that may actually look quite good. Maybe, it is the <code>PUT </code>requests that are taking too long.</p><p>Different subsets of data may tell different stories which may drive different actions.</p><h1>Recap</h1><p>Percentiles allow:</p><ul><li><p>Selecting the outliers and focusing on understanding them (instead of aggregating them as <em>average</em> does)</p></li><li><p>Focusing the optimization efforts</p></li><li><p>Impactful decisions that are guided by actual data points</p></li></ul><p>Start the optimization effort with a percentile that represents the typical data points. As your optimization yields results, narrow down your efforts to more niche outliers.</p><p>There is no universal rule that applies to all datasets. The best way to know which percentile to use is to look at the sorted data.</p><p>You may have to filter the data to get to a shape that is actionable.</p><p>Try to identify the actions with the best ROI (return on investment). Just because there is a long tail, doesn\u2019t mean that you have to trim it! \uD83D\uDC0D</p><div><hr></div><p><em><a href=\\\"https://blog.alexewerlof.com/p/faq#%C2%A7payment\\\">My monetization strategy</a> is to give away most content for free. However, these posts take anywhere from a few hours to days to draft, edit, research, illustrate, and publish. I pull these hours from my private time, vacation days and weekends. Recently I went down in working hours and salary by 10% to be able to spend more time sharing my experience with the public. You can support this cause by sparing a few bucks for a paid subscription. As a token of appreciation, you get access to the Pro-Tips section as well as my online book <a href=\\\"https://blog.alexewerlof.com/p/book-intro-reliability-engineering\\\">Reliability Engineering Mindset</a>. Right now, you can get 20% off via <a href=\\\"https://blog.alexewerlof.com/protipsdiscount\\\">this link</a>. You can also <a href=\\\"https://blog.alexewerlof.com/leaderboard\\\">invite your friends</a> to gain free access.</em></p><div class=\\\"captioned-button-wrap\\\" data-attrs=\\\"{"url":"https://blog.alexewerlof.com/p/percentile?utm_source=substack&utm_medium=email&utm_content=share&action=share","text":"Share"}\\\" data-component-name=\\\"CaptionedButtonToDOM\\\"><div class=\\\"preamble\\\"><p class=\\\"cta-caption\\\">If you find this post insightful, please like and share it in your circles to inspire others.</p></div><p class=\\\"button-wrapper\\\" data-attrs=\\\"{"url":"https://blog.alexewerlof.com/p/percentile?utm_source=substack&utm_medium=email&utm_content=share&action=share","text":"Share"}\\\" data-component-name=\\\"ButtonCreateButton\\\"><a class=\\\"button primary\\\" href=\\\"https://blog.alexewerlof.com/p/percentile?utm_source=substack&utm_medium=email&utm_content=share&action=share\\\"><span>Share</span></a></p></div><p><br></p>\",\"has_dynamic_content\":false,\"truncated_body_text\":\"In simple terms, we can think of a metric as an array of values with a timestamp and some optional tags.\",\"wordcount\":1972,\"post_preview_limit\":null,\"language\":\"en\",\"postTags\":[{\"id\":\"07afc417-ae23-4cf2-bf61-d6610f78635c\",\"publication_id\":1002265,\"name\":\"data\",\"slug\":\"data\",\"hidden\":false},{\"id\":\"13eaf041-a26c-4a44-9b77-34ed99de06e2\",\"publication_id\":1002265,\"name\":\"data driven decision making\",\"slug\":\"data-driven-decision-making\",\"hidden\":false},{\"id\":\"cf340fd3-2968-4314-9bb0-028636f7035a\",\"publication_id\":1002265,\"name\":\"optimization\",\"slug\":\"optimization\",\"hidden\":false},{\"id\":\"d04350e2-8992-4f3e-884a-0a73f547704f\",\"publication_id\":1002265,\"name\":\"statistics\",\"slug\":\"statistics\",\"hidden\":false},{\"id\":\"e52ec82c-ab7b-45ab-8f2d-6102570d3bf0\",\"publication_id\":1002265,\"name\":\"metrics\",\"slug\":\"metrics\",\"hidden\":false}],\"postCountryBlocks\":[],\"headlineTest\":null,\"coverImagePalette\":{\"Vibrant\":{\"rgb\":[67,161,239],\"population\":39},\"DarkVibrant\":{\"rgb\":[5,66,134],\"population\":12},\"LightVibrant\":{\"rgb\":[252,188,84],\"population\":12},\"Muted\":{\"rgb\":[76,116,156],\"population\":1},\"DarkMuted\":{\"rgb\":[84,50,60],\"population\":4},\"LightMuted\":{\"rgb\":[150.36206896551727,94.08620689655173,2.637931034482736],\"population\":0}},\"publishedBylines\":[{\"id\":87732486,\"name\":\"Alex Ewerl\u00F6f\",\"handle\":\"alexewerlof\",\"photo_url\":\"https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg\",\"bio\":\"Writes about technical leadership, growth mindset, and system reliability engineering. Senior Staff Engineer, MSc Systems Engineering from KTH, Stockholmer, dad, amateur artist. Read more here: https://www.alexewerlof.com/who\",\"profile_set_up_at\":\"2022-07-14T22:27:32.130Z\",\"reader_installed_at\":\"2022-10-11T17:24:45.190Z\",\"publicationUsers\":[{\"id\":947579,\"user_id\":87732486,\"publication_id\":1002265,\"role\":\"admin\",\"public\":true,\"is_primary\":true,\"publication\":{\"id\":1002265,\"name\":\"Alex Ewerl\u00F6f Notes\",\"subdomain\":\"alexewerlof\",\"custom_domain\":\"blog.alexewerlof.com\",\"custom_domain_optional\":false,\"hero_text\":\"Technical Leadership, Reliability Engineering, Growth\",\"logo_url\":\"https://substack-post-media.s3.amazonaws.com/public/images/8c58cb07-9341-402b-bcdb-9fa767c2cdac_500x500.png\",\"author_id\":87732486,\"primary_user_id\":87732486,\"theme_var_background_pop\":\"#786CFF\",\"created_at\":\"2022-07-14T22:27:58.683Z\",\"email_from_name\":\"Alex Ewerl\u00F6f Notes\",\"copyright\":\"Alex Ewerl\u00F6f\",\"founding_plan_name\":\"VIP supporter\",\"community_enabled\":true,\"invite_only\":false,\"payments_state\":\"enabled\",\"language\":null,\"explicit\":false,\"homepage_type\":\"newspaper\",\"is_personal_mode\":false,\"logo_url_wide\":\"https://substack-post-media.s3.amazonaws.com/public/images/bd56dc7c-4b9f-43f2-99a1-ecc995284940_1200x256.png\"}},{\"id\":8561877,\"user_id\":87732486,\"publication_id\":8361889,\"role\":\"admin\",\"public\":true,\"is_primary\":false,\"publication\":{\"id\":8361889,\"name\":\"AI Reliability Engineering\",\"subdomain\":\"aireliabilityengineering\",\"custom_domain\":null,\"custom_domain_optional\":false,\"hero_text\":\"From the Author of Reliability Engineering Mindset but focused on AI systems and components.\",\"logo_url\":\"https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2713990-da82-481b-b579-01a7aaa5b85b_560x560.jpeg\",\"author_id\":87732486,\"primary_user_id\":null,\"theme_var_background_pop\":\"#FF6719\",\"created_at\":\"2026-03-18T10:58:12.396Z\",\"email_from_name\":null,\"copyright\":\"Alex Ewerl\u00F6f\",\"founding_plan_name\":null,\"community_enabled\":true,\"invite_only\":false,\"payments_state\":\"disabled\",\"language\":null,\"explicit\":false,\"homepage_type\":\"newspaper\",\"is_personal_mode\":false,\"logo_url_wide\":null}}],\"twitter_screen_name\":\"alexewerlof\",\"is_guest\":false,\"bestseller_tier\":null,\"status\":{\"bestsellerTier\":null,\"subscriberTier\":null,\"leaderboard\":null,\"vip\":false,\"badge\":null,\"subscriber\":null}}],\"reaction\":null,\"reaction_count\":31,\"comment_count\":2,\"child_comment_count\":1,\"audio_items\":[{\"post_id\":145056343,\"voice_id\":\"en-US-OnyxTurboMultilingualNeural\",\"audio_url\":\"https://substack-video.s3.amazonaws.com/video_upload/post/145056343/tts/29cb03cf-0db3-45a0-8cc5-b4c024c63251/en-US-OnyxTurboMultilingualNeural.mp3\",\"type\":\"tts\",\"status\":\"completed\"}],\"is_geoblocked\":false,\"hasCashtag\":false,\"section\":{\"id\":67723,\"created_at\":\"2023-05-31T19:57:24.859Z\",\"updated_at\":\"2024-03-22T13:16:12.203Z\",\"publication_id\":1002265,\"name\":\"Reliability Engineering\",\"description\":\"Concepts that help you with building reliable systems and architecture\",\"slug\":\"sre\",\"is_podcast\":false,\"is_live\":true,\"is_default_on\":true,\"sibling_rank\":1,\"port_status\":\"success\",\"logo_url\":null,\"hide_from_navbar\":false,\"email_from_name\":\"\",\"hide_posts_from_pub_listings\":false,\"email_banner_url\":null,\"cover_photo_url\":null,\"hide_intro_title\":false,\"hide_intro_subtitle\":false,\"ignore_publication_email_settings\":false,\"custom_config\":{},\"unifiedPodcastSettings\":null,\"showLinks\":[],\"podcastSettings\":null,\"pageTheme\":{\"id\":51609,\"publication_id\":1002265,\"section_id\":67723,\"page\":null,\"page_hero\":\"default\",\"page_posts\":\"grid\",\"show_podcast_links\":true,\"hero_alignment\":\"center\"},\"podcastPalette\":{\"DarkMuted\":{\"population\":72,\"rgb\":[73,153,137]},\"DarkVibrant\":{\"population\":6013,\"rgb\":[4,100,84]},\"LightMuted\":{\"population\":7,\"rgb\":[142,198,186]},\"LightVibrant\":{\"population\":3,\"rgb\":[166,214,206]},\"Muted\":{\"population\":6,\"rgb\":[92,164,156]},\"Vibrant\":{\"population\":5,\"rgb\":[76,164,146]}},\"spotify_podcast_settings\":null,\"unified_podcast_settings\":null}},\"comments\":[{\"id\":63912256,\"body\":\"Really liked the article! I have featured in the latest Observability 360 newsletter!\",\"body_json\":{\"type\":\"doc\",\"attrs\":{\"schemaVersion\":\"v1\"},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Really liked the article! I have featured in the latest Observability 360 newsletter!\"}]}]},\"publication_id\":1002265,\"post_id\":145056343,\"user_id\":254602565,\"ancestor_path\":\"\",\"type\":\"comment\",\"deleted\":false,\"date\":\"2024-07-31T14:36:09.635Z\",\"edited_at\":null,\"status\":\"published\",\"pinned_by_user_id\":null,\"restacks\":0,\"name\":\"John Hayes\",\"photo_url\":\"https://substack-post-media.s3.amazonaws.com/public/images/0c08e642-f4f0-438b-864f-66891459382c_144x144.png\",\"handle\":\"johnhayes993853\",\"reactor_names\":[\"Alex Ewerl\u00F6f\"],\"reaction\":null,\"reactions\":{\"\u2764\":1},\"reaction_count\":1,\"children\":[],\"bans\":[],\"suppressed\":false,\"user_banned\":false,\"user_banned_for_comment\":false,\"user_slug\":\"johnhayes993853\",\"metadata\":{\"is_author\":false,\"membership_state\":\"free_signup\",\"eligibleForGift\":true},\"user_bestseller_tier\":null,\"can_dm\":true,\"userStatus\":{\"bestsellerTier\":null,\"subscriberTier\":null,\"leaderboard\":null,\"vip\":false,\"badge\":null,\"subscriber\":null},\"score\":6,\"children_count\":1,\"reported_by_user\":false,\"restacked\":false,\"childrenSummary\":\"1 reply by Alex Ewerl\u00F6f\"}],\"canonicalUrl\":\"https://blog.alexewerlof.com/p/percentile\",\"inlineComments\":false,\"readerIsSearchCrawler\":false,\"ogUrl\":\"https://blog.alexewerlof.com/p/percentile\",\"bannedFromNotes\":false,\"themeVariables\":{\"color_theme_bg_pop\":\"#FFBC52\",\"background_pop\":\"#FFBC52\",\"color_theme_bg_web\":\"#001426\",\"cover_bg_color\":\"#001426\",\"cover_bg_color_secondary\":\"#0f2233\",\"background_pop_darken\":\"#ffb238\",\"print_on_pop\":\"#ffffff\",\"color_theme_bg_pop_darken\":\"#ffb238\",\"color_theme_print_on_pop\":\"#ffffff\",\"color_theme_bg_pop_20\":\"rgba(255, 188, 82, 0.2)\",\"color_theme_bg_pop_30\":\"rgba(255, 188, 82, 0.3)\",\"print_pop\":\"#ffbc52\",\"color_theme_accent\":\"#ffbc52\",\"cover_print_primary\":\"#ffffff\",\"cover_print_secondary\":\"#d9d9d9\",\"cover_print_tertiary\":\"#d9d9d9\",\"cover_border_color\":\"#ffffff\",\"font_family_headings_preset\":\"'SF Pro Display', -apple-system, system-ui, BlinkMacSystemFont, 'Inter', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'\",\"font_weight_headings_preset\":900,\"font_family_body_preset\":\"Merriweather,sans-serif\",\"font_weight_body_preset\":400,\"font_preset_heading\":\"sans\",\"font_preset_body\":\"fancy_serif\",\"home_hero\":\"feature-media\",\"home_posts\":\"custom\",\"home_show_top_posts\":true,\"web_bg_color\":\"#001426\",\"background_contrast_1\":\"#0f2233\",\"background_contrast_2\":\"#223443\",\"background_contrast_3\":\"#485663\",\"background_contrast_4\":\"#6d7882\",\"background_contrast_5\":\"#aeb5ba\",\"color_theme_bg_contrast_1\":\"#0f2233\",\"color_theme_bg_contrast_2\":\"#223443\",\"color_theme_bg_contrast_3\":\"#485663\",\"color_theme_bg_contrast_4\":\"#6d7882\",\"color_theme_bg_contrast_5\":\"#aeb5ba\",\"color_theme_bg_elevated\":\"#0f2233\",\"color_theme_bg_elevated_secondary\":\"#223443\",\"color_theme_bg_elevated_tertiary\":\"#485663\",\"color_theme_detail\":\"#192b3c\",\"background_contrast_pop\":\"rgba(255, 188, 82, 0.4)\",\"color_theme_bg_contrast_pop\":\"rgba(255, 188, 82, 0.4)\",\"theme_bg_is_dark\":\"1\",\"print_on_web_bg_color\":\"hsl(208.4210526315789, 25.00000000000006%, 90.74509803921569%)\",\"print_secondary_on_web_bg_color\":\"#99a1a8\",\"footer_bg_color\":\"#000C17\",\"footer_bg_color_h\":\"208.69565217391306\",\"footer_bg_color_s\":\"100%\",\"footer_bg_color_l\":\"4.509803921568627%\",\"print_on_footer_bg_color\":\"hsl(208.69565217391306, 25.000000000000057%, 90.45098039215686%)\",\"print_secondary_on_footer_bg_color\":\"#999ea2\",\"footer_bg_contrast_1\":\"#0f1b25\",\"footer_bg_contrast_2\":\"#222d36\",\"footer_bg_contrast_3\":\"#485158\",\"footer_bg_contrast_4\":\"#6d737a\",\"footer_bg_elevated\":\"#0f1b25\",\"footer_bg_elevated_secondary\":\"#222d36\",\"footer_bg_elevated_tertiary\":\"#485158\",\"footer_detail_color\":\"#19242e\",\"background_pop_rgb\":\"255, 188, 82\",\"color_theme_bg_pop_rgb\":\"255, 188, 82\",\"color_theme_accent_rgb\":\"255, 188, 82\"},\"recentEpisodes\":null,\"trackFrontendVisit\":true,\"activeLiveStream\":null,\"freeTrialCoupon\":{\"id\":\"3cce95ff\",\"trial_period_days\":7},\"defaultCoupon\":null,\"isChatActive\":false,\"publicationPageAlert\":null,\"features\":{},\"browser\":{\"name\":\"Chrome\",\"version\":\"125.0\",\"major\":\"125\"},\"showCookieBanner\":false,\"disabledCookies\":[],\"dd_env\":\"prod\",\"dd_ti\":true}")</script>
|
||
<script nonce="xy9aAgQANmHbh_qzyYJzag">window._analyticsConfig = JSON.parse("{\"properties\":{\"subdomain\":\"alexewerlof\",\"publication_id\":1002265,\"has_plans\":true,\"pub_community_enabled\":true,\"is_personal_publication\":false,\"section_name\":\"Reliability Engineering\",\"section_slug\":\"sre\",\"section_id\":67723,\"section_is_podcast\":false,\"is_subscribed\":false,\"is_free_subscribed\":false,\"is_author\":false,\"is_contributor\":false,\"is_admin\":false,\"is_founding\":false},\"adwordsAccountId\":\"AW-316245675\",\"adwordsEventSendTo\":\"Tf76CKqcyL4DEKuN5pYB\"}")</script>
|
||
|
||
|
||
|
||
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/lib-router.7371871e.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/55188.571db0c6.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/62357.a0731d37.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/53754.d196682b.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/33485.2686bb5d.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/2237.ae8857e4.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/37707.4614ce58.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/9351.41564edd.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/80821.b2140fcd.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/44292.f3dc2b43.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/70291.7aa24e85.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/17499.1820773d.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/57975.765aca5a.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/19714.2f1bdde5.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/48320.4e726ad5.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/93000.f03f24de.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/44014.f579d62b.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/43745.80c75c78.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/60892.92b9fc9c.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/40646.258e49f2.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/87906.d493457b.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/36479.ce61e623.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/17706.015b0f71.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/93977.f1207089.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/37606.b91ab2ef.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/94311.b93f6845.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/89356.66161d1e.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/21262.211a7337.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/47925.24a01d36.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/80220.03bd4c41.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/71505.3dc43e33.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/11100.5d148f2c.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/3663.86d95e8c.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/18725.a5a682c3.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/86118.ff1ec843.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/93519.7fe128ac.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/84828.c78aabc1.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/5075.d6e9f8ec.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/29231.a7af5911.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/56725.2b32bbb6.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/42336.f1c17ded.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/89879.1d0af2b9.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/70793.951c11cb.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/39522.58e078b0.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/53164.dfde36c8.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/74584.94c6b3f1.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/71199.a327e9f4.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/63266.8bb0d59c.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/47358.8f5c5991.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/4492.cb326b80.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/88089.680833b5.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/97348.df6a856d.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/52109.cf3bcc2c.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/56256.8a1bc5dd.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/77410.3f20fb36.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/25058.bdbc4e21.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/58483.3adddb8a.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/94881.0a97506f.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/27386.09a9082f.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/10174.7f0face7.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/92610.a4fc1daf.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/91214.cb10b4b8.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/11244.b723f409.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/99260.28b0ed6a.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/48445.7d5c5ba3.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/76768.9a2f2bae.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/41932.6c688f22.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/12114.979fb38e.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/48409.9732c6f9.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/26252.4f5ae3be.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/53871.2923c5c9.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/18494.588a06d1.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/99068.bd2e1fba.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/91850.79d3f415.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/49047.c7f428fb.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/16075.098bcbcf.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/28856.2eb51db5.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/95396.72d1d844.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/63175.bbf1c283.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/74628.2e8ed950.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/32552.889dd584.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/27313.c287f2d8.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/mainReactRouter.6c265246.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/91507.9b9761ae.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/54770.b40bf629.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/30054.07cd629b.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/78118.35b48b09.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/57051.f37fb930.js" charset="utf-8"></script>
|
||
|
||
<script defer type="module" src="https://substackcdn.com/bundle/static/js/78191.24075434.js" charset="utf-8"></script>
|
||
|
||
|
||
<script nonce="xy9aAgQANmHbh_qzyYJzag" nomodule>
|
||
(function() {
|
||
var message = 'Your browser does not support modern JavaScript modules. Please upgrade your browser for the best experience.';
|
||
var warningDiv = document.createElement('div');
|
||
warningDiv.style.color = 'red';
|
||
warningDiv.style.padding = '10px';
|
||
warningDiv.style.margin = '10px 0';
|
||
warningDiv.style.border = '1px solid red';
|
||
warningDiv.style.backgroundColor = 'lightyellow';
|
||
warningDiv.innerText = message;
|
||
document.body.prepend(warningDiv);
|
||
})();
|
||
</script>
|
||
|
||
|
||
<!-- Datadog Analytics -->
|
||
<script nonce="xy9aAgQANmHbh_qzyYJzag">
|
||
(function(h,o,u,n,d) {
|
||
h=h[d]=h[d]||{q:[],onReady:function(c){h.q.push(c)}}
|
||
d=o.createElement(u);d.async=1;d.src=n
|
||
n=o.getElementsByTagName(u)[0];n.parentNode.insertBefore(d,n)
|
||
})(window,document,'script','https://www.datadoghq-browser-agent.com/us1/v5/datadog-rum.js','DD_RUM')
|
||
window.DD_RUM.onReady(function() {
|
||
window.DD_RUM.init({
|
||
clientToken: 'puba71073f072643721169b68f352438710',
|
||
applicationId: '2e321b35-c76b-4073-8d04-cc9a10461793',
|
||
site: 'datadoghq.com',
|
||
service: 'web',
|
||
env: window._preloads.dd_env,
|
||
version: '8b4c00716b2bc0f7ca1fded553014f7e37b5b07a',
|
||
sessionSampleRate: 1,
|
||
sessionReplaySampleRate: 10,
|
||
trackUserInteractions: window._preloads.dd_ti,
|
||
trackResources: true,
|
||
trackLongTasks: true,
|
||
defaultPrivacyLevel: 'mask-user-input',
|
||
allowedTracingUrls: [/https?:\/\/(.+\/.)?substack(cdn)?\.com/]
|
||
});
|
||
})
|
||
</script>
|
||
<!-- End Datadog Analytics -->
|
||
|
||
<!-- Cloudflare Web Analytics -->
|
||
<script defer src="https://static.cloudflareinsights.com/beacon.min.js" data-cf-beacon='{"token": "216309cffb464db4b0e02daf0b8e8060"}'></script>
|
||
<!-- End Cloudflare Web Analytics -->
|
||
|
||
|
||
<!-- Fallback tracking pixels -->
|
||
|
||
|
||
|
||
|
||
<noscript>
|
||
<style>
|
||
#nojs-banner {
|
||
position: fixed;
|
||
bottom: 0;
|
||
left: 0;
|
||
padding: 16px 16px 16px 32px;
|
||
width: 100%;
|
||
box-sizing: border-box;
|
||
background: red;
|
||
color: white;
|
||
font-family: -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||
font-size: 13px;
|
||
line-height: 13px;
|
||
}
|
||
#nojs-banner a {
|
||
color: inherit;
|
||
text-decoration: underline;
|
||
}
|
||
</style>
|
||
|
||
<div id="nojs-banner">
|
||
This site requires JavaScript to run correctly. Please <a href="https://enable-javascript.com/" target="_blank">turn on JavaScript</a> or unblock scripts
|
||
</div>
|
||
</noscript>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" nonce="xy9aAgQANmHbh_qzyYJzag" data-cf-beacon='{"version":"2024.11.0","token":"68cfe66b5c4749e2ba64d4d9640c04c0","spa":2}' crossorigin="anonymous"></script>
|
||
</body>
|
||
</html>
|