ToolAssay

Liquidity pool fee APR and APY from fee tier, daily volume and TVL, your fees pe

Liquidity pool fee APR and APY from fee tier, daily volume and TVL, your fees per day and period, and the price moves at which impermanent loss cancels them.

Answeringour last check, 2026-10-20
1 of 1checks answered this week
499 msmedian answer time
$0.01listed price per call
$0.01price it asked us

Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.

Endpoint

GET https://saylorinnovations.com/api/defi/lp-yield

CategoryMarket data
Provider hostsaylorinnovations.com
Networkseip155:137, eip155:42161, eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
Payment schemesexact
Self-reported calls, 30 days0 from 0 payers (the provider's figure, not ours)

Our checks, last 30 days

DayResultHTTPAskedTime
2026-10-20 valid payment request 402$0.01 499 ms

Example input (from the provider)

{
  "method": "GET",
  "queryParams": {
    "daily_volume_usd": "5000000",
    "days": "30",
    "fee_tier_percent": "0.3",
    "position_usd": "10000",
    "tvl_usd": "40000000"
  },
  "type": "http"
}

Promised output schema (from the provider)

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "method": {
          "enum": [
            "GET"
          ],
          "type": "string"
        },
        "queryParams": {
          "properties": {
            "daily_volume_usd": {
              "description": "pool 24h volume",
              "type": "string"
            },
            "days": {
              "description": "optional holding period, default 30",
              "type": "string"
            },
            "fee_tier_percent": {
              "description": "pool fee tier in percent, e.g. 0.3",
              "type": "string"
            },
            "position_usd": {
              "description": "optional your position size, default 1000",
              "type": "string"
            },
            "tvl_usd": {
              "description": "pool total value locked",
              "type": "string"
            }
          },
          "required": [
            "fee_tier_percent",
            "daily_volume_usd",
            "tvl_usd"
          ],
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "concentration_multiplier": {
              "description": "Liquidity concentration boost applied to the yield",
              "type": [
                "number",
                "null"
              ]
            },
            "daily_fee_yield_percent": {
              "description": "Fees earned per day as a percent of liquidity",
              "type": "number"
            },
            "daily_volume_usd": {
              "description": "Daily trading volume used",
              "type": "number"
            },
            "days": {
              "description": "Holding period used",
              "type": "number"
            },
            "fee_apr_percent": {
              "description": "Daily fee yield times 365, in percent",
              "type": "number"
            },
            "fee_apy_percent": {
              "description": "Fee yield with daily compounding, in percent",
              "type": "number"
            },
            "fee_tier_percent": {
              "description": "Pool fee tier, in percent",
              "type": "number"
            },
            "fees_over_period_percent": {
              "description": "Fees over the period as a percent of the position",
              "type": "number"
            },
            "fees_over_period_usd": {
              "description": "Fees over the holding period",
              "type": "number"
            },
            "fees_per_day_usd": {
              "description": "Fees your position earns per day",
              "type": "number"
            },
            "impermanent_loss_breakeven_down_move_percent": {
              "description": "Price fall at which impermanent loss equals the fees earned",
              "type": [
                "number",
                "null"
              ]
            },
            "impermanent_loss_breakeven_up_move_percent": {
              "description": "Price rise at which impermanent loss equals the fees earned",
              "type": [
                "number",
                "null"
              ]
            },
            "note": {
              "description": "Plain-language caveat about how to read and use the result",
              "type": "string"
            },
            "position_usd": {
              "description": "Position size used for the dollar figures",
              "type": "number"
            },
            "source": {
              "description": "Where the data or formula comes from",
              "type": "string"
            },
            "tvl_usd": {
              "description": "Pool total value locked used",
              "type": "number"
            },
            "volume_to_tvl_ratio": {
              "description": "Daily volume divided by TVL",
              "type": "number"
            }
          },
          "required": [
            "fee_apr_percent",
            "fees_over_period_usd"
          ],
          "type": "object"
        },
        "type": {
          "const": "json",
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}

This page as JSON