Vercel (creators of Next.js) is a premium hosting platform with an excellent free tier, lightning-fast deployments, and world-class CDN. Perfect for static landing pages.
- A Vercel account (free) - Sign up at vercel.com
- Your code in a Git repository (GitHub, GitLab, or Bitbucket)
FREE tier includes:
- 100GB bandwidth/month
- Unlimited sites
- Automatic SSL
- Custom domain support
- Serverless Functions (100GB-Hrs)
- 6,000 build minutes/month
Excellent for landing pages!
Automatic deployments on every git push.
- Log in to Vercel
- Click "Add New" → "Project"
- Click "Import Git Repository"
- Choose your Git provider and authorize Vercel
- Select your landing page repository
Vercel auto-detects most settings, but verify:
Framework Preset: Other
Build Command: npm run build
Output Directory: dist
Install Command: npm install
Root Directory: Leave empty (unless your project is in a subdirectory)
- Click "Deploy"
- Vercel will:
- Clone your repository
- Install dependencies
- Run build command
- Deploy to global CDN
- Your site goes live in 30-60 seconds!
You'll get a production URL: https://your-repo-name.vercel.app
Every push to your main branch automatically deploys to production. Pull requests get unique preview URLs!
For developers who prefer the command line.
npm install -g vercelvercel loginEnter your email to receive a verification link.
Navigate to your project directory and run:
vercelFollow the prompts:
- Set up and deploy? Y
- Which scope? (Select your account)
- Link to existing project? N (first time)
- What's your project's name? (Enter a name)
- In which directory is your code located?
./ - Want to override settings? Y
- Build command:
npm run build - Output directory:
dist - Development command:
npm start
Your site is now deployed!
For subsequent deployments:
vercel --prodOr for preview deployments:
vercelAdd a deploy button to your repository's README:
[](https://vercel.com/new/clone?repository-url=https://github.com/yourusername/your-repo)Anyone can click this button to deploy their own copy!
Create a vercel.json file in your project root for advanced configuration:
{
"buildCommand": "npm run build",
"outputDirectory": "dist",
"devCommand": "npm start",
"installCommand": "npm install",
"framework": null,
"regions": ["iad1"],
"rewrites": [
{
"source": "/(.*)",
"destination": "/index.html"
}
]
}This ensures:
- Correct build settings
- SPA routing support (all routes serve index.html)
- Consistent deploys across team
- Go to your project dashboard
- Click "Settings" → "Domains"
- Enter your domain (e.g.,
yourdomain.comorlanding.yourdomain.com) - Click "Add"
Vercel will show you which DNS records to add.
For apex domain (yourdomain.com):
Type: A
Name: @
Value: 76.76.21.21
For www subdomain:
Type: CNAME
Name: www
Value: cname.vercel-dns.com
For custom subdomain (landing.yourdomain.com):
Type: CNAME
Name: landing
Value: cname.vercel-dns.com
- Add the DNS records at your domain registrar
- Click "Verify" in Vercel
- Wait for DNS propagation (usually 5 minutes to a few hours)
- SSL certificate is automatically provisioned
- Go to Domains settings
- Click the three dots next to your domain
- Select "Set as Primary Domain"
If your build process needs environment variables:
- Go to Settings → Environment Variables
- Add variables for different environments:
- Production
- Preview
- Development
- Click "Save"
Access them in your build process via process.env.VARIABLE_NAME
Vercel automatically creates preview deployments for every push:
- Every branch gets its own URL
https://your-repo-git-branch-name-username.vercel.app
- Every PR gets a unique preview URL
- Vercel bot comments on PR with deployment link
- Perfect for reviewing changes before merging
- Production: Deployments from your main branch
- Preview: All other branches and PRs
Protect your preview deployments:
- Go to Settings → Deployment Protection
- Enable password protection or Vercel Authentication
- Share password with team members
Free tier includes basic protection!
Vercel Analytics shows real user metrics:
Free tier includes:
- Core Web Vitals
- Page views
- Top pages
- Real user metrics
To enable:
- Go to Analytics tab
- Click "Enable Analytics"
- Add analytics script (optional for static sites)
Cost: Free for up to 100k data points/month
Get detailed performance metrics:
- Go to Speed Insights tab
- Enable for your project
- See real-world performance data
Included in free tier with limits!
Vercel automatically caches:
node_modules- npm/yarn cache
- Build outputs
Subsequent builds are much faster!
View detailed build logs:
- Go to Deployments tab
- Click on any deployment
- View Build Logs and Function Logs
Perfect for debugging build issues.
Made a mistake? Instant rollback:
- Go to Deployments tab
- Find the previous working deployment
- Click the three dots → "Promote to Production"
- Previous version is live instantly!
Vercel's free tier supports team collaboration:
- Go to Settings → Team
- Invite team members by email
- Set permissions (View, Edit, Admin)
Everyone gets access to deployments, logs, and settings.
Vercel automatically optimizes:
- Global Edge Network: 100+ locations worldwide
- Smart CDN: Caches at the edge
- HTTP/2 & HTTP/3: Modern protocols
- Brotli Compression: Smaller file sizes
- Image Optimization: (if you upgrade plan)
- Automatic HTTPS: Free SSL for all domains
Monitor your site:
- Deployment Health: See deployment status
- Uptime Monitoring: Get alerts for downtime (paid)
- Error Tracking: View build and runtime errors
- Deployment status
- Preview URL
- Build logs link
- Build status in PR
- Preview deployment ready status
- Require successful deployment before merging
- Check build logs in deployment details
- Test build locally:
npm run build - Verify
package.jsondependencies - Check Node version compatibility
Add to vercel.json:
{
"rewrites": [
{ "source": "/(.*)", "destination": "/index.html" }
]
}- Check DNS records:
dig yourdomain.com - Wait 24-48 hours for DNS propagation
- Verify domain in Vercel dashboard
- Check for conflicting DNS records
- Enable build cache
- Remove unnecessary dependencies
- Optimize build script
- Check for large files in repo
# Deploy to preview
vercel
# Deploy to production
vercel --prod
# List deployments
vercel ls
# View deployment logs
vercel logs <url>
# Remove deployment
vercel rm <deployment-url>
# Link local project
vercel link
# Pull environment variables
vercel env pull
# Get deployment info
vercel inspect <url>Show deployment status in README:
[](https://vercel.com/import/project?template=https://github.com/yourusername/your-repo)If your landing page is part of a monorepo:
- Set Root Directory to your project's subdirectory
- Vercel will only build that directory
- Perfect for multi-site repositories
Choose Vercel if you want:
- Fastest deployments (30-60 seconds)
- Best developer experience
- Excellent preview deployments
- Built-in performance monitoring
- Top-tier CDN performance
Choose alternatives if:
- You need unlimited bandwidth (GitHub Pages)
- You need form handling (Netlify has built-in forms)
- You want to avoid vendor lock-in
- Set up custom domain for professional branding
- Enable Analytics to track performance
- Configure preview deployments for team collaboration
- Add deployment badges to README
Free tier:
- Cost: $0/month
- Bandwidth: 100GB/month
- Build minutes: 6,000 minutes/month
- Serverless Functions: 100GB-Hrs
- Sites: Unlimited
Perfect for multiple landing pages!
Deployment Time: 30-60 seconds per deployment Difficulty: Very Easy 🟢 Developer Experience: Excellent ⭐⭐⭐⭐⭐