A deployment is the result of building your Project and making it available through a live URL.
This section contains information about making, managing, and understanding the behavior of deployments.
When using these integrations, every push to a branch will provide you with a preview deployment to view your changes.
There are many use cases for Deploy Hooks, for example, rebuilding your site to reflect changes in a Headless CMS or scheduling deployments with Cron Jobs.
To create a Deploy Hook, visit the settings page of your Project where you can choose the branch to deploy when the HTTP endpoint receives a POST request.
You can find more information about Deploy Hooks in the documentation.
To make a preview deployment, use the
To make a production deployment, use the
vercel --prod command:
The Vercel API can be used to make deployments by making an HTTP POST request to the relevant endpoint, including the files you wish to deploy as the body.
You can find more information about the Vercel API in the API Reference.
There are two types of deployment on the Vercel platform: preview and production.
Preview deployments are the default for all deployments. Each time you push to a branch or make a deployment using the
vercel command, this is a preview deployment.
By making a preview deployment, the preview URL will be updated to reflect that of the latest deployment made.
If you request a preview URL, the
X-Robots-Tag HTTP header will be set as
noindex. This ensures that preview URLs will not be indexed by search engines such as Google. The only exception to this behavior exists when a custom domain is assigned to a preview branch. A custom domain assigned to a preview deployment will not set the the
X-Robots-Tag header with the value
noindex. Learn more about
X-Robots-Tag by visiting Google Search Reference.
Production deployments are made in two different circumstances. Each time you merge to the Production Branch (commonly
main) or make a deployment using the
vercel --prod command, this is a production deployment.
By making a production deployment, the production domain(s) will be updated to reflect that of the latest deployment.
The production domain(s) are defined from the Domains tab of a Project on the Vercel Dashboard.
The Vercel Dashboard is the easiest way for you to manage your deployments.
Through the Vercel Dashboard, you can find a variety of settings; including a Domains tab where you can add custom domains to your Project.
There are three types of logs available, Build Time, Runtime, and Edge Network.
Build Time logs are generated during the build step. These logs contain information about the build process and are stored indefinitely.
Edge Network logs are generated when requesting a path from the Edge. These logs contain information about a request to a specific path with details such as the path name, request method, and status code. These logs are not persisted.
Runtime logs are generated by Serverless Functions while they're being invoked. Runtime logs are stored in memory only as they arrive from the Serverless Function and are not persisted.
The only exception to this are failed requests. If a request leads to the Serverless Function throwing an error, the log for this will be stored indefinitely whereas all other Runtime logs will be lost when navigating away from the page.
There is a maximum size limit of 4kb for each log. If the size of the log exceeds this, only the last 4kb of data to arrive will be shown.
All deployment URLs have two special pathnames:
/_logs to a deployment URL or custom domain, you will be able to see a realtime stream of logs from your deployment build processes and serverless invocations.
These pathnames redirect to
https://vercel.com and require logging in to access any sensitive information. By default, a 3rd-party can never access your source or logs by crafting a deployment URL with one of these paths.
However, you can configure project settings to make these paths public. Learn more here.