Build with AI

How to build a UGC creator marketplace with Bolt

Build a two-sided marketplace in one browser tab, starting from a GitHub repository. Campaigns from brands, video from creators, a licence granted on approval, and a wallet the creator can withdraw from, described in plain language, with the running app rebuilding in front of you after every message.

August 2026 · 43 min read · Updated September 2026

Bolt

$ Build a UGC marketplace in this project: brands post and fund campaigns, creators apply and upload video, approving a submission grants the brand a licence and credits the creator’s wallet, and an admin console watches the money.

  • Repository imported
  • Schema and access rules built
  • Ready to preview
You describe it, Bolt builds it
Start here

What a UGC creator marketplace actually is

A UGC marketplace is the middle of a transaction: a brand wants video it can advertise with, a creator wants paying for making it, and your platform is what makes both sides comfortable enough to go through with it.

Strip it back and there are three loops running at once. A brand posts a campaign with a budget and a brief. Creators apply, get picked, and upload their work. The brand reviews it, asks for a change or approves it, and the moment it approves, two things have to happen together that most software treats as unrelated: the rights to that video have to move to the brand, and money has to move to the creator.

That pairing is the whole job. Everything a marketplace gets criticised for lives there: a creator paid three weeks late, a brand running an ad on footage it turns out it never licensed, an account that took the money and vanished. The screens are ordinary. What is not ordinary is holding funds you do not own, proving that a stranger is who they claim to be, and being able to answer, months later, exactly who agreed to what.

Two customers who want opposite things

Brands want the work cheap, fast, and exclusive. Creators want to be paid promptly and keep reusing their own portfolio. Your platform sets where that line falls, and it has to be visible to both sides in the same words before either commits.

The licence is the product

What a brand actually buys is permission: to run this video, on these channels, for this long, exclusively or not. If that is not a record in your database with a date on it, you have sold a file and hoped.

You are holding somebody else’s money

Between "brand funds the campaign" and "creator withdraws" sits a balance that belongs to neither of you yet. A wallet that reconciles, a payout that can be retried without paying twice, and a ledger you can read back in an argument are not nice-to-haves here.

Who runs creator programmes now

66.3%

of respondents “report running programs entirely in-house”, per Influencer Marketing Hub’s 2026 benchmark survey of 600+ marketers, the shift that ends with someone needing a platform of their own.

Influencer Marketing Hub, 2026 (Influencer Marketing Benchmark Report) · checked August 2026

What a marketplace needs

The parts every UGC marketplace is built from

It is worth knowing the pieces before you start, because a marketplace is where most people underestimate how much sits behind the screens. These six are the whole product, and every one of them is something you describe in plain words rather than build.

01

Two front doors and one account system

A brand signing up and a creator signing up want completely different forms, dashboards, and vocabulary, but they share one login system and one set of rules about who may read what. Building them as two separate apps is the mistake that doubles every later change.

02

Campaigns with a budget that runs out

A brief, a rate, a deadline, and a number of slots. The budget is the part people forget: when the last slot is filled the campaign has to stop accepting applications on its own, rather than relying on somebody noticing.

03

Uploads that survive real life

Creators upload video from a phone on hotel wifi. Files are large, connections drop, and the same clip gets submitted twice. Chunked uploads that can resume, a duplicate check, and a preview the brand can watch without downloading a gigabyte.

04

Review, revision, and a decision that sticks

Approve, decline, or ask for a change, with the reason attached, visible to both sides, and kept after the fact. A rejected submission with no recorded reason is how a dispute starts and why it cannot be settled.

05

Licences with dates on them

What the brand may do with the approved video, where, for how long, and whether anyone else may use it too. Issued the moment the work is approved, stored as a record rather than a PDF in someone’s inbox, and revocable if a payment never clears.

06

Wallets, payouts, and a ledger that balances

A balance per creator, a queue of payouts that can be retried without paying anyone twice, and a transaction history detailed enough to answer where a specific $200 went. This is the part that turns a content tool into a marketplace.

Build vs buy

Run the marketplace or pay a percentage to one

The alternatives are not four versions of the same thing. You can rent marketplace software, subscribe to a platform that also takes a cut of what you pay creators, buy credits that get spent as you work, or skip the marketplace idea entirely and just buy the videos. Here is the trade-off, side by side.

Build your own

Your own marketplace is a one-time build that keeps the margin between the brand’s budget and the creator’s fee, and with an AI coding tool writing the plumbing, that build is weeks rather than quarters.

  • Pay to build it once, then only your own infra bills and payment-processor fees: no cut of every campaign going out the door
  • You set the take rate, the payment terms, and the licence wording, instead of inheriting someone else’s
  • Brand and creator relationships are yours, in your database, reachable without an export request
  • Add a workflow your niche needs (whitelisted ad usage, a retainer, a revision limit) without waiting for a vendor roadmap
  • Your own AI on top: moderation, brief writing, duplicate detection, on whichever model you pick
  • Full ownership of the code and data: export anytime, zero lock-in

Rent a platform instead

Sharetribe · Insense · GRIN · Trend

Renting gets you running this month with none of the payment plumbing on your conscience. What it costs is a percentage, a per-transaction fee, or a credit balance, plus a product shaped by what the vendor’s other customers asked for.

  • Live in days: sign up, configure, and start, with nothing to build or host
  • Payment handling, creator onboarding, and the compliance paperwork around payouts come as part of the product
  • Support, onboarding, and someone to call when a payout fails at 6pm on a Friday
  • None of the four price the same way, so comparing them is genuinely hard: per month, per month plus a percentage, per credit consumed, or per video delivered
  • Two of the four charge on top of the subscription: a per-transaction fee, or a percentage of everything you pay creators
  • You inherit the vendor’s data model, so a term your niche cares about is a term you may simply not be able to record
SharetribeBuild $39/mo (test only, no live marketplace) - live plans $99/mo (Lite), $199/mo (Pro), $299/mo (Extend), all billed yearly

The closest thing to renting what this guide builds. Those three live figures are the yearly-billing rates the page shows by default. Paying month to month costs more, and the toggle that reveals by how much did not render for us, so treat them as the floor rather than the price. Live plans include 50, 250, or 500 free transactions per month, then “additional transactions $0.19 or less per initiated transaction”. The page is candid about what sits outside the subscription: payment processing, maps, analytics, custom development, and hosting for your custom code at roughly $19/mo. Lite runs on a mysharetribe.com address, so a marketplace on its own domain starts at Pro, and changing how the marketplace itself behaves needs the top tier.

sharetribe.com · checked August 2026

Insense$500/mo (Brand, monthly) or $400/mo billed annually - Agency $800/mo, plus a 7-20% marketplace fee

The subscription is not the whole price. Every tier charges a marketplace fee against creator spend (20% on the one-month trial, 10% on Brand, 7% on Agency) and states plainly that “Creator payments are not covered and must be budgeted separately”. So the bill is a fixed monthly figure plus a percentage of the exact thing your marketplace would be earning its own margin on. The $650/mo trial rolls into Brand automatically unless cancelled 48 hours ahead.

insense.pro · checked August 2026

GRINFree (200 credits/mo) - then $200, $500, $1,000, or $1,500/mo by credit bundle

Priced by credits consumed rather than by seat, with month-to-month billing and no quote-only enterprise tier on the page. Credits reset monthly and do not roll over. Overage is capped by you rather than by them: “If you go over your monthly credits, Gia keeps running at one flat rate, the same on every paid plan. You set a hard cap, and you are never billed a dollar above it.” The free tier stops rather than bills: “Free never has overage; it simply pauses billable actions until your next cycle.” Worth re-checking before you budget: this pricing model is new, and a vendor that just rebuilt one is likely to move it again.

grin.co · checked August 2026

TrendNo subscription - credit packs from $550 (up to 6 videos) to $3,872 (up to 56)

The row that represents not building a marketplace at all. You buy credits at “$9.16 each”, spend them on finished videos, and the packs include “100% licensing & distribution rights to use on social, websites, ads, & more”. No contract and no monthly fee, but “Credits expire 12 months after purchase”, and you end up with content rather than a creator roster, a licence archive, or any relationship you can go back to. For a brand that just wants video, this is the honest answer. For anyone whose business is the platform, it is not the same product.

trend.io · checked August 2026

Rule of thumb: if the marketplace is your business (you take a margin, you own the relationships, you want your own licence terms), the rented options are a tax on the exact revenue you are trying to build, and owning the platform pays back fast. If you are a brand that simply needs a steady supply of video, buy the videos and skip all of this. The genuinely awkward middle is an agency running creator campaigns for clients on a subscription plus a percentage, because that percentage scales with the part of the business you are already doing yourself.

No dev needed

Why build with Bolt

Screens are the easy part. What actually stalls a solo build is everything underneath them: somewhere real to hold the data people type in, permission checks on who can see it, and a UI that keeps working once more than one person is using it.

Bolt runs the whole thing in one browser tab, right down to the preview:

The build loop
1

Prompt

Describe the screen or rule you want, in plain language.

2

Preview

Watch the running app rebuild itself in the same tab.

3

Try it

Click through the real app, because the preview is the actual build rather than a mockup.

Refine

Ask for the next change, or fix what’s off.

Loop back to Describe

None of that needs an install or a terminal window, and the whole build happens in the tab GitHub just opened, one request at a time.

One tabruns the whole build

Bolt runs your project inside the browser itself, via StackBlitz’s WebContainers, so the preview you’re looking at is the app actually running, rather than a screenshot or a separate deploy you have to wait on.

Auto-committed to GitHub as you go

Once GitHub is connected, Bolt commits each working change on its own and pulls in anything you changed elsewhere, so the two stay in sync without you typing a git command.

Built-in database or your own Supabase

Ask for a database and Bolt wires up its own managed one with no extra account, or connects a Supabase project you already run yourself.

What it costs

Pay a developer, or do it with AI

Two numbers decide this, and only one of them is the build. One is who writes the platform, a one-time cost you can pay in money or in your own hours. The other is the per-transaction fees that start the day money begins moving through it. The first is compared below. The second is the same either way.

Hire a developer

Custom build, from scratch
Developer
~$16k-$65k
Supabase (backend)
Free tier · $25/mo (Pro plan)*
Hosting
$0 free tier
Build time
~325 hrs of their work

~$16k-$65k to build, then from $25/mo after launch

The spread comes from who you hire, not from how much there is to do: our ~325-hour estimate priced across the bands in the rate survey below. It puts North American contractors at $45-$75/hr and senior US developers at $100-$150+/hr, and notes agencies adding 20-40% on top, which works out at roughly $50/hr for the cheapest credible option and around $200/hr for an agency putting a senior on it. Every hour of that is spent before a single brand has posted a campaign. What continues afterwards is small by comparison: the database, the host, and the per-transaction fees your payment provider charges.

Build it with Bolt

From scratch, with Bolt
Bolt
Free (1M tokens/mo) to $25+/month (Pro, from 10M tokens)
Backend (Supabase)
Free tier · $25/month (Pro plan)*
Hosting
Free on Bolt’s own hosting, or Netlify
Your time
~155 hrs

Free for a first look. A real build costs from ~$25/month on Pro once it outgrows the entry token rung, and climbs from there with usage

Bolt bills by tokens, and the sticker price understates what a real build costs: it reloads your whole project as context on every message, so the entry Pro rung (10 million tokens for $25/month) burns down faster than the number implies. Budget for a top-up or a higher rung on a multi-session build, not the $25 floor. Lean on Bolt’s own token-saving tools (clearing context between features, pointing a prompt at specific files) to slow that burn.

* Read the storage line before you pick a plan, because this template stores video. The free Supabase tier includes 1 GB of file storage, 500 MB of database, and 5 GB of egress, and pauses a project after 1 week of inactivity. A handful of creator uploads and you are out. Pro, from $25/mo, moves that to 100 GB of storage and 250 GB of egress with daily backups kept for 7 days, and charges $0.0213 per GB of storage and $0.09 per GB of egress beyond it. Payouts and identity checks are billed per use by whoever you route them through, and are the two lines that grow with the marketplace rather than sitting flat.

Both columns end with the platform belonging to you, and with the hundredth brand costing no more to serve than the first. The only thing that differs is whose hours go into it: a developer you pay up front, or your own, spent describing what you want and reading back what arrives.

Prices and rates from supabase.com, developex.com and bolt.new, checked August 2026.

Plan first

Decide before you build

These six are business decisions rather than technical ones, and every one of them is cheap now and expensive once campaigns are running under the old answer. Write your answers down before the first prompt.

01

How you make money

A percentage of each campaign, a flat listing fee from brands, a subscription from either side, or a mix. It decides whether money passes through your platform at all: a take rate means you hold funds and pay them out, a listing fee means brands pay creators directly. The second is dramatically less to build.

02

What a licence actually grants

Write the default terms in plain sentences first: which channels, how long, whether the brand gets exclusivity, whether the creator may keep it in a portfolio, and what happens if a payment is reversed. Each is a column, and adding them later reopens campaigns already agreed under vaguer terms.

03

When money is released

On approval, on a timer after approval, or on a schedule you run twice a month. This is the most-argued-about part of any creator platform, so pick a rule you can state on the sign-up page. It also decides whether you need a holding balance or just a payout queue.

04

Who you check, and when

Verifying identity costs money per check and adds friction exactly when a creator is deciding whether you are worth the trouble. The common answer is to check nobody at sign-up and require it before the first withdrawal. The two flows differ, so pick one now.

05

How a disagreement ends

A brand rejects a submission the creator thinks is fine. Who decides, on what evidence, within how long, and is the outcome all-or-nothing or a partial payment? Marketplaces that leave this to email end up inventing it per case, which is slower and less defensible.

06

What you keep, and for how long

Rejected videos, expired licences, verification documents, and the accounts of creators who leave. Verification data especially is the kind to hold for as short a time as your obligations allow. Pick a retention period per category and build the deletion.

Approaches

Comparing your build options

Your starting point decides how much of the build never reaches a screen. Here is one marketplace three ways: by hand, on a UI kit that stops at the front end, or in Bolt, where the whole project runs in the browser tab you are describing it into.

~325 hrsBuilding by hand

Three products in a trench coat (a brand side, a creator side, and the admin console that referees them) plus the parts a marketplace cannot skip: holding money, proving who someone is, storing video, and recording who owns what once it is delivered.

~240 hrsGeneric UI starter kit

Dashboards, tables, and an upload widget, none of which know what a campaign is. Nothing in a starter kit tracks a licence, splits a payout, or stops a creator reading another creator’s earnings, and those are the parts that take the time.

~155 hrsBuilt with Bolt

Describe a piece and the running app rebuilds in the same tab. The preview is the real project, not a picture of it. Every working change commits itself back to your repository as you go.

Interactive calculator

Estimate your exact build timeframe

Not every marketplace needs all of this on day one. Plenty launch with campaigns, uploads, and manual bank transfers, then add wallets and identity checks once real money is moving. Untick what you are deferring and the estimate follows.

What your creator marketplace needs

Your estimate

155 hrs

start to finish

Based on the 7 of 7 features you’ve selected, plus ~39h of groundwork. Toggle any on the left to watch the number move, and open the groundwork row to untick what you have already, such as a database that is already running or going live if you are only building a mock-up for now.

A rough estimate, not a quote. Real time depends on how much you customize and how clean your data is.

Setting up your workspace

Let’s set up the tools you need

Bolt runs in the browser, but it can’t open a .zip file, so the only way in is a GitHub repository. Do that first, then create a Bolt account and a plan. Everything after that is a plain description of what you want.

1

GitHub account

Cost: Free

Bolt has no upload button for a folder or a .zip, and the only way to open a project is to import a repository, so a home for the code has to exist before Bolt does. Sign up and create a private repository, then push your project’s files to it.

Create a free GitHub account
2

Bolt account

Cost: Free

Sign up at bolt.new and connect the GitHub account from the step above. Once it’s linked, you pick a repository to import and land straight in a live preview, with nothing to install.

Sign up for Bolt
3

Bolt subscription

Cost: Free (1M tokens/mo), then from $25/month (Pro)

Free gives you 300,000 tokens a day, capped at 1 million a month, which is enough to try Bolt rather than to finish a real app. Pro starts at $25/month for 10 million tokens (unused ones roll over one extra month), but Bolt reloads your whole project as context on every message, so a multi-session build tends to burn past that entry rung faster than the sticker number implies.

Compare Bolt plans
4

Supabase (database)

Cost: Free to start

Where your project keeps its data. Bolt can wire up its own managed database with no extra account, or connect a Supabase project you already run yourself, and both are Supabase underneath. Ask for one the first time a screen needs to save something real, so you have nothing to set up before you get there.

Connect Supabase to Bolt

The GitHub step comes before Bolt exists for you at all. Everything after it happens inside the browser tab Bolt opens, with no install.

Step by step

Build your marketplace core, one prompt at a time

Step 01 happens on GitHub rather than in Bolt, because a repository is the only way a project gets in. After that it is all one tab: prompt, watch the preview rebuild, click through it, prompt again. Clear the context between the unrelated features below, because it keeps each message cheaper.

  1. 01

    Create the repository, then import it

    Bolt has no upload button, so the project has to exist on GitHub before Bolt can open it. Create a private repository, import it, then set the ground rules in your first message.

    PromptSet the project up after importing
    This project is a two-sided UGC marketplace. Set it up as React 18 + Vite + TypeScript with Tailwind, and keep this vocabulary consistent everywhere from here on: brands, campaigns, applications, submissions, licences, wallets, payouts. Two standing rules: we will add a database in the next step and every screen after that reads and writes real data rather than placeholders, and anything that changes a balance runs in a server-side function rather than in the browser.

    Keep the repository private. Bolt commits to it automatically as you build, and a project holding payout logic has no business being public.

  2. 02

    Talk the schema through in Plan Mode before it is written

    The data model is the one thing that is expensive to change later, and a marketplace model has two sides and a ledger in it. Use Plan Mode to agree it before Bolt writes a line.

    PromptDesign the marketplace data model
    Use Plan Mode for this one. I need the database for a two-sided UGC marketplace. Two sides, both hanging off an account: brands buying, creator profiles selling. Each campaign sits under a brand with a title, a brief, the deliverable format, the number of slots, a deadline, the rate paid per accepted submission, and its funded budget as a separate figure, moving through draft, active, paused, completed, cancelled. One creator against one campaign is an application. A submission belongs to an application, points at an uploaded video, and travels through draft, submitted, under review, approved, rejected, revision requested. Approval writes a licence stating channels, term, exclusivity, and the moment it was granted. The money is a wallet per creator holding a balance, backed by a transactions table where every credit and debit is a row, so the balance is recomputable rather than editable. Talk me through the plan first, then connect a database and build it.

    Plan Mode costs a message and can save a rebuild. A two-sided schema with money in it is exactly the change worth spending it on.

  3. 03

    Clear the context, then add sign-in and the three roles

    Permissions have nothing to do with the schema conversation you just had, so clear the context first. Bolt reloads the whole project each message, and a clean slate makes this one cheaper.

    PromptAdd auth and the three roles
    Add authentication and the role model. Email-and-password sign-up, login, logout, a persisted session, and a profile row per account. Then three roles (creator, brand manager, and admin) stored in their own table rather than on the user account, because anything on the account is editable by the person it belongs to, plus a helper the access rules can call without calling back into themselves. Then fork the sign-up: a creator completes a creator profile, a brand creates or joins a brand record, and each lands on their own dashboard rather than a shared one.

    Clearing the context between unrelated features is Bolt’s own advice, and it is the single easiest way to slow the token burn.

  4. 04

    Lock the tables down, the wallet hardest of all

    Point this prompt at the database layer specifically rather than letting it range over the whole project. Then read what it produces. This is the step that keeps one creator out of another’s earnings.

    PromptAdd row-level security and storage rules
    Working on the database layer only: turn on row-level security for brands, creator profiles, campaigns, applications, submissions, licences, wallets, and transactions, written through the role helper. Admins are unrestricted. Everything a brand manager can reach hangs off their own brand: its campaigns, and whatever applications and submissions came in against them. Everything a creator can reach is their own: profile, applications, submissions, wallet, transaction history, with active campaigns readable but never the other people who applied to them. Every insert and update needs an explicit ownership check. Wallets and transactions get no client-side update or delete at all, because a balance may only move inside a server-side function. Then apply the same rule to uploaded video: the submissions bucket must not be public, and a file must be readable only by the creator who uploaded it, the brand whose campaign it belongs to, and an admin. Show me how to verify one creator gets nothing back when querying another creator's transactions.

    Naming the layer keeps the prompt narrow, which Bolt charges you less for and which makes the result easier to check.

  5. 05

    Build each side, checking the preview between them

    Two prompts, and a look at the live preview after each. The preview is the running app, so what you click is what a creator on a phone would click.

    PromptBuild the creator side
    Build the creator half now: a board of open campaigns showing what each pays and how many slots remain, a campaign page with an apply action, and an upload for submitting video. The upload has to send large files in chunks so a lost connection resumes instead of starting again, show honest progress, and say clearly that the submission arrived. Assume a phone on poor wifi throughout.
    PromptBuild the brand side
    Then the brand half: creating and editing a campaign, an applications view for shortlisting and accepting creators, and a review screen that plays a submission back and offers approve, decline, or request a revision with a written reason that stays on the record for both sides to read later.
  6. 06
    Destination

    Pay the creator on approval, then publish

    Close the loop, click the whole thing through from both sides, then publish, to Bolt’s own hosting by default, or to Netlify if you would rather keep the domain there.

    PromptAdd licences, payouts, and publish
    Add what is left, all of it in server-side functions. Approving a submission must grant a licence on that campaign's terms and credit the creator's wallet with the rate in one transaction, so neither half lands without the other. Add a withdrawal request that queues a payout, and make the payout safe to run twice so a retry never pays anyone a second time. Give the admin side a finance view of what is owed, paid, and stuck. Then walk me through the full flow in the preview from both sides (post a campaign as a brand, apply and upload as a creator on a second account, request a revision, approve the next version, confirm the licence and the wallet both moved, request a withdrawal), and once it holds up, publish it.
Authentication & security

Keeping two sides apart, and the money straight

A marketplace holds three sensitive things at once: personal data about people who do not work for you, files somebody else owns the rights to, and balances that are not yours. Here is how each stays protected, in simple terms.

Proven logins for both sides

Sign-in comes from a system that has already been attacked for years and held, so you are not writing password handling yourself. Brands and creators use the same one. What differs is the profile behind the account and which half of the product it opens.

Three roles, and the rule each one bends

The template ships three roles: creator, brand manager, and admin. The interesting cases are the ones between them: a brand manager reads submissions to their own campaigns and nobody else’s, a creator reads their own earnings and never another creator’s, and an admin reaching into either of those leaves a trace.

Earnings are the data people forget to protect

It is obvious that a creator must not read another creator’s bank details. It is less obvious, and just as important, that they must not be able to total up another creator’s earnings from a campaign they can both see. Rate agreements between a brand and one creator are private to that pair.

Row-level security across every table

The template ships 180 row-level security policies, more than any other template here, because almost every table has three different right answers depending on who is asking. The database enforces that itself on every read and write, so a screen that forgets to filter still cannot show a brand another brand’s campaign.

Uploaded video needs the same rules as the rows

A submitted video is a file in storage, not a database row. Locking the submissions table down carefully while leaving the bucket readable by anyone holding a link is the version of this that looks finished and is not. Here the file is the actual thing of value, since a leaked link is an unlicensed copy.

Money moves on the server, always

Nothing about a balance, a payout, or a licence grant may be decided by code running in someone’s browser. Those belong in server-side functions the browser can only ask, never instruct. Each one should be safe to call twice, because networks retry and a payout that runs a second time has really paid twice.

Keys, and which ones are allowed out

Only a “publishable” key reaches the app, and it is designed to be seen. The database’s service key, your payment provider’s secret, the identity-check provider, the mail sender, and whichever AI model you use all stay on the server. A marketplace collects more of these than most apps, which is a good reason to route them through one place rather than five.

A ledger with no backup is a ledger you cannot defend

Nothing on the free tier is backed up, so a bad migration during the build takes everything with it. From $25/mo, Supabase Pro keeps a daily backup with 7 days of history behind it. Have that running before the first real balance exists, because “we think you were owed about $400” is not an answer anyone accepts.

PromptCheck who can see what
Review the access rules (row-level security policies) on every table. For each one, tell me in simple terms who can view, add, edit, and delete records, confirm that people can only reach their own data while the right roles can reach more, and flag anything left open that shouldn’t be.

Paste this into the chat before launch so Bolt checks nobody can see data they shouldn’t.

The one rule that matters: no secret key (database, payments, identity, mail, or AI) ever goes into the app or a public repo. If one does get out, treat it as compromised and rotate it the same day.

Workflow rules

What speeds the build, and what slows it

Speeds the build

  • Using Plan Mode to talk a change through before Bolt writes any code
  • Pointing a prompt at specific files or functions instead of the whole project
  • Clearing Bolt’s context between unrelated features, so each prompt has less to process
  • Checking the live preview after each change, since it’s the running app itself
  • Reading the automatic GitHub commits later as a real history, not just a backup

Slows the build

  • Asking for a whole app in one prompt instead of one screen or rule at a time
  • Leaving context loaded from a finished feature while starting an unrelated one
  • Editing the repository directly on GitHub and expecting Bolt to pick it up before its next 30-second check
  • Approving several prompts in a row without checking the live preview after each one
Before you open Bolt

GitHub: the way in, not just a backup

Bolt can’t open a .zip file, so the only way to start a project is to import a GitHub repository. Every other tool in this set treats GitHub as optional, but Bolt treats it as step one.

Why this comes before Bolt

There’s no upload button for a folder or a .zip. Opening a project in Bolt means pointing it at a repository that already exists on GitHub, so a home for the code has to exist first.

Create a free account, then a repository

Sign up, then create a new, private repository for your project and push your files to it. Keep it private, and never commit secret keys or passwords.

Create a free GitHub account

Import it into Bolt

On bolt.new, connect your GitHub account, choose the repository from the list, and click “Import repository”. The project opens straight into a live preview.

After that, it stays in sync on its own

Bolt commits each working change back to that repository automatically, and checks GitHub every 30 seconds for anything pushed from outside it. A commit is a snapshot with a short note, like “added the home page,” and Bolt writes those notes for you.

Version control and GitHub, Bolt docs

It’s also how you leave, if you ever want to

The repository Bolt is syncing is a real, ordinary codebase: clone it, hand it to someone else, or keep working on it directly on GitHub whenever you’re away from the browser tab.

Going live

Where to put the app once it works

The thing you actually deploy is small: a folder of plain files that almost any host will serve. The records, the accounts, and the uploaded video all live in Supabase instead (covered below), which is why the free-tier column here matters far less than the one further down.

HostBest forNotesFree tier
VercelOne-click deploysPoint it at the repository and it publishes itself, with a standard Vite project needing no configuration at all. Read the licence before you settle, though: Hobby is for personal, non-commercial use, and a platform that takes a cut of campaigns is commercial under any reading of that, which puts you on Pro at $20/user/mo.Pro from $20/user/mo (Hobby is non-commercial)
NetlifyDrag-and-drop or GitConnect the repository, or drag the built folder onto the page and be done. The shortest path between “it works locally” and a link you can send a brand this afternoon.Free tier
Cloudflare PagesCheapest at scaleSet it up once and every visitor is served from wherever Cloudflare is closest to them. Worth more attention here than on most projects, because a marketplace playing video previews back moves an order of magnitude more bandwidth than a dashboard does.Generous free tier
GitHub PagesFree Git-based hostingServes the site straight out of your GitHub project once one routing setting is in place. The catch: serving from a private repository is a paid GitHub feature, and code that decides who gets paid what does not belong in a public one, so count this as free only if you are genuinely happy to publish the source.Free from a public repo only
Firebase HostingTeams already on GoogleOne configuration step, and after that each release is a single command. Chiefly a fit when Google is already the tooling your team knows and adding a new vendor would need explaining.Free Spark tier
AWS Amplify HostingTeams already on AWSSet up from the AWS console with a single rewrite rule so deep links resolve. Mainly a fit when AWS is already the account your billing goes through.Free tier (build + hosting)
SurgePublish from the terminalA single command puts the built folder online, with no repository involved anywhere. Useful for putting a half-finished campaign board in front of a friendly brand for an opinion.Free - unlimited publishing
DigitalOcean App PlatformDigitalOcean usersHand it the project and it handles the build and the serving, next to whatever else you already have running in that account.Free - 3 static sites, 1 GB/mo transfer

All of them will serve this app, and the front end is the cheap half whichever you pick. What is worth checking before you commit: whether the plan you are on allows commercial use at all, since Vercel’s Hobby tier says plainly that it does not, and what happens to your bill once creators are uploading video and brands are streaming it back.

Database & backend

Keep your data in Supabase

Postgres for the records, auth for both sides, storage for uploaded video, and edge functions for anything touching money or a key. Whichever host serves the frontend above, all four run here.

ServiceBest forNotesFree tier
SupabaseData, auth, video, functionsPostgres database, authentication, file storage for submissions, and edge functions for payouts, licence grants, and moderation. Create a free project and your AI coding tool connects the app to it, then watch the storage line, because 1 GB does not go far in video.Free tier, then usage-based
AI workflows

Where AI genuinely helps a marketplace

Once the core runs, each of the four below is one more prompt. They share one server-side function rather than each wiring up its own, which is also what keeps your key out of the browser.

A first pass over everything uploaded

Every submission gets looked at before a human sees it, flagging the obvious problems: the wrong product, no product at all, unusable audio, something that should never have been uploaded. It sorts the queue rather than making the decision.

PromptA first pass over everything uploaded
Add a server-side function that runs on every new submission, sends the video’s frames and transcript to your ai function, and returns a moderation verdict with a confidence score and a short reason. Store it against the submission, sort the review queue by it, and never auto-reject on it alone. Anything flagged goes to a person with the reason attached.

Turning a rough brief into a usable one

Brands write briefs badly, and a vague brief guarantees submissions nobody can approve. This drafts a structured version from whatever they typed, which they then edit.

PromptTurning a rough brief into a usable one
Add a “Improve this brief” action on the campaign form that sends the brand’s draft to your ai function and returns a structured brief (what to show, what to say, what to avoid, deliverable format and length, and the usage rights being asked for), presented as an editable draft the brand confirms rather than something saved automatically.

Matching creators to a campaign

Ranks the creators who applied against what the brief actually asks for, using their past accepted work on your platform, so a brand with 80 applications has somewhere sensible to start.

PromptMatching creators to a campaign
Add a “Suggest a shortlist” action on the applications view that sends the campaign brief and each applicant’s profile and past accepted submissions to your ai function, and returns a ranked shortlist with one line of reasoning per creator. Show it as a suggested order the brand can ignore, and never hide unranked applicants.

Feedback a creator can actually act on

Turns a brand’s two-word rejection into specific, revisable notes. Fewer disputes start when the reason for a decline is concrete rather than “not what we wanted”.

PromptFeedback a creator can actually act on
When a brand requests a revision, add an action that sends the brief, the submission, and the brand’s note to your ai function and returns a clearer version of that feedback: specific, tied to the brief, and phrased as changes to make. Show it to the brand for approval before it reaches the creator, and keep both versions on the record.

Pick a lighter model for the high-volume prompts above and save a stronger one for wherever the reasoning actually matters. That is the same token-budget logic as the rest of this page, applied to the app’s own AI calls instead of the build itself. When Bolt flags a missing secret, add the key through its secrets settings instead of pasting it into the chat, and keep every AI feature behind one server-side function so there’s only one key to manage.

Ready-made option

Get a head start with our template

All of the above is written for someone starting with nothing, which you do not have to be. This same marketplace already exists as working code, and starting there turns most of that estimate into one afternoon spent setting a take rate and rewriting the licence terms in your own words.

UGC Marketplace

The exact creator marketplace this guide builds, packaged so you can open it, point it at your own backend, and make it yours from there. A marketplace that connects brands with creators and handles the messy parts in between. Brands post campaigns and review what comes in, creators apply and upload, and the platform takes care of licensing, payouts, identity checks, and disputes.

React 18ViteTypeScriptTailwind CSSSupabase
Out of the box

The key benefits of starting with a template

The parts nobody enjoys building are already done and running: the three-sided permission model, wallets and payouts, licence records, chunked video upload, moderation, and the admin console over all of it. That leaves your time for the terms and the take rate that make it your marketplace.

Building the core from scratch

~155 hrs

Opening the template, already built

~1 hr

~154 hrs of building you skip

The two figures measure deliberately different things. ~155 hrs is what it costs to build the core yourself. ~1 hr is how long it takes to open the finished one and aim it at your own database. Everything after that (your niche, your licence wording, your payout rule) costs the same from either starting point, so neither column claims it.

All three sides working from day one

Open a functional platform, not an empty folder. Brand onboarding, campaign creation, creator applications, uploads, review, licences, wallets, and a full admin console are ready to use.

Pre-configured access rules

Three roles and 180 row-level security policies work out of the box, so a brand reaches its own campaigns, a creator reaches their own earnings, and neither can see anything belonging to the other side.

The awkward machinery already built

Chunked uploads that resume, duplicate detection on submitted files, a payout queue with retries, licence records with an audit trail, and a moderation pipeline. Each one is a week you are not spending.

Clean structure your AI can safely customize

Typed end to end, grouped by feature, and commented where it matters. That pays off every time you ask for a change afterwards: a tool with an obvious pattern to copy produces work that fits, rather than a second way of doing the same thing.

Customer story

From founders who build on our templates

As an agency we live or die by clean handoffs. The code is structured well enough that we restyle, wire in the client’s data, and ship - no untangling someone else’s mess.
Matt GrahamMatt GrahamFounder & CEO, RapidDev
Got questions?

Common questions

No. Say what you need in ordinary language and your AI coding tool writes all of it: the tables, the rules about who may read which row, the rules covering uploaded video, and the server-side functions that move money and grant licences. Your part is creating a free Supabase project for it to point at, so that everything it writes lands somewhere you own rather than somewhere you rent.

You handle the record of it. A payment provider handles the movement. Your platform tracks what each campaign has funded, what each creator has earned, and what has been paid out, then asks a provider such as Stripe to make the transfer. That provider takes on the regulated parts (card processing, bank details, payout compliance) and charges per use rather than per month. Stripe’s Connect pricing publishes $2 per monthly active account and 0.25% + 25¢ per payout sent.

Before money leaves your platform, in practice yes, both because your payment provider will require it and because it is the cheapest fraud control you will ever add. It is a per-check cost rather than a build: Stripe Identity publishes $1.50 per document-and-selfie verification and 50¢ per ID number lookup, with the first 50 verifications free. Most marketplaces ask for it at first withdrawal rather than at sign-up, so it lands after someone has a reason to bother.

More than the free tier holds, sooner than you expect. Supabase’s free plan includes 1 GB of file storage and 5 GB of egress a month, which a handful of creator uploads will use. The Pro plan at $25/mo includes 100 GB of storage and 250 GB of egress, then charges $0.0213 per GB and $0.09 per GB beyond that. Plan for the egress as much as the storage: every brand watching a submission back is bandwidth.

Yes, and there are four worth having. Most marketplaces start with an automated first look at every upload, then add brief improvement, creator shortlisting, and clearer revision feedback. All four run through one small server-side function. Choose the model tier that suits each job, and the provider key stays on the server rather than anywhere the app can reach it.

No, and the guide is written so it cannot. Every AI feature here sorts, drafts, or summarises for a person who then decides. Nothing rejects a submission or releases a payment on its own. Keep the decision, and the record of who made it, with a human, because that record is what settles a dispute later.

The database, on every single query. Row-level security means each row carries the rule about who may read it, so a creator asking for the wallet table gets their own rows and nothing else, even if a screen forgets to filter. The same applies between brands: a campaign belongs to one brand, and the others cannot see it exists.

Whatever your licence terms say, which is exactly why they are a decision to make before you build rather than wording to add later. The template records a licence per approved submission (what the brand may do, for how long, and whether anyone else may use it too) along with when it was granted. That record is the thing you point at if either side later disagrees.

Nothing here is proprietary, so nothing can lock you in. Underneath it is plain PostgreSQL: a standard dump hands you every campaign, submission, licence, and transaction in a form any Postgres host will accept, and the uploaded files come out of storage the same way. Worth knowing for a second reason on this template: a creator asking you to delete their data is far easier to answer when you can see exactly where all of it sits.

Yes, and on this template it is worth doing early. Every host listed here connects a custom domain with free HTTPS in a few clicks, and a platform asking two strangers to trust it with a payment has a harder time of that from a subdomain belonging to somebody else.

No. You describe what you want in the chat and Bolt writes the code and shows it running in the same tab. The one extra step Bolt asks for that other browser tools don’t is a GitHub account, since that’s how a project gets in. The setup section above covers it.

Bolt only opens projects from a GitHub repository, and it offers no upload button for a folder. Once it’s imported, Bolt keeps the two in sync automatically, so the extra step up front replaces a manual export later.

Free resets daily, and a paid plan’s monthly allotment resets on your billing cycle (unused Pro tokens also roll over one extra month). If you hit the cap mid-session, what you’ve built stays exactly as it is. You wait for the reset or buy more tokens to keep going right away.

References

Sources checked August 2026
  1. 01Influencer Marketing Benchmark Report 2026 (in-house programme share). influencermarketinghub.com
  2. 02Pricing, Sharetribe. sharetribe.com
  3. 03Pricing, Insense. insense.pro
  4. 04Pricing, GRIN. grin.co
  5. 05Pricing, Trend. trend.io
  6. 06Connect pricing (active accounts, payout fees), Stripe. stripe.com
  7. 07Identity verification pricing, Stripe. stripe.com
  8. 08Pricing (Pro plan, storage, egress, backups), Supabase. supabase.com
  9. 09Pricing (transactional email), Resend. resend.com
  10. 10Web developer hourly rates 2026 (freelance and agency benchmarks). developex.com
  11. 11Row Level Security, Supabase docs. supabase.com
  12. 12Storage access control, Supabase docs. supabase.com
  13. 13Pricing (Free, Pro, Teams), Bolt. bolt.new
  14. 14Version control and GitHub, Bolt docs. support.bolt.new
  15. 15Connect Supabase, Bolt docs. support.bolt.new
  16. 16What is Bolt Cloud?, Bolt docs. support.bolt.new
  17. 17Netlify deployment (and Bolt hosting by default), Bolt docs. support.bolt.new
  18. 18Maximizing token efficiency, Bolt docs. support.bolt.new

This guide is general information, and not legal, tax, or financial advice. Holding funds on behalf of others, verifying identity, licensing content, and paying creators across borders are regulated differently depending on where you and your users are, so take proper advice before you take a payment. Third-party prices, plan limits, and market rates are quoted from the sources above and were last checked on the date shown. Vendors change them without notice, so confirm before you budget. Build hours and the cost estimates derived from them are our own estimates, not quotes. Bolt is a product of StackBlitz. Verify current capabilities and pricing before relying on them.