Skip to content
Milestone
Coming soonBase & Ethereum

Get paid, milestone by milestone.

Escrow for freelancers and creators. Your client — or the brand sponsoring you — locks USDC in a smart contract. You deliver the work or the post goes live. It's released one milestone at a time. No invoices to chase, no platform holding your money, just a flat 1%.

  • Non-custodial
  • 1% flat fee
  • No token
  • Open source at launch
Built withUSDC by CircleBaseEthereumOpenZeppelinFoundry-tested
flat fee, refunds free
1%flat fee, refunds free
admin keys over your funds
0admin keys over your funds
withdraw to any wallet
24/7withdraw to any wallet
fallback if nobody decides
50/50fallback if nobody decides

How it works

Lock. Deliver. Release.

Three steps, enforced by code. Each milestone is its own little escrow, so trust is earned one step at a time.

Client → escrow

Client

funds & approves

Escrow

smart contract

Freelancer

delivers & withdraws

$
Funded · lockedDelivered · in reviewReleased · 99% to freelancer

Why Milestone

Trust the code, not a middleman.

Built so neither side has to trust the other — or us.

Non-custodial by design

USDC sits in an immutable smart contract. There is no admin function that can move, freeze or redirect escrowed funds — not even ours.

1% flat. That's it.

Charged only on what the freelancer receives, locked in per deal. Refunds are free. Capped at 3% in code.

No token

No points, no governance token, no lockups. You pay and get paid in USDC — digital dollars by Circle.

Open source at launch

Readable Solidity with unit, fuzz, invariant and re-entrancy tests, built on OpenZeppelin. The source will be published and verified on the block explorer at launch — verify it before you trust it.

Base & Ethereum

Fast, cents-cheap payments on Base, or maximum settlement assurance on Ethereum. Same code on both.

Pull payments

Payouts are credited to your balance and withdrawn to any address — so nobody can block anyone else's money.

When things go sideways

Disputes that always end.

Every disputed milestone has a guaranteed way out — no money stuck forever.

  1. 01

    Referee decides

    A neutral person you both approved splits the milestone — say 70% freelancer, 30% client — before the dispute timeout.

  2. 02

    Or settle yourselves

    Both sides propose a split. The moment the numbers match, it executes. Works any time, with or without a referee.

  3. 03

    Or 50/50, automatically

    If nobody decides before the timeout, anyone can trigger a fair-enough 50/50 split. A liveness guarantee.

Fees

Keep what you earn.

Marketplaces and traditional escrow take a real cut. Milestone takes 1% of payouts — and nothing on refunds.

$6,000

You keep $840 more than on a typical marketplace.

  • Milestone$60 (1.0%)

    1% of what the freelancer receives · + network gas (cents on Base)

  • Escrow.com$144 (2.4%)

    Standard tier, per transaction; fee split negotiable

  • Upwork$900 (15.0%)

    Typical: 10% freelancer fee (0–15%) + 5% client fee (up to 7.99%)

Estimates from public list prices checked Sep 2026 (Upwork client fees, Upwork freelancer fee, Escrow.com). Actual fees vary by plan, payment method and contract. Upwork includes services Milestone doesn't (talent marketplace, invoicing, support).

  • Who holds the money

    Milestone: A smart contract — no one can redirect it

    Marketplace: The platform

    Traditional escrow: A licensed escrow company

  • Fee on a $6,000 project

    Milestone: $60 (1%)

    Marketplace: ≈ $900 (≈10% + 5%)

    Traditional escrow: ≈ $144 (2.4%)

  • Milestone-by-milestone release

    Milestone: Built in

    Marketplace: Yes

    Traditional escrow: Per transaction

  • When the client goes quiet

    Milestone: Auto-claim after review window

    Marketplace: Platform policy

    Traditional escrow: Manual process

  • Disputes

    Milestone: Referee you both pick · mutual split · 50/50 fallback

    Marketplace: Platform mediation

    Traditional escrow: Arbitration (extra cost)

  • Payout speed after approval

    Milestone: Instant, withdraw 24/7

    Marketplace: Days (holding period)

    Traditional escrow: Business days

  • Who can use it

    Milestone: Anyone with a wallet

    Marketplace: Approved accounts & regions

    Traditional escrow: KYC, supported countries

For freelancers

Put “Pay me via Milestone” in your bio.

Get a personal link and badge. Clients who click it land on a deal with you pre-filled — they add the milestones, fund, and you start work knowing the money is there.

Get my link & badge

Ada · Product designer

Brand systems, web & mobile. Booking Q4.

milestone.app/pay/0x3C44…93BC

Pay me via Milestone badge

For creators & brands

Sponsorships that pay when the post goes live.

The brand locks the budget up front. The creator gets paid per deliverable — no more chasing invoices 60 days after the campaign.

  1. 1Brand locks the budgetPick the Creator sponsorship template, split it into deliverables — Post 1 live, Post 2 live, stays up 30 days — and fund them in USDC. The creator sees the money is there before posting.
  2. 2Creator posts & marks it livePublish the sponsored content with a clear #ad disclosure, then mark that milestone delivered in Milestone.
  3. 3Payment releases per postThe brand checks the post and approves — or, if they go quiet, the creator can claim it once the review window (3 days by default) ends. Disagree? Use a referee, a mutual split or the 50/50 fallback.
  4. #ad disclosure reminder: paid posts must be clearly labelled as ads (e.g. #ad, #sponsored and the platform's “Paid partnership” tag). Milestone handles the money — disclosure is still on the creator, and brands shouldn't approve undisclosed posts.

Example · Creator sponsorship

Spring launch campaign

Brand: Northwind Coffee · Creator: @ada.makes

1,800 USDC
  • Post 1 livePaid
  • Post 2 liveIn review · 3 days
  • Post 3 liveFunded
  • All posts stay up 30 daysFunded

Illustration only. Milestone is pre-launch — the preview is view-only until the testnet beta opens.

FAQ

Questions, answered.

Is Milestone custodial? Can you take my money?

No. Funds sit in a smart contract, not with us. The contract has no function that lets the Milestone team (or anyone) move, freeze or redirect escrowed funds — money only moves by the deal's rules: client approval, review-window timeout, freelancer refund, referee decision, mutual settlement or the 50/50 fallback.

What does it cost?

A flat 1% of what the freelancer receives, locked in when the deal is created. Refunds to the client are never charged. You also pay normal network gas, which is typically a few cents on Base. There is no token and no subscription.

What if the client goes silent after I deliver?

Every deal has a review window (for example 7 days). If the client neither approves nor disputes before it ends, the freelancer can claim the milestone. Silence counts as approval.

What if the work isn't delivered or we disagree?

Either side can open a dispute on a funded milestone. The referee you both agreed on can split it (e.g. 70/30), you can settle between yourselves at any time, or — if nobody decides before the dispute timeout — anyone can trigger an automatic 50/50 split. The freelancer can also refund a milestone voluntarily.

Does Milestone work for creator sponsorships?

Yes — same escrow, different wording. Pick “Creator sponsorship” when you create a deal: the brand funds USDC per deliverable (e.g. Post 1 live, Post 2 live, stays up 30 days), the creator marks each one live, and the brand approves or the creator claims it after the review window (3 days by default). Creators can share a pay-me link set up for brands.

How does a “stays up 30 days” milestone work?

It's a normal milestone the brand funds up front. Once the post has been live for 30 days, the creator marks it delivered; the brand checks the post is still up and approves — or it can be claimed when the review window ends. If the post came down early, the brand can dispute it.

Do creators still need to disclose sponsored posts?

Yes. Milestone only handles the payment. Paid posts must be clearly disclosed as ads — for example #ad or #sponsored up front plus the platform's paid-partnership label — as advertising rules (such as the FTC's in the US) and platform policies require. Brands shouldn't approve a post that isn't disclosed.

Which networks and tokens are supported?

USDC on Base and Ethereum. Milestone isn't deployed yet: a public testnet beta on Base Sepolia and Ethereum Sepolia comes first, and mainnet launches only after an independent audit.

Is the contract audited and open source?

Open source at launch: the contract source, tests (unit, fuzz, invariant) and docs will be published, and the code verified on Basescan and Etherscan, when Milestone launches. It has not been audited yet — please don't use real funds until it is. During launch, deal sizes and total deposits are capped, and new deals can be paused (existing deals and withdrawals always keep working).

Can deal terms be changed later?

No. Parties, referee, amounts, review window, dispute timeout and fee are fixed when the deal is created and ratified when the freelancer accepts. Need something different? Create a new deal.

How do I get my money out?

Payouts are credited to your balance in the contract. Press Withdraw to send them to your wallet — or any address you choose — whenever you like.

Be first on mainnet.

Milestone isn't live yet — you can explore the app preview today. Join the waitlist and we'll tell you when the testnet beta opens and when audited Milestone launches on Base and Ethereum.

I'm a (optional)

Privacy: we only use your email (and role, if you pick one) to send Milestone beta and launch updates. It's stored privately, never sold or shared, and you can ask to be removed any time by replying to one of our emails.