Build and Run Your Apps, Your Way.
Heroku supports Ruby, Node.js, Python, Java, and PHP so you can use the languages you already know to build and deploy apps on Heroku. Learn more about our language support or sign up now.
Once you push your application source code, Heroku prepares it for execution by retrieving the necessary dependencies specific to the frameworks and languages you use in your app. Heroku supports Ruby, Node.js, Python, Java and PHP by default, but you can also choose another language by using a custom buildback.
Heroku lets you manage environment-specific configurations (such as credentials for backing services) separately from your source code for greater safety and portability. In Heroku, this data can be managed with config vars, which are made available to your running application as simple environment variables.
Sometimes you want to run one-off dynos on your app—run a script in your app's environment, use your app's console, etc. Using
heroku run, you can quickly spin up a one-off instance of your app environment to run ad-hoc commands.
Add the Power of Heroku Elements to Your App
Heroku Elements are tools, components and services for adding functionality to your app. Heroku Elements include Add-ons, Buildpacks and Buttons.
Use technologies you love with over 150 Add-ons from the Elements Marketplace. Add-ons are fully-managed services, integrated for use with Heroku. They can be provisioned and scaled in one command. Add-ons provide services for logging, caching, monitoring, persistence and more.
Buildpacks are open source scripts for compiling apps on Heroku, specific to the frameworks and languages in your app. Heroku supports default buildpacks for Ruby, Node.js, Python, Java and PHP, but you can also choose from hundreds of community buildpacks in the Elements Marketplace.
Heroku Buttons let you one-click provision, configure and deploy third party components, libraries and pattern apps. The Elements Marketplace lets you see what Buttons are trending from hundreds of open source repos, so you can find the perfect recipe to start building apps quickly.
Deploy your app quickly, easily and with options that work for you.
Deploy with Git
Use git to deploy apps to Heroku in one command. We'll build and run the source application, handling compilation, dependencies, assets and executables so you can focus on code. Code pushed to the heroku remote will be live and running on the platform quickly. Learn More.
Heroku fork creates a duplicate instance of your application, running on Heroku immediately. It can be used to rapidly spin up new application environments, demonstrate feature branches on a running app, or migrate apps to Heroku Europe.
Whenever you deploy changes to your app, Heroku creates a new release of your app. We keep your app's release history, and you can list all of your releases, who made them, and when. And if something goes wrong in a release, use the rollback command to roll back to the latest release or a specific release until you can fix the problem. Learn more.
Heroku has two geographic regions — US and Europe — so you can deploy apps closer to your users, with less latency. Learn More.
Scale with ease, when you need to.
Heroku lets you grow quickly to support user growth, traffic spikes and new features.
Dynos on Heroku are available in multiple sizes. 1X and 2X dynos have variable performance. 1X dynos get 512MB of memory and 1X CPU share. 2X dynos get 1024MB of memory and 2X CPU share. Performance Dynos have consistent performance, 6 GB of RAM, 8 CPU cores and 30x the compute of 1X dynos.
On Heroku, your app is easily divided into worker, web, queue and other process types which can be scaled up independently and on-demand. This provides a simple, powerful model for addressing user growth, traffic spikes, and demanding background tasks with ease and flexibility. Learn more about scaling on Heroku.
Heroku Add-ons come in a variety of plans to fit your application and ensure you only pay for what you need. When it's time to grow, upgrade to a new plan on an on-demand basis.
Use the Dashboard to easily scale up the number of dynos available to your app. Just use a slider and apply changes when you’re ready to grow.
Get comprehensive visibility and monitoring.
Heroku provides built-in tools so you get the information you need to make better decisions.
Heroku brings simplicity and order back to logging. Heroku automatically collates and routes logs from every single part of your application into a single channel, providing the foundation for truly comprehensive, extensible, app-centric logging. Learn more about Heroku's logging.
Heroku Status provides information on Heroku’s current status, current and historical uptime, and incident history. Visit Heroku Status.
Heavy Duty Tools
Heroku gives you powerful, beautiful, intuitive interfaces to build and manage your app. Minimal distractions and robust features let you focus on getting things done.
When you sign into Heroku on www.heroku.com, you'll see the Heroku Dashboard. Dashboard provides an overview of all your apps, resources they're using, recent activity, and collaborators, giving you a beautiful, cohesive interface to manage all of your apps.
Our command line client, Heroku Toolbelt, gives you everything you need to get started with Heroku. Installs easily on OS X, Windows, Debian/Ubuntu or from source, and provides you with the Heroku CLI, a tool for running your apps locally, and Git.
Heroku Postgres provides a SQL database-as-a-service that lets you focus on building your application instead of messing around with database management.
Dataclips allow the results of SQL queries on a Heroku Postgres database to be easily shared. Simply create a query on postgres.heroku.com, and then share the resulting URL with co-workers, colleagues, or the world. Data clips can be shared through e-mail, Twitter, IRC, or any other medium - they are just URLs.
Use the PG Backups Add-on to easily capture and manage backups for your Heroku Postgres databases. This can be used to safely upgrade your database to larger plans.
Fork your Postgres database just like you fork source code. It creates a perfect, byte-for-byte clone of your database with a single command and adds it to your account as a separate object.
Postgres follow allows you to create read-only replicas that stay up-to-date with the changes to your database. Followers are similar to "hot-standbys" or "read-only slaves". Followers can be used to horizontally scale the read capacity of your database. Read queries can be directed to followers and write queries to the primary database.
Partner and API Services
Heroku is more than a service – it's an extensible platform where you can make new tools, create useful integrations, reach Heroku customers all over the world and even build your business.
The Heroku Platform API makes it possible to automate, extend and combine the Heroku platform with other services in a programmatic, self-service way. Get started.
Developers building integrations and services that use the Heroku Platform API can provide a better experience to their users with OAuth. Learn More.
Become an Add-on provider to make your cloud service available to tens of thousands of Heroku developers. Get started.
Heroku Partners are digital agencies, development groups, and application consultancies that help customers build amazing apps on Heroku. Join the Partner Program
Documentation & Support
We're here to help make your apps amazing. We have tons of documentation and best practices to offer, plus hands-on support when you need extra help.
How Heroku Works
A high-level technical description of how Heroku works. It ties together many of the concepts you’ll encounter while writing, configuring, deploying and running applications on the Heroku platform. To learn all about it, visit our Dev Center.
Heroku is designed to maximize developer productivity and application maintainability. Learn more about building better cloud applications on Heroku following the Twelve Factor methodology.
Support is available for all Heroku users through our Help platform, which lets you file tickets with our support team and get more information on common questions and issues.
For critical production apps and enterprises, Heroku Premium Support offers guaranteed response times, 24/7 support, and 1:1 help in running your application. Contact our Customer Advocates.