Wallet PnL Analyzer — On-Chain Profit & Loss by Address avatar

Wallet PnL Analyzer — On-Chain Profit & Loss by Address

Pricing

Pay per usage

Go to Apify Store
Wallet PnL Analyzer — On-Chain Profit & Loss by Address

Wallet PnL Analyzer — On-Chain Profit & Loss by Address

On-demand wallet analysis: full ERC20 transfer history, per-token positions, current USD value via DexScreener, top 10 holdings. Supports Ethereum, Base, Arbitrum, Optimism, Polygon, BSC. PPE $0.05 per wallet analyzed. No subscription.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Hojun Lee

Hojun Lee

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Wallet PnL Analyzer

On-demand wallet analysis: full ERC20 history, per-token positions, current USD value, top holdings. Free Zerion / Debank alternative. Pay $0.05 per analysis, no subscription.


Why this exists

You want to analyze a wallet — your own, a competitor's, a whale's — and the options are:

  • Etherscan UI: free, but no PnL, no current portfolio value
  • Zerion: $15/mo, paywalls the API
  • Debank Pro: gated, scrapes blocked
  • Nansen: $150/mo, mostly aggregate data

This actor takes one wallet address, pulls every ERC20 transfer from Etherscan V2, builds a per-token ledger, prices open positions via DexScreener, and returns a clean PnL report — for $0.05.


Supported chains

ChainStatus
Ethereum
Base
Arbitrum
Optimism
Polygon
BSC

What you get

1. Summary row

{
"_type": "summary",
"wallet": "0xd8da...96045",
"chain": "ethereum",
"total_transfers": 1247,
"unique_tokens": 38,
"open_position_count": 12,
"current_portfolio_value_usd": 4250120.50,
"top_10_holdings": [
{"symbol": "USDC", "qty": 2000000, "value_usd": 2000000},
{"symbol": "WETH", "qty": 850, "value_usd": 2028500},
...
]
}

2. One row per token

{
"_type": "token_position",
"token_symbol": "WETH",
"token_name": "Wrapped Ether",
"token_address": "0xc02aaa39...",
"buy_count": 23,
"sell_count": 18,
"transfers_in": 23,
"transfers_out": 18,
"total_buy_qty": 1200.5,
"total_sell_qty": 350.0,
"net_qty": 850.5,
"current_price_usd": 2385.0,
"current_value_usd": 2028442.5,
"first_seen_ts": 1707000000,
"last_seen_ts": 1717999999
}

Quick start

Analyze Vitalik's main wallet on Ethereum

{
"walletAddress": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"chain": "ethereum"
}

Analyze a Base wallet, filter dust

{
"walletAddress": "0x...",
"chain": "base",
"minHoldingUsd": 100
}

Analyze multiple chains

Run the actor 6 times (one per chain) and merge results — each costs $0.05.


Pricing

Pay-Per-Event: $0.05 per wallet analyzed.

Flat fee per run regardless of transfer count. Vs:

  • Zerion API: $15/mo (subscription)
  • Debank Pro: $40/mo
  • Nansen: $150/mo

If you analyze fewer than 300 wallets/mo, this actor is cheaper than any subscription.


How it works

  1. Etherscan V2 tokentx — page through all ERC20 transfers (up to 10K) for the wallet
  2. Build buy/sell ledger per token from incoming vs outgoing transfers
  3. DexScreener price lookup for open positions (max-liquidity pair on the target chain)
  4. Aggregate per-token totals + top-10 holdings + summary
  5. Push rows with _type: "summary" or _type: "token_position" for easy filtering

Limitations & honest disclosure

  • No native ETH/MATIC/BNB tracking in this version — only ERC20s. Native PnL coming in v0.2.
  • No swap-level matching — counts buys / sells based on transfer direction, not actual DEX swap matching. Tokens received via airdrop will count as a "buy" with cost-basis 0.
  • No realized PnL with cost basis — net_qty + current_value gives you portfolio snapshot, not historical realized PnL. Cost-basis tracking with cross-token swap matching is v0.3.
  • Prices via DexScreener — for highly illiquid or new tokens, may be stale or absent.

For more sophisticated PnL (cross-token matching, FIFO cost basis, capital gains tax reports), use CoinTracker or Koinly.



Feedback

A short review helps other crypto analysts find it: Leave a review on Apify Store