NFT Attribution Engine
Blockchain2024

NFTATTRIBUTIONENGINE

99.8% attribution accuracy across 1M+ daily NFT trades via raw 32-byte EVM word parsing.

99.8%
NFT attribution accuracy
1M+
Trades indexed per day
3
Marketplace protocols
SCROLL
Client
Graph Builders DAO
Domain
Blockchain Infrastructure
Platform
Rust Service
Duration
Mar 2024 — Present
Core Stack
Rust · EVM · PostgreSQL
The Brief

THE
PROBLEM

Standard ERC-721/ERC-1155 Transfer events reveal no marketplace or pricing data. Anonymous transfers needed to be attributed to marketplace orders across OpenSea Seaport, Blur, and X2Y2.

A Rust log correlation engine pulling full receipts, parsing raw 32-byte EVM words, matching Transfer events to marketplace signatures. Results normalised into unified schema with composite PostgreSQL indexes for sub-second queries on 10M+ records.

Core Engineering Challenge

Build a correlation engine that parses full transaction receipts, iterates sibling logs using raw 32-byte EVM word parsing, and stitches anonymous transfers to platform-specific order events at 1M+ trades/day.

99.8%
Attribution Accuracy
1M+
Daily Trades
10M+
Historical Records
3
Protocols
Extended stack
backend
Rust
blockchain
EVM Internals
database
PostgreSQL
blockchain
Substreams
EVM Log Correlation
EVM Log Correlation
How we built it

THE ARCHITECTURE

01
Full Receipt Pulling

Pull complete transaction receipts for all NFT-related transactions, not just the Transfer event.

EVM RPCeth_getTransactionReceipt
02
Sibling Log Iteration

Iterate all logs in the same transaction, identifying marketplace-specific event signatures alongside the Transfer.

Log TopicsEvent Signatures
03
Raw 32-byte Word Parsing

Parse marketplace order data from raw 32-byte EVM words — direct byte manipulation in Rust, no ABI decoder.

RustEVM InternalsByte Parsing
04
Schema Normalisation

Normalise OpenSea, Blur, and X2Y2 event structures into unified production schema for cross-marketplace analytics.

PostgreSQLSchema Design
System Data Flow
Ingestion
CrawlerContent Hash10K+ pages
Processing
ChunkerDeduplicatorEmbedding API
Storage
pgvectorPostgreSQLRedis Cache
Auth
Identity ProviderJWT BridgeSessions
Query
HNSW SearchRe-rankerLLM Stream
Delivery
Web AppMobile AppUsers
What we delivered

THE RESULTS

99.8%

Across OpenSea Seaport, Blur, and X2Y2 after correlating anonymous Transfer logs with marketplace order events — validated against spot-checked on-chain bundles so Messari-tier consumers could trust venue and price fields.

99.8%
Attribution Accuracy

Across OpenSea Seaport, Blur, and X2Y2 after correlating anonymous Transfer logs with marketplace order events — validated against spot-checked on-chain bundles so Messari-tier consumers could trust venue and price fields.

1M+
Daily Trades

Sustained real-time processing with a sub-2% error budget on noisy mempool-adjacent receipts, using Rust-side batching and composite indexes so dashboards stayed fresh without re-scanning history nightly.

10M+
Historical Records

Sub-second analytical queries on 10M+ normalized rows via composite PostgreSQL indexes tuned to marketplace + token + block clustering patterns common in NFT analytics workloads.

3
Protocols

OpenSea Seaport, Blur, and X2Y2 share one production schema for trades, fees, and wash-risk signals — simplifying downstream GraphQL and BI models that previously forked per marketplace.

Visual documentation

SCREENS &
INTERFACES

NFT Attribution Dashboard
NFT Attribution Dashboard
Analytics
Analytics
Engineering decisions

TECH
DEEP DIVE

EVM
Raw bytes vs ABI decoder

Marketplace contracts use non-standard encodings; ABI decoders can fail silently on edge cases while raw 32-byte word parsing keeps every branch explicit.

99.8% accuracy required encoding-variant tables per protocol, not a single generic decoder.

RUST
Rust for EVM work

Zero-cost loops over logs and receipts without GC pauses during high-frequency ingestion windows.

Ownership and explicit error types made it safe to refactor handlers when Seaport shipped minor event tweaks.

PG
PostgreSQL composite indexes

Query paths for “latest sales by collection” and “wallet PnL” mapped cleanly to composite keys instead of ad hoc JSON blobs.

Normalized rows let BI tools join attribution output to pricing engines without another ETL hop.

RCP
Full receipt correlation

Pulling full receipts (not just Transfer topics) unlocked sibling logs that pure topic filters would miss.

This was the difference between “some NFT moved” and “this blur bid settled at price X.”

Next Case Study
Blockchain
DeFiPricingEngine

Multi-Hop Token Pricing

ClickHouseRustSubstreams
Start a project

LET'S
BUILD
SOMETHING.

We take on a small number of projects at a time. If the problem is hard, we're interested.

Email
hello@techmusketeers.com
Response time
Within 24 hours
Availability
Open for new projects · 2025