MANIFOLD
Will Manifold convince me the charity giveaway was fair before the end of March 2026?
13
Ṁ10kṀ45k
Mar 31
90%
chance

Background

Manifold held a charity drawing a couple days ago after a giveaway where users donated mana. I'm attempting to verify the results.

So far I have been unable to verify that the charity giveaway was fair.

They provided a nonce hash during the competition and I am satisfied that the nonce they have provided afterward is the one they used:

Pre-published hash: be763636dd84526263da5fcf76a5749f

Revealed nonce: 3ea815748b401ecf44e0565ff97577758861be9c4a4ce40e7e51bfec71b3e291

So far, this all checks out. The hash matches the revealed nonce. The hash did not change.

However, verifying that the draw was fair requires the timestamps of the last 10 purchases in order to generate the random number. I was able to use the get-charity-giveaway-sales API which happens to include the last 10 purchases and their timestamps:

1772344608000
1772311000000
1772286202000
1772257983000
1772256780000
1772256743000
1772249295000
1772237930000
1772203754000
1772192331000

I used those timestamps and the code supposedly used to select the winner, and got a random value of 0.6683799368020045 which, with the published total ticket sales of 3434266.508031701 tickets would correspond to a winning ticket of number 2295394.831599469.

However, the winning ticket shown on the page is the 2nd to last ticket purchased. It should correspond to a random value of roughly 0.997 (or whatever, I didn't calculate it exactly).


Market resolution criteria:

If Manifold (or anyone, or myself) convinces me the charity giveaway was fair before the end of the month, I'll resolve Yes. If I am not convinced by the end of the month, I will resolve No.

If Manifold announces a new winner or announces there was an error, this resolves No. If they do not change anything and no one convinces me the giveaway was fair, it resolves No.


Possible ways to convince me:

  1. The first likely way I could be convinced is to show me that I have made an error in interpreting the calculations. I have tried using the code from Manifold's published GitHub repository and also implementing my own take, and got the same 0.668 result both times. Show me that I have made an error in running the calculations and that running it the right way results in ~0.997.

  2. Maybe I am interpreting the mapping of random value to ticket number incorrectly. Convince me that the 0.668 value corresponds to the shown winning ticket and I'll be happy.

  3. Another way I could be convinced is if someone shows me that the timestamps I was using were incorrect and also presents a plausible case for what the real timestamps are. The get-charity-giveaway-sales API returns timestamps with ms precision but they all appear to be rounded to the nearest second (ending with 000). I assume this means the timestamps are only stored in the database to the second. If someone can show me that the database actually stores the timestamps to the ms or greater precision and come up with the true values that result in a random value of ~0.997, that would help. But the database table is not publicly readable. Manifold would probably be able to fake a result of 0.997 with this strategy so it has to be a believable case.

  4. Perhaps there is some other error, like the API is not correctly returning the last 10 tickets, or anything else.

Market context
Get
Ṁ1,000
to start trading!
Sort by:
reposted

Knowing whether I can trust the result will be very important in determining how much mana to vote with if there is another one of these.

@Eliza Well, if there's anything else I can do to convince you, or tweaks to make for future draws, let me know!

I can taste it

bought Ṁ2 NO

@Gen are you going to ban @Eliza If they falsely resolve no? lol

@Meek nah lol it's resolving to their opinion, they can resolve it NO, but I can't say I understand the point of the market if the intention was to be ultimately skeptical.

If saying "how can I trust my eyes" is 100, "how can I trust the pixels on my monitor" is 99, I think that the evidence I've presented should at least be like ~90. To resolve NO would be to allege a total conspiracy to achieve a pretty mundane outcome, and one where I am either complicit as a total puppet or actually smart enough / sinister enough to prepare a mock conversation with claude asking how to prove this is real while doing db surgery to rig it (for Malaria?) or I guess to make it justify the draw outcome (again, why?)

If it was a mistake, I'm pretty sure we would have just done the draw again and paid $1k to another charity. If it was a conspiracy: what's the point? lol

bought Ṁ7,421 YES

anyone want to give me a loan? 😭

bought Ṁ10,649 YES

Yes, your timestamp values are wrong, I believe that is the entirety of the discrepancy. Try again with

const timestamps = [

'2026-03-01 05:56:48.289413+00',

'2026-02-28 20:36:40.596903+00',

'2026-02-28 13:43:22.196871+00',

'2026-02-28 05:53:03.226211+00',

'2026-02-28 05:33:00.599544+00',

'2026-02-28 05:32:23.7516+00',

'2026-02-28 03:28:15.828289+00',

'2026-02-28 00:18:50.79965+00',

'2026-02-27 14:49:14.480955+00',

'2026-02-27 11:38:51.362852+00',

];

Timestamp values
1772192331362

1772203754480

1772237930799

1772249295828

1772256743751

1772256780599

1772257983226

1772286202196

1772311000596

1772344608289




Winning ticket #: 3,431,241.135 out of 3,434,266.508 total

Actual random value: 3,431,241 / 3,434,266 ≈ 0.9991

@Gen how can you convince me you're not lying about the timestamps? The api only returns them rounded to the nearest second.

@Eliza I wouldn't even know how to reverse engineer the result, I literally had to ask claude how to even verify this myself before I showed you

last 10 purchases in supabase

@Gen rows are num_tickets; mana_spent; created_time

@Gen if there's anything else I can do lmk, lol

@Gen This is easy to fake after the fact. You just need to keep trying new ms values until you get a result that matches with the claimed winner. It wouldn't take very much work to do that and update the database values which were not available until AFTER publishing the result. So no one could have verified this until now.

So far I am not quite convinced but you have made a pretty good effort. But someone out there who doesn't trust you is going to think the winner was a plant and you were ALWAYS going to buy malaria nets.

@Eliza It is a well-known fact that I am actually pro malaria, checkmate

Seriously though, I was genuinely concerned when I saw this market/discord comments and wanted to verify it myself. The mana is just a nice glowy side benefit. I have never looked at any of this, had no part in creating it, just thought it was worth making sure we got it right. There will be more giveaways in the future, so we want it to be reliable and trustworthy.

Going forward, I wonder if there is a way we can improve it? It seems possible that we could use the API returned versions of the timestamps instead of the real version that we see in supabase. It needs to be trustworthy, and verifiable, or people won't want to participate (ofc). There's also no reason for us to rig it, people trusting the process is worth way more to Manifold the company than diverting $1,000 to a different charity

You will also notice, I bet YES here only after I verified it, whereas I bought YES on the /Bayesian/was-this-compliant market immediately

@Gen it would have made a huge difference if the 10 timestamps used for the calculation were publicly visible before the drawing was held.

@Eliza Yeah, that makes sense, I assume I could find the transaction logs or something but of course if you think I could fake this you would think I could fake that

plus it seems extremely annoying to find, but I would do it if it helped

Here's another question: was it legal? Because California has a lot of laws about this sort of thing, particularly when real money gets involved, & I'm not sure this was compliant

bought Ṁ2,300 NO

I'm starting it at 60%. I think the most likely situation right now is that the timestamps were somehow truncated and we don't have the true timestamps. But even if they give us the true timestamps, how am I supposed to know they weren't lying?

bought Ṁ750 NO

@Eliza i’ll bet more NO at 50% if you want

or 45%

© Manifold Markets, Inc.TermsPrivacy