Skip to main content
Starter queries are proven patterns you can run as-is or adapt. Each one is valid against the curated schema and returns within the limits, so they’re a safer starting point than a blank editor.

Wallet enrichment

Top enriched wallets

Your richest wallets by portfolio value, volume, and NFT breadth.

Engagement

Most active wallets

On-chain activity joined to contact records, over the last 90 days.
This query returns one row per wallet per chain, because wallet_activity_summary is chain-scoped. Add AND was.chain = 'base-mainnet' to pin it to a single chain, or aggregate if you want one row per wallet.If wallets seem to be missing, wrap both sides of the joins in lower(), casing isn’t normalized on contacts.

Volume scoring

High-value volume scoring

Rank wallets by 90-day volume, estimated LTV, and recent activity for targeting.

Retention

These three run against contact_360, which already joins identity, on-chain metrics, activity, and email engagement.

Churn-risk whales

High-value contacts going quiet on-chain but still email-reachable, prime win-back targets.

Engaged readers, inactive on-chain

They open your emails but have stopped transacting. Good candidates for an incentive.

Healthy VIPs

Your best customers right now, high LTV, active on-chain, engaging with email. Reward and retain.

Adapting them

1

Pick the closest starting point

Match on the question shape, not the exact columns; columns are easy to swap.
2

Tighten the filters

Adjust the thresholds (portfolio_value_usd, days_since_last_activity) to your audience. The defaults are deliberately broad.
3

Validate a few rows

Spot-check wallets you recognize before trusting the whole result.
4

Save as a report or segment

Segments need a wallet column in the output. Every retention query above already has one.
Remember that churn_risk is derived from activity recency: low within 30 days, medium at 30–60 days, high beyond 60, plus unknown for wallets with no recorded activity and suppressed for suppressed contacts.