# The apps behind the payees

Captured September 16, 2026. Run: `2026-09-16-discovery`.

## Result

68 of 87 payment addresses match named builders through official Polymarket user metadata. The matched wallets received **81,197.18 USDC.e**, or **64.96%** of **124,999.52 USDC.e**, in the five reviewed transactions. These 68 wallets account for 245 of 319 outgoing payment legs. The other 19 addresses account for 43,802.34 USDC.e and remain in the published census.

Examples: MythicalPeople → traderline (user 1377213; 13,768.72 USDC.e); adskfjdskjfhskdf → SpreadCore.xyz (user 4211034; 6,175.22 USDC.e); PMSorg → PolymarketScan.org - Free Data (user 4621080; 2,214.25 USDC.e).

## Cohort and sources

The cohort is the complete set of recipients in five transactions from signing wallet `0xc0126535cbc6f70fc71d41bbc266d76321159efe` to ClipperPayout, `0xd15fe25ed0dba12fe05e7029c88b10c25e8880e3`: three transactions on August 26 and two on September 15, 2026. These batches were identified in the September 16 payment census. The transfer dates do not establish reward-earning weeks.

The official [builder leaderboard API](https://data-api.polymarket.com/v1/builders/leaderboard?timePeriod=ALL&limit=50&offset=0) returned 543 entries across eleven pages, ending with a partial page. Those entries represent 539 distinct builder codes. Every one of the 87 payment addresses was queried through the [public-profile API](https://gamma-api.polymarket.com/public-profile?address=0xa32146cf1964c9ff6d4a244495308d0edf4f4f6e): 82 returned HTTP 200 and five returned HTTP 404. The identity download records the captured source URLs, times and SHA-256 response hashes.

## Exact matching rule

1. Parse a numeric user ID only from an HTTPS logo URL on `polymarket-upload.s3.us-east-2.amazonaws.com` with a `profile-image-ID-…` filename and png, jpg, jpeg or webp extension.
2. Require that ID in the official profile's `users[].id` array.
3. Require `proxyWallet` in that profile response to equal the actual paid address. A query that returns a different associated proxy wallet does not qualify.
4. Require one distinct builder code for that user ID in the captured directory, and one paid wallet for that ID in the eligible profile set. Require exactly one qualifying ID per wallet. There is no fuzzy name matching.
5. If several directory labels share the same user ID and builder code, select the lowest numeric rank. The four directory alias pairs are luma.trade / Luma, app.polyrust / polyrust, Virae.ai / PredictDog, and floral.fun / Clover. None changes the 68-wallet matched cohort.

The result is a metadata association between an app listing and a paid profile. It is not a signing-key ownership or legal-entity ownership test. The logo and profile image need not be the same image: the numeric ID is the join key. “No direct join” means the rule did not yield a match; it does not erase independently documented associations.

## Receipt verification

For all five transactions, obtain `eth_getTransactionReceipt`, `eth_getTransactionByHash` and the block header from Polygon. Require receipt status `0x1`, the signing wallet and called contract stated above, and the receipt's block hash equal to the fetched block hash.

For every payment require the exact transaction hash, log index, token contract, sender, recipient and six-decimal integer amount. The only token admitted is Polygon USDC.e, `0x2791bca1f2de4661ed88a30c99a7a9449aa84174`. Require the outgoing log-index set to equal the published payment set, with no missing or duplicate payment legs. Sum all outgoing amounts using decimal arithmetic and require equality with the operator-to-Clipper funding amount in that transaction. All five reconcile. The public receipt extracts preserve all 319 outgoing logs and five incoming funding logs, alongside transaction and block metadata.

## Program context

Polymarket's [builder tiers documentation](https://docs.polymarket.com/programs/builders/tiers) describes weekly USDC rewards based on volume for approved builders and grants subject to approval. The [program overview](https://docs.polymarket.com/programs/builders/overview) describes builder attribution. The matched apps and repeated near-25,000-token batches are consistent with program payments; this is an inference about purpose. The Transfer events themselves identify sender, recipient, token and amount, and do not label a compensation program. The crosswalk does not classify these transfers as trading-fee payouts.

## Reproduction

Run `python3 -m research.builders` in the research repository. Captured inputs are cached under `artifacts/research/2026-09-16-discovery`; normalized outputs are under `reports/research/2026-09-16-discovery`. `python3 build_site.py` publishes the explorer and downloads. The manifest hashes every published file in this run.

`builder_payees.csv` includes all 87 addresses. `builder_payments.csv` contains all 319 legs. `builder_batches.csv` reconciles the five transactions. `builder_identity_joins.json` contains all 68 joined records. `builder_receipt_extracts.json` contains the selected raw logs. `builder_summary.json` records cohort and coverage counts.
