---
title: "Deploy Payload on StackBlaze"
description: "Deploy Payload 3 with its website starter, managed Postgres, a volume for media, and email for password resets and form notifications. Editors work in the Payload admin with live preview; the site and the REST and GraphQL APIs serve the content from your own URL. You pay for compute, not per seat."
category: "cms, development, data"
url: https://www.stackblaze.com/templates/payload
---

# Deploy Payload

Deploy Payload 3 with its website starter, managed Postgres, a volume for media, and email for password resets and form notifications. Editors work in the Payload admin with live preview; the site and the REST and GraphQL APIs serve the content from your own URL. You pay for compute, not per seat.

**[Deploy Payload on StackBlaze](https://dashboard.stackblaze.com/new/template/payload)**

## This stack

- **Payload**: Web service
- **PostgreSQL**: managed database · TCP:5432
- **Email**: platform add-on

## What you get

- **Admin with live preview**: Edit pages and posts in the Payload admin with the real page shown beside the editor.
- **A website from day one**: The starter ships a Next.js site with pages, posts, categories, search and a contact form, served at your URL.
- **Drafts and scheduling**: Save drafts, keep versions, and schedule a page or post to publish later. The job queue runs inside the app.
- **REST and GraphQL**: Every collection is served at /api/<collection> and through /api/graphql, for any other frontend or app.
- **Managed Postgres**: Content, users and versions live in an attached Postgres database. Migrations run on every start.
- **Media and email included**: Uploads go to a 10 GB volume that survives redeploys. Password resets and form emails go out through the Email add-on.

## After you deploy

1. **Create the first admin**: Open the public URL at /admin. The first person to fill in the form becomes the admin, so do it right after the deploy.
2. **Seed or start writing**: On an empty site, Seed your database on the admin dashboard loads demo pages and posts. Or create a post and press Publish.
3. **See it on the site**: Open the public URL: published pages and posts show at once. Read the same content from /api/posts or /api/graphql.

## How it is wired

- **Postgres holds the content**: Pages, posts, users, versions and scheduled jobs live in the attached database. Redeploy and everything is still there.
- **Media sits on a volume**: Uploads and their resized copies are stored on a 10 GB volume at /app/public/media and served by Payload.
- **Secrets are generated once**: PAYLOAD_SECRET and PREVIEW_SECRET are unique to this deploy. Keep PAYLOAD_SECRET: changing it signs everyone out and breaks saved API keys.
- **Email through the add-on**: Password resets and contact form notifications use the Email add-on over SMTP. No mail provider account needed.

## Common questions

### How do I sign in after deploy?

Open the public URL at /admin and create the first user. Payload has no default account, so whoever does this first owns the admin. Add more users under Users.

### How do I change the collections?

In Payload, collections and config are code. Edit the template’s Payload project (or your own create-payload-app project), create a migration with npm run payload migrate:create, build the image with the included Dockerfile, and point this app at it. Migrations run on the next start.

### What does Seed your database do?

It loads Payload’s demo pages, posts, images and contact form. It replaces existing content, so use it only on a new site.

### Does it send email?

Yes. Password resets and contact form notifications go out through the Email add-on, from your app’s own address. It is for transactional mail, not newsletters.

### Where are uploads stored?

On the app’s 10 GB volume, so they survive redeploys and restarts. Payload serves them at /api/media/file on your hostname.

### Can I use my own domain?

Yes. Attach a custom domain from the dashboard, then set NEXT_PUBLIC_SERVER_URL to it so links and the sitemap use it.

### What does it cost?

You pay for the compute, storage and bandwidth Payload and Postgres use, plus emails sent. There is no per seat or per API call charge.


Source: https://github.com/payloadcms/payload
