curl --request GET \
--url https://api.hypedexer.com/market/slippage/{coin} \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.hypedexer.com/market/slippage/{coin}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.hypedexer.com/market/slippage/{coin}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hypedexer.com/market/slippage/{coin}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.hypedexer.com/market/slippage/{coin}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.hypedexer.com/market/slippage/{coin}")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hypedexer.com/market/slippage/{coin}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "1 1m buckets for HYPE",
"data": [
{
"time": "2026-09-23T18:30:00",
"mid_px": 92.8885,
"spread_bps": 0.10765595310405099,
"slip_10k_bps": 0.6506,
"slip_100k_bps": 1.5606,
"slip_1m_bps": 6.8382
}
],
"total_count": 1,
"execution_time_ms": 83.47,
"next_cursor": null,
"has_more": null
}Slippage history
Estimated cost of a market order versus mid, in bps (average of the buy and sell sides), for 10k, 100k and 1M USD, walked through the reconstructed book. Coverage: April 2024 to February 2026 from our market data archive (data_source: archive, top ~20 levels per side), and continuously since 23 September 2026 from the full order book replayed from our own Hyperliquid node (data_source: node, every resting order). No book data between 10 February and 23 September 2026. The value is null when the order is larger than the recorded book, which only happens on archive data for large sizes outside the biggest markets. On 1h / 1d buckets it averages the measurable minutes and slip_*_measurable_pct gives their share.
curl --request GET \
--url https://api.hypedexer.com/market/slippage/{coin} \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.hypedexer.com/market/slippage/{coin}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.hypedexer.com/market/slippage/{coin}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hypedexer.com/market/slippage/{coin}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.hypedexer.com/market/slippage/{coin}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.hypedexer.com/market/slippage/{coin}")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hypedexer.com/market/slippage/{coin}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "1 1m buckets for HYPE",
"data": [
{
"time": "2026-09-23T18:30:00",
"mid_px": 92.8885,
"spread_bps": 0.10765595310405099,
"slip_10k_bps": 0.6506,
"slip_100k_bps": 1.5606,
"slip_1m_bps": 6.8382
}
],
"total_count": 1,
"execution_time_ms": 83.47,
"next_cursor": null,
"has_more": null
}Authorizations
Your Hypedexer API key. Create one in the console at https://app.hypedexer.com. Authorization: Bearer <key> and the api_key query parameter are accepted as well.
Path Parameters
Coin symbol (e.g. BTC, @107 for a spot pair, xyz:TSLA for HIP-3)
Query Parameters
Start time (ISO UTC)
End time (ISO UTC); default = start + max window
Bucket: 1m (max 7 days), 1h (max 180 days), 1d (max 730 days)
1m, 1h, 1d Order size in USD: 10000, 100000 or 1000000 (default: all three)
Response
OK
The response is of type object.