How to build a rental booking platform with Bolt
Build a rental marketplace inside a browser tab that only opens once your code has a home on GitHub. From there, guests get a search and checkout flow, hosts get their own listings and payouts, and an admin panel catches whatever needs a human call. Describe each piece and Bolt writes the backend, auth, and UI behind it while the live preview updates in place.
Bolt
$ This repo is imported and running. Now build a rental marketplace on top of it: guests search and book stays, hosts run their own listings and payouts, and I catch disputes from an admin panel. Every table needs its own row-level security, so a role never reaches data outside it.
- Repository imported and running
- Bookings and payouts locked to each role
- Ready for you to check
What a rental booking platform actually is
A rental booking platform, the shape Airbnb popularized, is where guests search and book a stay, hosts list a property and get paid for it, and someone in the middle keeps the whole marketplace honest.
Before a platform like this, a host runs bookings over email, a shared calendar, and a bank transfer, so double-bookings happen, payouts get delayed, and disputes have nowhere to go. A rental marketplace pulls all three sides into one system.
The genuinely hard parts are the availability calendar, which can never double-book a night, and the booking-and-payment lifecycle that holds a guest’s money, confirms the stay, and eventually pays the host their share. The listing pages are the easy part. Get those two right and the rest of the marketplace is mostly screens on top.
Three sides, one system
Guests, hosts, and admin all work off the same data: a booking a guest makes is the same row a host gets paid against, and the one an admin sees if something goes wrong.
A calendar that can’t lie
Availability has to be enforced in the database, where it can’t be gamed, rather than hidden in the UI, or two guests can end up confirmed for the same night.
Money that moves twice
A booking payment is held, confirmed, and then split into a host payout and a platform commission. Model that lifecycle once, and every screen that touches money reads from the same truth.
A market moving fast
$219.9B
in global short-term rental bookings in 2025, growing at a 5.3% clip toward $270.6B by 2029, per Phocuswright’s 2026 market-sizing report.
Phocuswright Research, 2026 (Global Short-Term Rentals 2026 report) · checked August 2026
The parts every rental platform is built from
Before you build, it helps to know the pieces. Almost every rental marketplace comes down to these six. Each one is something you can ask your AI coding tool to build or extend in plain words.
Listings and search
Hosts create listings with photos, amenities, and pricing. Guests search and filter by location, dates, and price. Everything else in the marketplace hangs off a listing.
An availability calendar that can’t double-book
Each listing’s calendar blocks a date the moment it’s booked, so two guests can never be confirmed for the same night.
The booking and payment lifecycle
A guest requests dates, pays, and gets a confirmation. The booking moves through hold, confirmed, completed, or cancelled without anyone editing a spreadsheet.
Host payouts and commission
The platform takes its cut and pays the host the rest, on a schedule the host can see, rather than a manual transfer you run yourself.
Reviews and messaging
Guests and hosts message each other about a booking and leave reviews afterward, so trust builds the way it does on any real marketplace.
Admin moderation and disputes
An admin has to step in when a listing is misrepresented or a booking goes wrong. Moderation tools and a dispute queue are what make that possible.
Own your marketplace or rent the software forever
Most people building a rental business reach for hosted booking software, then watch the bill climb with every listing they add. Owning your platform flips that. Here’s the trade-off, side by side.
Build your own
Your own rental platform is a one-time build you shape exactly to how you run bookings, and with an AI coding tool writing the plumbing, that build is days, not a quarter.
- Pay to build it once, then only your own infra bills: no per-listing or per-booking fee
- A booking flow, cancellation policy, and payout split that match exactly how you run stays
- Add unlimited listings and hosts without jumping to a bigger tier
- Keep 100% of your booking revenue: no revenue-share cut to a vendor
- Add your own AI features on the model you choose: guest replies, pricing suggestions, listing copy
- Full ownership of the code and data: export anytime, zero lock-in
Buy hosted booking software
Lodgify · Guesty · Hostaway · SharetribeHosted booking software, or a no-code marketplace builder, is faster to switch on, but the bill scales with every property, listing, or transaction you add, and you work inside their calendar and payout rules.
- Live in minutes: sign up and start, nothing to build or host
- Channel sync to Airbnb and Booking.com on Lodgify, Guesty, and Hostaway, but not on Sharetribe, which is its own marketplace rather than a channel manager
- Support and onboarding included
- Per-property, per-listing, per-reservation, or (on Sharetribe) a subscription plus per-transaction fees past a free quota. Every shape climbs as you grow
- Their booking flow, cancellation rules, and payout schedule: not yours to change
- Deep customization is capped or unavailable
- Your guest and payout data live on their servers
Basic and Starter are hard-capped at 1-2 properties, so a real multi-property operator lands on Professional or Ultimate, from $42/mo (1 property, annual) up to $270/mo (10 properties, Ultimate, monthly). Lodgify’s own FAQ, verbatim: “No, there’s no setup fee when joining Lodgify. Free onboarding is included,” and “No. Lodgify does not take a cut of your bookings. You pay a flat subscription fee and keep 100% of your rental income.”
lodgify.com · checked August 2026
Lite carries a flat 1% per-reservation fee on top of the subscription. Guesty’s page doesn’t say whether that continues once you’re quoted into Pro. Our three-sided marketplace competes with a multi-listing operation, which is Guesty’s Pro tier: no public price, quote only.
guesty.com · checked August 2026
Hostaway’s pricing page is a lead-gen funnel: it asks how many listings you manage, then asks for contact details to “get a free quote.” No price is published anywhere on the page, at any tier.
hostaway.com · checked August 2026
Build is the test-only plan, so a live marketplace starts at Lite. Lite has no custom domain, which is why Pro is the tier most marketplaces actually launch on: it adds a custom domain and third-party integrations, and includes 250 free transactions a month, then $0.19 or less per transaction beyond that. The page publishes yearly rates only, so no month-to-month figure is quoted here. Payment processing is not included: Sharetribe’s own FAQ says, verbatim, “Typically, this is around 1.5-3% of the transaction size,” charged by Stripe on top. Setup fee: none. The FAQ states, verbatim, “All of Sharetribe’s fees are outlined on this page.”
sharetribe.com · checked September 2026
Rule of thumb: if you run more than a handful of properties and want the booking flow, cancellation policy, and payout split to match exactly how you operate, building your own pays for itself within months of what a per-listing subscription would have charged. If you need built-in OTA channel sync today and would rather not touch a codebase, buy, then revisit once the bill outgrows the value.
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:
Prompt
Describe the screen or rule you want, in plain language.
Preview
Watch the running app rebuild itself in the same tab.
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.
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.
Pay a developer, or do it with AI
Two ways to get the same app built: pay a developer for their hours, or spend your own describing it to an AI coding tool. Here is what each one costs to build, and what it costs to keep running once it is live.
Hire a developer
Custom build, from scratch- Developer
- ~$15k-$58k
- Supabase (backend)
- Free tier · $25/mo (Pro plan)*
- Hosting
- $0 free tier
- Build time
- ~290 hrs of their work
~$15k-$58k to build, then ~$25/mo after launch
That range is our ~290-hour estimate priced at market dev rates: North American freelance rates run about $40-$150/hr depending on seniority, and agencies add another 20-40% on top, so roughly $50/hr at the low end up to ~$200/hr for an agency, all spent just to get listings, bookings, payouts, and admin moderation working before launch. After that, your only ongoing costs are Supabase and hosting.
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
- ~139 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.
* Supabase is free while you build and for light use, though projects pause after 1 week of inactivity, and the free tier caps you at 500 MB of database and 2 active projects. The Pro plan, from $25/mo, keeps your database running around the clock for real guests and hosts.
Either way you own the code outright, so there is no per-listing subscription and every new host account costs you nothing. The one cost neither column shows is the payment processor’s fee on each booking, because a guest’s money has to reach a host somehow. That fee is a percentage of what you take rather than a monthly bill, so it grows with your bookings and not with your listings. The payments section below prices the three usual ways to move it.
Prices and rates from supabase.com, developex.com and bolt.new, checked August 2026.
Decide before you build
Get these right before you start building, and the rest is smooth sailing. Each is a decision to make, not code to write.
What a listing is
Every booking starts here: title, description, location, photos, amenities, base nightly price, and any extra fees (cleaning, pet, weekend). Decide what a listing needs before you write the schema, because it is the one table everything else links to.
Availability and pricing model
Price nightly, weekly, or both. Add a minimum-stay rule, blackout dates a host blocks by hand, and whether price varies by season or day of week. Settle this early, because it shapes the calendar table and the booking form both.
Who takes payment, and how payouts split
Decide whether your platform account takes the guest’s payment and pays the host their share afterward, or the host’s own connected account takes it directly. Either way, settle your commission percentage before you build the payout logic, not after.
Three-sided roles
Guest, host, and admin, plus whether one person can be both a guest and a host on the same account, which is the normal case on a real marketplace. Decide this before you write the access rules, because it changes what a role even means.
Cancellation policy
Flexible, moderate, or strict, plus how much of the guest’s payment gets refunded at each cutoff. This is a business decision as much as a technical one, and it drives the refund logic in the payment lifecycle.
Which payment provider
Stripe Connect is the standard choice for a marketplace that splits one payment between the platform and a host, because it is built for exactly that. Decide this up front, because it shapes the payments schema and the payout screens both.
Comparing your build options
What you start from decides how many of these hours go to plumbing nobody sees, versus the marketplace guests and hosts actually use. Here’s the same build, three ways: by hand, with a UI kit that stops at the front end, or inside Bolt, working on a GitHub-connected project the whole way through with the live preview always running.
Weeks of setup (three sets of accounts, an availability calendar, payments, and payouts) before writing your first real feature. Full-stack complexity, entirely on you.
You get front-end screens for guests, hosts, and admin, but nothing behind them: no database, no booking logic, no payouts. The entire backend is still yours to build.
Import the repository and describe what’s missing. It writes the backend, auth, and UI live in the same browser tab GitHub just opened. The same list of tasks, done without installing anything.
Estimate your exact build timeframe
Tick the features your marketplace actually needs and get an instant, realistic estimate tailored to your exact scope, so you stop guessing at a timeline.
Your estimate
139 hrs
start to finish
Based on the 6 of 6 features you’ve selected, plus ~34h 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.
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.
GitHub account
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 accountBolt account
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 BoltBolt subscription
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 plansSupabase (database)
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 BoltThe GitHub step comes before Bolt exists for you at all. Everything after it happens inside the browser tab Bolt opens, with no install.
Build your marketplace core, one prompt at a time
Bolt can’t open a folder or a .zip, so the steps below start on GitHub before Bolt even exists for you. Everything after that happens in the one browser tab it opens. Send one prompt, check the live preview, then move to the next.
- 01
Push an empty repo to GitHub, then import it into Bolt
Bolt has no upload button for a folder or a .zip, so before anything else exists, create a private GitHub repository and import it. Bolt scaffolds the project inside it and starts committing back on its own from here.
PromptImport and scaffold the projectI just imported an empty repository. Set up a React 18 + Vite + TypeScript project here with Tailwind and the Supabase JS client. Read VITE_SUPABASE_URL and the publishable key from .env, confirm .env is already in .gitignore so neither value ever reaches GitHub, and write a short notes file describing the rental-marketplace stack so later prompts stay consistent. Commit it back to the repository once it runs.
Every other tool in this set can start from a blank chat, but Bolt needs this repository to exist first.
- 02
Build the two tables a marketplace can’t run without
Listings and a calendar that can’t double-book them are what every later screen depends on. Watch the live preview rebuild as Bolt writes the migration.
PromptSet up listings and availabilityAsk for two migrations. First, a listings table: title, description, location, amenities, and a base nightly price live on the row itself, each one owned by a host account, with photos going into Storage instead of the table so a listing with fifty photos doesn’t bloat the row. Second, a table that records which nights are already booked on a given listing, with a constraint that blocks a new row from overlapping a night that’s already confirmed, so two guests booking the same night fails in the database itself, not in whichever screen happens to check first. Show me the SQL, then apply it and regenerate the TypeScript types.
Put this constraint in the migration, not in a form’s validation. A form can be skipped by a different screen. The database can’t.
- 03
Add sign-in, then a role an account can hold more than one of
Layer sign-up and login on top, then a guest/host/admin role model that doesn’t assume a person is only ever one of the three.
PromptAdd auth and rolesWire in Supabase Auth first. Email and password is enough to start, covering sign-up, login, logout, a session that survives a refresh, and a useUser hook the rest of the app can read from. On top of that, this marketplace needs three roles rather than one flag on the account: an app_role enum for 'guest', 'host', and 'admin', and a user_roles table connecting a user_id to a role, allowing more than one row per user since a host is often a guest on someone else’s listing too. Add a SECURITY DEFINER function, has_role(_user_id uuid, _role app_role), that reads from user_roles so the next prompt’s policies can call it without recursing into itself. One migration for the whole thing, committed once it’s applied.
A role stored on the user’s own account is one that account could edit, which is why has_role reads from a table of its own.
- 04
Use Plan Mode to lock down bookings and payouts
This prompt reaches into both money and personal data, so talk the plan through with Bolt before any code exists, and test it against a second account once it does.
PromptPlan, then add bookings, payouts, and RLSIn Plan Mode: I need a bookings table (listing plus guest, with dates, status, and total price) and a payouts table (host plus booking, with the platform’s commission split out), and row-level security across listings, bookings, and payouts so a guest reaches only their own bookings, a host reaches only their own listings and payouts (checked with has_role), and an admin reaches everything. Walk me through the policies, including an explicit WITH CHECK on every insert and update, before you write any SQL. Once I approve the plan, apply it and show me how to verify that a second guest can’t read the first guest’s bookings.
Approving a plan isn’t the same as testing it. Try to break the policy with a second account before you trust it.
- 05
Prompt the search, checkout, host, and admin screens into place
Point Bolt at the tables from the last three steps and build the screens that actually use them, checking the live preview after each one instead of approving several prompts in a row.
PromptBuild the screensNow the screens: on the guest side, a listings page with filters for location, dates, and price, feeding into a listing page with the live calendar, then a Stripe checkout that turns a selection into a real booking. On the host side, one dashboard covering their listings, their bookings, and what they’re owed. On the admin side, another dashboard covering every listing, open disputes, and the transaction history behind them. Wire each one to the tables from the last three steps rather than starting fresh. Keep the data access in typed hooks rather than scattered through components.
- 06Destination
Layer in reviews and messaging, then run the full flow in the preview
Two more tables finish the marketplace, reviews and a booking-scoped inbox, then click through the whole flow in the live preview and fix whatever’s off before you call it done.
PromptAdd reviews, messaging, and testTwo tables left: reviews, which shouldn’t show up until both the guest and the host have actually left one for a finished stay, and a messaging thread scoped to a single booking rather than one long inbox between two people. Add both, then run the whole flow in the live preview (search for a stay, book it, pay, message the host, leave a review after checkout), then fix whatever breaks.
Built-in security for guests, hosts, and payouts
Security isn’t an afterthought when a booking moves someone’s payment and personal details. Here is how your data stays protected, in simple terms, and the core rule that keeps it secure.
Proven logins, three ways in
Guests, hosts, and admins all sign in through the same battle-tested system. You don’t build login security yourself. Email and password works out of the box. Social sign-in is a small add.
Overlapping user roles
A guest books, a host lists and gets paid, an admin moderates the whole marketplace. On a real platform, the same person is often a guest on one booking and a host on another. Decide the access rules with that overlap in mind, not as three separate user types.
Guest data and payout details stay protected
A booking platform holds two kinds of data that matter more than most: guest personal details tied to a real stay, and a host’s bank or payout information. Both need the same row-level protection as everything else. Neither should be reachable by a role that has no reason to see it.
Row-level security across a three-sided model
The template ships 121 row-level security policies precisely because three roles reaching the same tables from different angles is harder to get right than two: a guest reaches their own bookings, a host reaches their own listings and payouts, an admin reaches everything, and the database enforces all three at once.
Administrative keys stay protected
Your app only carries a “public” key that’s safe to share. The keys that can bypass access rules or move money live on the server only, never in the app or a public code repo: the database’s service key and the payment provider’s secret key.
Automatic daily backups on Pro
Daily backups are a paid feature: the free tier has none, so while you are building, your database is the only copy. Supabase Pro (from $25/mo) adds a daily backup with 7 days of history. Move to Pro before real bookings and real payouts depend on that data.
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: never put a secret key, database or payment provider, in the app or a public repo. If one ever leaks, reset it right away.
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
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 accountImport 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 docsIt’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.
Choosing the right hosting for your rental platform
The site is just a bundle of ready-made files, so it runs on almost any hosting you like, free options included. Your data and logins live separately in Supabase (more on that below).
| Host | Best for | Notes | Free tier |
|---|---|---|---|
| Vercel | One-click deploys | Connect your project and it publishes itself. Standard Vite setup, so it just works. Note the free Hobby tier is for personal, non-commercial projects only: a live rental marketplace needs Pro, from $20/user/mo. | Pro from $20/user/mo (Hobby is non-commercial) |
| Netlify | Drag-and-drop or Git | Connect your project or drag the built folder in. Live in a couple of clicks. | Free tier |
| Cloudflare Pages | Cheapest at scale | Connect your project once for fast, worldwide delivery on Cloudflare’s network. | Generous free tier |
| GitHub Pages | Free Git-based hosting | Publishes straight from your GitHub project. Needs one small tweak so page links work. Catch: publishing from a private repository needs a paid GitHub plan, and this guide tells you to keep yours private, so this one is free only if you make the repo public, which for a marketplace handling real bookings and payouts you should not. | Free from a public repo only |
| Firebase Hosting | Simple setup, Google stack | A short one-time setup, then a single publish command. | Free Spark tier |
| AWS Amplify Hosting | Teams already on AWS | Connect your project in the AWS console. A one-time routing setting makes page links work. | Free tier (build + hosting) |
| Surge | Publish from the terminal | Publish with a single command. No repository needed. | Free - unlimited publishing |
| DigitalOcean App Platform | DigitalOcean users | Connect your project and it builds and hosts the site for you. | Free - 3 static sites, 1 GB/mo transfer |
Any of these works. One thing to check before you settle: a free tier is not automatically free for *business* use. Vercel’s Hobby tier is the strictest here, personal projects only, so a marketplace handling real guests and hosts belongs on a paid plan. Read the plan terms for the host you pick, not just the price.
Keep your data in Supabase
Your data and backend live in Supabase: Postgres, auth, and edge functions. Whichever frontend host you pick above, everything runs here.
| Service | Best for | Notes | Free tier |
|---|---|---|---|
| Supabase | Data, auth, functions | Postgres database, authentication, and edge functions. Create a free project and your AI coding tool connects the app to it. | Free tier, then usage-based |
Choosing your payment rail
Taking the payment yourself is a decision rather than a given. A booking-request site, where the app confirms the stay and the host is paid by transfer or on arrival, costs nothing to run and is how a good many small rental sites start. Taking the money inside the app means one of the three below, and what decides between them is the split: your platform collects from a guest and pays a host out of the same charge.
Built for the exact split a marketplace makes, which is why the payouts table in the build steps above holds the platform’s commission apart from the host’s share. Two lines sit on top of the card rate and both are easy to miss. A host only counts as an active account in a month you actually send money to their bank, and every payout carries a fee of its own, so paying each host once a month costs noticeably less than paying them after every stay.
stripe.com · checked September 2026
The most expensive of the three per booking, and the one a first-time guest booking a stranger’s home is most likely to recognise. On a $900 stay that is about $32 against $26 on the row above, before the international line, which a rental marketplace runs into far more often than a shop does. Worth offering beside a card rather than instead of one.
paypal.com · checked September 2026
The interchange-plus shape, where you pay the card networks what they actually charge and Adyen its margin on top. That beats a flat percentage once enough bookings run through it for the difference to be worth the setup. Read the caveat on their own page before you budget against it: Adyen calls the published figures indicative and asks you to get in touch, so this is the start of a conversation rather than a price you can sign up to this afternoon.
adyen.com · checked September 2026
Work out one number before you connect anything: the fee on a single booking, times the bookings you expect in a year. Three hundred stays at $900 costs roughly $7,900 a year on the first row and roughly $9,600 on the second, for the same money arriving, and paying twenty hosts once a month adds about $480 in account fees on top of the first. Connecting nothing is still a real answer: the calendar, the booking and the commission you record are all correct whether or not a card is ever charged, and a site that introduces guests to hosts and lets them settle up directly pays none of this.
Power your marketplace with native AI automations
Once the core marketplace works, AI is a few more prompts. Each one hangs off a small server-side function that talks to the model, so your key stays there rather than in the app.
Guest-message drafting
Suggests a reply to an incoming guest message from the booking details and the conversation so far. The host reviews and sends, rather than staring at a blank box.
Add a "Suggest a reply" button on the host inbox that sends the guest’s message, the booking details, and the last few messages in the thread to your ai function, and returns a short, editable reply draft the host can edit before sending.
Dynamic pricing suggestions
Looks at a listing’s upcoming occupancy and how far out a date is, and suggests a nightly price for open dates, so hosts aren’t guessing or leaving money on the table.
Add a "Suggested price" panel on the host’s calendar that sends the listing’s upcoming occupancy, day of week, and how far out the date is to your ai function, and returns a suggested nightly rate with a one-line reason the host can accept or ignore.
Review summarisation
Rolls a listing’s reviews into a short summary of what guests consistently like and flag, so a new guest doesn’t have to read fifty reviews to get the gist.
Add a "Summary" block on the listing page that sends its most recent reviews to your ai function and returns a short summary of recurring praise and complaints, refreshed whenever a new review is added.
Listing-description generation
Turns a host’s bullet points about the property into a polished listing description, so a first draft doesn’t stall the listing going live.
Add a "Generate description" action on the listing editor that sends the property’s type, amenities, and the host’s rough notes to your ai function and returns a polished draft description the host can edit before publishing.
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.
Get a head start with our template
The guide above shows how to build this rental platform from scratch. Prefer to skip the boilerplate? Launch with our ready-made template and spend your time customizing, not scaffolding.
Rental Booking Platform
The exact rental marketplace this guide builds, packaged so you can open it, point it at your own backend, and make it yours from there. A full rental booking platform in the spirit of Airbnb, where guests book stays, hosts manage listings and payouts, and you run the whole thing from an admin panel. It hands you the entire three-sided business instead of just a listings page.
The key benefits of starting with a template
The hard, invisible parts are already built and working: listings, availability, payments, payouts, and role-based access. Your time goes straight to what makes the platform yours.
Building the core from scratch
~139 hrs
Opening the template, already built
~1 hr
~138 hrs of building you skip
These measure different things, which is the point: ~139 hrs is what it takes to build the core yourself, and ~1 hr is how long the template takes to open and connect, because that core already exists. Customizing it to your guests, hosts, and brand is time you spend either way, so it is not counted on either side.
A working marketplace from day one
Open a functional app, not an empty folder. Listings, bookings, payouts, and dashboards for all three roles are ready to go.
Pre-configured security and access
Authentication, three-sided roles, and 121 row-level security policies work out of the box, so guests, hosts, and admins each see only what they should.
A polished UI out of the box
Search, listing, checkout, host, and admin screens come already designed, clean and responsive on any device, so it looks like a finished product before you change a thing.
Clean code that’s easy to extend
Typed, well-organized, and documented, so every change you ask your AI coding tool for stays consistent and the app is a pleasure to grow.
From founders who build on our templates
Building a complex marketplace with separate permissions normally means sinking massive effort into infrastructure, disputes, and payment flows. Since the template handled all the heavy lifting upfront, we jumped straight into perfecting the brand identity and map search.
Matt GrahamFounder & CEO, RapidDevCommon questions
No. Your AI coding tool writes the backend on Supabase for you from plain-language prompts: listings, bookings, payouts, and access rules. You create your own free Supabase project, and it wires the app to it, so everything runs on your own data.
Yes, and on a real marketplace they usually are. Roles are assigned per account rather than baked into a single user type, so one person can book a stay as a guest and list their own property as a host.
Yes. Add a small server-side ai function for guest-message drafting, dynamic pricing suggestions, review summaries, or listing-description generation. Pick the tier that fits the job, a fast model for high-volume tasks or a stronger one for judgement calls, and keep your API key on the server, never in the app.
Only the third-party services you connect with your own accounts: mainly Supabase for the backend, a payment provider, and a host for the site. Supabase and hosting both start free. For an always-on marketplace with real bookings, Supabase Pro starts at $25/mo (free projects pause after 1 week of inactivity). You pay those providers directly.
Only the people a role allows: a guest sees their own bookings, a host sees their own listings and payouts, an admin sees everything for moderation. The app runs on your own Supabase project, so for GDPR purposes you are the sole controller of that data.
Through row-level security. Only the public key ever ships to the browser, and every table is protected by Postgres row-level security, so each role can only touch the rows it is allowed to. Secret keys, the database’s and the payment provider’s, stay on the server.
No lock-in. Everything lives in a standard PostgreSQL database, so you can export it all with standard Postgres tools and move to any Postgres host whenever you want.
Yes. Whichever host you pick for the frontend lets you connect a custom domain with free HTTPS in a few clicks.
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- 01Global short-term rental bookings reached $219.9B in 2025, PhocusWire (Phocuswright Research). phocuswire.com
- 02Pricing, Lodgify. lodgify.com
- 03Pricing, Guesty. guesty.com
- 04Pricing, Hostaway. hostaway.com
- 05Pricing, Sharetribe. sharetribe.com
- 06Pricing (Pro plan, free-tier limits), Supabase. supabase.com
- 07Web developer hourly rates 2026 (freelance and agency benchmarks). developex.com
- 08Row Level Security, Supabase docs. supabase.com
- 09Connect pricing (per-account and payout fees), Stripe. stripe.com
- 10Merchant fees (PayPal Checkout, US), PayPal. paypal.com
- 11Pricing (interchange-plus card rates), Adyen. adyen.com
- 12Pricing (Free, Pro, Teams), Bolt. bolt.new
- 13Version control and GitHub, Bolt docs. support.bolt.new
- 14Connect Supabase, Bolt docs. support.bolt.new
- 15What is Bolt Cloud?, Bolt docs. support.bolt.new
- 16Netlify deployment (and Bolt hosting by default), Bolt docs. support.bolt.new
- 17Maximizing token efficiency, Bolt docs. support.bolt.new
This guide is general information. 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. Testimonials are from named customers. The integration figures are illustrative. Bolt is a product of StackBlitz. Verify current capabilities and pricing before relying on them.