Skip to main content
The NullGraph bounty marketplace allows researchers, BioDAOs, and institutions to request specific null results by offering BIO token rewards. When you create a bounty, your reward is immediately escrowed into a program-controlled vault, ensuring trustless settlement.
Before creating a bounty, make sure you have set up your Phantom wallet with devnet SOL and BIO tokens.

What You’ll Need

Before creating a bounty:
  • Connected Phantom Wallet: With sufficient SOL for transaction fees
  • BIO Tokens: The exact reward amount you want to offer (on Solana devnet)
  • Clear Description: What null result you’re looking for (up to 256 characters)
  • Deadline: How many days researchers have to submit
Make sure you have enough BIO tokens in your wallet before creating the bounty. The full reward amount is transferred immediately upon creation.

How Bounty Escrow Works

  1. Creation: You specify a reward amount (e.g., 10 BIO)
  2. Escrow: The full amount is transferred from your wallet to a vault PDA
  3. Vault Control: The vault is controlled by the NullGraph program—only the program can authorize transfers
  4. Settlement: When you approve a submission, the program automatically pays out (reward - fee) to the researcher and the fee to the treasury
  5. Refund: If you close the bounty before approval, the full amount returns to your wallet
You never lose control permanently. You can always reclaim your escrowed BIO by closing the bounty—until you approve a submission.

Creating a Bounty

2
  • Open NullGraph at https://nullgraph.vercel.app
  • Click Market in the navigation bar
  • You’ll see a grid of existing bounties (if any)
  • Click the Create Bounty button (usually in the top right or center)
  • 3
    Fill Out the Bounty Form
    4
    A modal will appear with three fields:
    5
    Description (Required)
    6
  • What specific null result are you looking for?
  • Be as detailed as possible within the character limit
  • Include key variables, conditions, or methodologies
  • Example: “Looking for evidence that CRISPR efficiency does NOT improve in plant cells under UV exposure”
  • Character limit: 256 characters
  • A character counter shows your remaining space
  • 7
    Reward Amount (Required)
    8
  • Enter the number of BIO tokens you want to offer
  • Accepts decimal values (e.g., 10.50)
  • Minimum: 0.01 BIO
  • The amount will be converted to base units (6 decimals) for on-chain storage
  • Example: 10.00 becomes 10,000,000 base units
  • 9
    Deadline (Required)
    10
  • How many days from now should the bounty expire?
  • Enter a whole number (e.g., 7 for 7 days)
  • Minimum: 1 day
  • The deadline is stored as a Unix timestamp on-chain
  • After the deadline passes, the bounty can still be closed but no new submissions are accepted
  • 11
    All three fields are required. The “Deposit BIO & Create Bounty” button remains disabled until all fields are valid.
    12
    Approve the Transaction
    13
  • Click Deposit BIO & Create Bounty
  • Phantom wallet will prompt you to approve two operations:
    • Transfer of BIO tokens to the bounty vault
    • Creation of the NullBounty PDA and vault account
  • Review the transaction:
    • Program: NullGraph Anchor Program
    • Token Mint: BIO token address
    • Amount: Your reward amount
  • Click Approve in Phantom
  • Wait for confirmation (1-2 seconds on devnet)
  • 14
    Once you approve, the BIO tokens leave your wallet immediately. Make sure the reward amount is correct before approving.

    After Creation

    Once your transaction confirms:
    1. Your bounty receives a unique identifier (e.g., NB-0003)
    2. It appears on the Market page with status Open
    3. Your BIO tokens are now in the vault (you can verify on Solana Explorer)
    4. Researchers can browse your bounty and submit matching NKAs
    5. You’ll receive notifications when researchers submit to your bounty

    Managing Your Bounty

    Viewing Submissions

    1. Click on your bounty card in the Market page
    2. You’ll see the bounty detail page with:
      • Full description
      • Reward amount
      • Deadline
      • Current status
      • List of submissions (if any)

    Reviewing a Submission

    When a researcher submits an NKA to your bounty:
    1. The bounty status changes to Matched
    2. The submission appears on the bounty detail page
    3. You can view the linked NKA by clicking its specimen number
    4. Review the NKA’s hypothesis, methodology, results, and data hash
    5. Decide whether it meets your requirements

    Approving a Submission

    If the submission satisfies your bounty:
    1
    Click Approve
    2
    On the bounty detail page, click the Approve Submission button next to the matched submission.
    3
    Confirm Transaction
    4
    Phantom will prompt you to approve the settlement transaction:
    5
  • Researcher Payout: reward × (1 - fee_rate) (default: 97.5% of reward)
  • Protocol Fee: reward × fee_rate (default: 2.5% of reward)
  • Vault Balance: Goes to zero
  • 6
    Click Approve.
    7
    Settlement Complete
    8
  • The researcher receives their payout in BIO tokens
  • The protocol treasury receives the fee
  • The vault account is closed
  • Your bounty status becomes Fulfilled
  • You can no longer close or reclaim the bounty
  • The protocol fee (default 2.5%) is deducted from the reward and sent to the treasury. The researcher receives the remaining 97.5%.

    Closing a Bounty

    If you want to cancel the bounty or the deadline has passed without a suitable submission:
    1
    Click Close Bounty
    2
    On the bounty detail page, click the Close Bounty button.
    3
    Confirm Refund
    4
    Phantom will prompt you to approve the refund transaction:
    5
  • The full vault balance returns to your wallet
  • The bounty status becomes Closed
  • 6
    Click Approve.
    7
    Bounty Closed
    8
  • Your BIO tokens are refunded in full
  • The bounty remains visible on the Market page with status Closed
  • No further submissions can be made
  • You can close a bounty at any time before approving a submission. There’s no penalty for closing—you get your full reward back.

    Bounty Status Lifecycle

    StatusDescriptionYour Actions
    Open (0)Bounty is active, waiting for submissionsClose bounty
    Matched (1)A researcher has submitted an NKAApprove submission or close bounty
    Fulfilled (2)You approved a submission, payout completeNone (terminal state)
    Closed (3)You closed the bounty and reclaimed your BIONone (terminal state)

    Understanding Token Transfers

    During Creation
    Your Wallet (BIO) → Vault Token Account (BIO)
    
    During Approval
    Vault (BIO) → Researcher Wallet (97.5%)
    Vault (BIO) → Treasury Wallet (2.5%)
    
    During Close
    Vault (BIO) → Your Wallet (100%)
    
    All transfers use the SPL Token Interface with transfer_checked, ensuring mint address and decimal precision are validated.

    Common Questions

    Can I edit a bounty after creation? No. Bounties are immutable once created. You can only close them or approve submissions. What if I don’t like the submission? You can close the bounty to reclaim your BIO. The researcher’s NKA remains on-chain, but you get your full reward back. Can multiple researchers submit to the same bounty? Currently, only the first submission sets the bounty to Matched status. Future versions may support multiple submissions. What if the deadline passes? The bounty remains open on-chain even after the deadline. You can still close it to reclaim your BIO. The deadline is informational—it doesn’t automatically close the bounty. How much SOL do I need for transaction fees? Typically ~0.00001 SOL per transaction, plus rent for the bounty PDA (~0.01 SOL, recoverable). Can I create multiple bounties? Yes! Each bounty gets a unique number and vault. You can have multiple active bounties simultaneously.

    Best Practices

    Write Clear Descriptions
    • Be specific about the hypothesis, methodology, or conditions
    • Include negative terms: “does NOT”, “no effect”, “failed to”
    • Mention key variables or populations
    Set Appropriate Rewards
    • Consider the complexity and rarity of the null result
    • Check existing bounties for market rates
    • Remember: 2.5% goes to the protocol as a fee
    Set Realistic Deadlines
    • Allow enough time for researchers to find and submit matching NKAs
    • 7-14 days is typical for common null results
    • 30+ days for rare or highly specific requests
    Review Submissions Carefully
    • Click through to the full NKA detail page
    • Check methodology aligns with your needs
    • Verify p-values and sample sizes meet your standards
    • Look for data hash if provenance is important

    Next Steps

    Browse Market

    View all open bounties

    Claiming Bounties

    Learn how researchers submit to bounties

    Build docs developers (and LLMs) love