Reviews (1-25 of 43)
- Monitoring is very simple and easy to use for most use cases.
- Pipelines (development to production) are very simple. Application rollbacks are also very easy.
- Notifications and alerts are simple and easy to use.
- Very easy integration with other sass services and products.
- Docker support is lacking.
- You can't create multiple HTTP network services without creating separate apps.
- Enterprise grain security concerns are hard to address.
- It can get pretty expensive if you also take the actual infrastructure into the cost calculation.
- Simple CRUD services that have reasonable scale requirements are very well suited for Heroku.
- Simple task-based services can also work well with Heroku.
- If you do not have the resources (or priority) to create complex deployment environments go with Heroku.
- Highly scaled, Highly concurrent, Network intense and highly complex systems that need a lot of introspection are not very well suited for Heroku.
- Systems with high-security requirements are also not well suited to Heroku.
- It makes deployment, environment configuration, and simple manageability extraordinarily simple and easy to do, and getting up and going is a wonderfully simple process.
- The metrics included are excellent as a first resource for diagnosing high level issues.
- For beginners, Heroku is an excellent tool, making initial deployment and environment configuration wonderfully easy and fast.
- Heroku is absolutely fantastic on the mobile break point (mobile responsiveness). As a startup, things still happen on weekends while out at the park or driving out of town, and it has been wonderful to be able to troubleshoot or restart servers from the phone.
- The Heroku CLI provides a wonderful interface for interacting with the cloud environment.
- Heroku does not provide static IP addresses. For most applications this is not a concern, but in particular cases, especially around explicitly sensitive data, this makes Heroku prohibitive.
- For a more senior engineer seeking to SSH onto a server and monitor the machine's performance, or extract log files for extensive research, Heroku does not provide a great way to do this.
- Heroku permissions controls could be more granular. For instance, allowing some users to view environment variables while others can not view these.
- Opensource (with extensive documentation)
- Innovative (cutting-edge web technologies, latest versions of programming languages, tools, services, integrations)
- Focused on speed and scalability
- Free pricing plan and pricing in general
- Heroku requires installation of Heroku CLI tools locally.
- User-friendly interface.
- Supports many languages, databases, and other services in the form of addons.
- Super easy to deploy!
- Large learning curve.
- For small and simple applications, it is possible to get it free of cost.
- There could be a form of local currency billing.
- There could be a better organization of apps on the dashboard, with apps split by customers.
- There is a certain limitation with some addons, which may make your application unfeasible and you may have to migrate to another platform.
- The push to deploy almost always works and is very smooth and seamless.
- The Heroku add-ons have always been very reliable and easy to install.
- Their documentation is very thorough, and they have built a mechanism using buildpacks to make their platform very flexible.
- Some features that can be critical for security are hidden behind their Enterprise offering.
- The product is much pricier than using cloud providers like AWS, Azure, or Digital Ocean. It does solve a lot of Dev-Ops headaches, but may be too expensive for some companies.
- Some logging and auditing functionality is also somewhat hidden behind the Enterprise offering, where many other platforms offer this out-of-the-box.
In summary, if you want brain-dead simple hosting for popular web frameworks like Ruby on Rails, NodeJS, to this day nobody beats Heroku.
- Amazingly clear and straightforward documentation (versus the quagmire of AWS docs).
- Deploy your entire site in one command.
- Setting up asynchronous job processing for long running operations (e.g. sending emails, making external API calls).
- A wonderful portfolio of tightly-integrated add-ons in their marketplace.
- Large price jumps between certain resource tiers (2x Dyno for $50 per month versus Performance Dyno for $250). Free Postgres next jumps to $50 per month.
- Marketing/Branding to non-technical stakeholders. As the years pass, I've had to fight more to convince stakeholders on the value of Heroku over AWS.
- Improve Buildpack documentation. This is one area where Heroku's documentation is fairly confusing.
- Ease of configuration and scaling.
- Ease of code deployment.
- Ease of deploying staging environments.
- An ephemeral file system may require workarounds certain developers are not used to.
- The cost is high and can easily balloon as you grow if you aren't careful.
- While configuration is super simple, it will not be as flexible as bare metal servers.
If you already have a bare-metal solution that has scaled well with your own DevOps team, then moving to Heroku later would likely only introduce a higher cost without many other benefits.
- On-demand scalability
- Ease of deployment
- Command Line Interface
- Fail safe when Amazon has problems. I understand that some of the ownership is on us, but we would prefer if we didn't have to resort to another service for backup.
- The tooling is simply amazing. You can deploy your application in some minutes without any prior experience with the platform.
- Their way of building applications encourage you to think about scalability and composability of your app.
- They have a big community around the platform and many add-ons written by third-parties.
- The price is not so affordable when you start growing. For small companies, needing small containers, it works quite well but for large applications, it may be too expensive.
It's not great if you want ultimate control over all those aspects.
- Free Option is great for people just learning or wanting to make simple apps
- Very easy to create several environments for your app in no time with exact clones
- Documentation is easy to follow and full of tutorials
- If you're not careful, you can easily create an expensive app by accident.
- Inconsistant experience with all the other add-ons. Some are not documented well.
- Easy to use control panel
- Virtually effortless to scale server instances with the click of a button
- Fully managed servers, although you still have good control over what is run on the instances
- Price has crept up a bit
- The plugin system is useful, but sometimes not perfect
- Heroku has a very simple deployment model, making it easy to get your application up-and-running with minimal effort. We can focus on our efforts the unique aspects of our application.
- The robust add-on marketplace makes it easy to try out new approaches with minimal effort and investment -- and when we settle on a solution, we can easily scale it.
- Heroku's support is quite good -- their staff is quite technical and willing to get into the weeds to diagnose even complicated problems.
- Heroku can get pricey pretty quickly as you scale.
- The quality of add-on vendors is increasingly variable as Heroku expands the marketplace.
- Great APIs: Heroku's APIs are extremely useful and always improving.
- Developer-friendly documentation: Heroku's docs are thorough and well-written.
- Great Customer Support: Heroku's front-line support is great, and knows when to escalate directly to people working on the product.
- Heroku Metrics is great, but we'd love to see direct API access (and the ability to add and customize our own metrics).
- Heroku's status/downtime/maintenance notification system could be improved with better granularity to help filter irrelevant alerts.
At the other end, I'd imagine that larger organizations who have in-house staff doing DevOps might see a lot of duplication between those staff and what Heroku is doing to add value. At some point, the premium you're paying Heroku would probably prompt you to move those functions or keep them in-house.
- Heroku supplied the appropriate resources to complete our project.
- Heroku made deploying our platform simple with their intuitive user interface.
- What would benefit overall is for specific descriptions of errors or issues with platform/app deployment. Many times there were errors shown that only gave brief, vague descriptions of the problem. For example, "mounting and logging issues" or "application timed out". A more detailed description as well as a focus on where the problem occured, would be beneficial.
- Quick to get started
- Countless Integrations
- CLI is easy to use
- The cold start times can be brutal for free plans
- Cost can be expensive if you have many dynos
- Have to be careful of third party integration pricing as well
- Easy integration with the other Salesforce products.
- Has similar if not better features then other cloud providers, but has the advantage of being less development intensive.
- Quick and easy provisioning of commonly used resources.
- The cost can be quite high even for small resource consumption.
- Support can be enhanced upon as it's similar to other Salesforce products.
- There tends to be a lot more maintenance required than other providers.
- Incredibly straightforward deployment processes with best-in-class documentation and getting started tutorials
- Great reporting and analytics
- Transparent pricing lets you get really good estimates on how much hosting will cost, so there aren't any surprises
- Easy to enable and disable plugins
- Autoconfiguration and "convention over configuration" for most features
- The vibrant community means it's easy to find out how to achieve various goals by seeing what others did
- Top notch support that fixes problems right away
- Relatively affordable given what value-added features you get
- Could be less expensive, although you get what you pay for
- Sleeping apps can be an annoyance: Heroku automatically puts your apps in sleep mode and they have to spin back up after periods of inactivity. Much of this can be solved but it requires working around the built-in functionality. I understand why they do it but it's an area that could be improved.
- Restrictions to server access means you can't customize as much as you could if you owned the server. But again, this is also a benefit because it's about convention over configuration. So you can't configure as much, but then, you typically don't have to.
- Supports auto deployment using the GIT version control system
- Free SSL for custom domains
- Easy to customize server needs
- Pipelines help to stage the application
- Has inbuilt application for accessing and managing the servers from the terminal
- Add-ons are pretty costly
- Limited server locations
- Prices are costly
- Heroku deployment process
- Heroku documentation
- Heroku Toolbelt makes everything so easy
- Heroku is incredibly expensive compared to alternatives
- It'd be nice to have more logs than just the last 1500 lines.
- No way to install system software.
- Works well with GIT making deployment pretty easy.
- A variety of add-ons to that offer various additional features.
- Multiple language support (RoR, Java, etc.)
- Stability. Heroku seems to suffer from stability issues from time to time.
- Logging. I know that there are a number of different options out there. I just don't want to pay extra for something that is a pretty basic requirement.
- The web based UI is pretty sparse. I appreciate the simplicity (having used AWS and Azure). That said, I sometimes have trouble finding things... like how do I get to my running app?
- I can't stress enough the importance of Heroku's integration with a wide variety of providers in the form of add-ons. Provisioning is easy for logging and monitoring, caching, data storage, text messaging, email, source code hosting, payment processors, performance and load testing, different database add-ons, etc., -- if you can think of it, Heroku probably supports at least one type of provider for it. This alone saves a ton of time evaluating and integrating the different providers into your application.
- Heroku is insanely well-equipped to host Rails applications and other Ruby-based web applications (e.g. Sinatra and custom Rack applications). They also support PHP, Node.js, Python, Java, Go, Clojure and Scala-based applications.
- The Heroku Dashboard is one of the best UIs I've seen for just about anything. Given how complicated it could get, it's obvious what you are doing and how to do it.
- The Heroku documentations is top-notch and always kept up-to-date. I am VERY picky about this sort of thing and I have no complaints at all.
- I've found customer support to be variable. When I've contacted them by filing tickets, they have been professional and generally very responsive, however, when we set up a phone conference to discuss our security needs, the support person we talked to was only marginally professional in his responses, and not really helpful.
- Heroku needs more than one hosted location in the US. Relating to the meeting I mentioned, my previous company needed a disaster recovery plan since we were trying to qualify for SOC-2 certification. Because we were also a fintech business, we could not choose a host outside of the US, so having only Virginia as an available location caused problems for us.
Heroku Platform Scorecard Summary
Feature Scorecard Summary
About Heroku Platform
The Heroku Platform, now from Salesforce, is a platform-as-a-service based on a managed container system, with integrated data services and ecosystem for deploying modern apps. It takes an app-centric approach for software delivery, integrated with developer tools and workflows. It’s three main tool are: Heroku Developer Experience (DX), Heroku Operational Experience (OpEx), and Heroku Runtime.
Heroku Developer Experience (DX)
Developers deploy directly from tools like Git, GitHub or Continuous Integration (CI) systems without the need to manage infrastructure. The web-based Heroku Dashboard makes it possible to manage applications online and gain visibility into performance.
Heroku Operational Experience (OpEx)
OpEx helps developers troubleshoot and remediate issues and customize the ops experience to identify and address trends in application health. Heroku provides a set of tools to alert teams if something goes wrong, or to automatically scale web dynos if the response time for web requests exceeds a specified threshold.
Heroku runs apps inside dynos—smart containers on a fully managed runtime environment. Developers deploy their code written in Node, Ruby, Java, PHP, Python, Go, Scala, or Clojure to a build system which produces an app that's ready for execution. The system and language stacks are then monitored, patched, and upgraded. The runtime keeps apps running without manual intervention.
Heroku Platform Competitors
Heroku Platform Technical Details