How Much Does it Cost to Maintain a Custom Rails App?
Reading time: ~ 6 minutes
We've discussed in depth what it costs to develop a custom web application in the past. But once your application is up and running, it doesn't necessarily become a free resource that will continue to operate on its own to make your company money.
Custom Rails apps require upkeep, time, and, yes, money, to operate smoothly in the long run. The costs of maintaining an application are important to consider before creating a custom app.
We compiled a list of some common long-term and recurring expenses you can expect to encounter when your core business relies on a Ruby on Rails app. These expenses also apply to custom web applications built in other frameworks.
Ongoing development costs
Just because your custom Ruby on Rails application is up and running in production doesn't mean you should fire your development team to cut costs. As with all other parts of your business, your application will need routine maintenance and evaluation over time to stay relevant.
That said, it's typical to see your development costs decrease after your application has been in the wild for some time. If you're working with a development agency or freelancer to build your app, the total number of hours spent on your app may decrease after your core features have been released.
Of course, it's normal for the amount of work (and money) spent on your app to ebb and flow over the lifetime of your application. Costs increase when your business goals shift and new features must be added. When no significant changes are on the horizon, and your development team is only focused on bugs and updates, costs will go down. If you partner with an external development team, it's helpful to communicate these long-term plans as discussed within your team. This will help your team plan and prioritize your work.
Whether you have an internal development team or have partnered with an external one, your developers will need to intermittently update your Ruby on Rails app. New minor version updates for Ruby are released every few months, and new minor versions of Rails are released every few months to every month.
Your options for keeping an application up to date are:
- Allow developers to spend less time and more frequently upgrading your application after each minor release.
- Allow developers to spend much more time updating the application less frequently after major version releases.
Of course, you could also ignore version updates and run on old versions of Ruby/Rails. But we definitely don't recommend that as it may leave your application vulnerable to security threats. And in the era of data leaks, that's definitely not something you or your customers want to deal with.
Domain registration and hosting costs
Your application may live under a sub-domain on an existing website you already maintain, or it may live under its own domain. Either way, you'll have annual domain registration and hosting costs that you'll need to pay to keep your website accessible to the public.
Domain registration costs vary depending on how in-demand your domain name is. Something more unique will be less expensive. There are dozens of reputable domain name and hosting sites out there, and most offer an auto-renewal option to ensure your site stays up and running every year without missing a beat.
Domain registration could be as little as $10-15 annually but more depending on your domain name's popularity. Hosting costs vary widely based on the security levels of the company you partner with. Note that costs can also be higher for enterprise-level applications with high traffic and advanced features.
Code repository hosting costs
Every application has a code repository where the files that run the application are stored.
A large portion of code repositories are hosted on Github. They're known to be secure and reasonably priced, with team plans starting at $9/user per month and business plans at $25/user per month. For more information, you can check out Github's pricing options.
Another popular option is Bitbucket, an Atlassian product that may integrate well for your company if you're already using other Atlassian tools (like JIRA). Pricing for Bitbucket is comparable to Github, so your decision to use either tool comes down to feature comparison and personal preference. Here's a helpful article for comparing the two.
If you partner with an outside development team, they may recommend where you should store your application's source code at the beginning of the project. Depending on the size of the code base and other factors, another code repository hosting option may be recommended besides Github or Bitbucket, but these are the most common.
If you're building this application with an internal team or a freelancer, your company must pay for the code repository costs yourself. If you partner with an agency or larger team of developers, these monthly costs may be absorbed by your partner or built into your agreement with them. Be sure to ask when interviewing a potential development partner.
Asset storage (such as AWS)
Any assets (photos, videos, etc.) used in your Ruby on Rails application and website must be stored elsewhere. Most companies have transitioned to a cloud-based storage solution instead of on-site servers for these assets. A popular cloud storage solution (that happens to be what we use, too) is Amazon Web Services S3.
Their pricing is tiered, but you only pay for what you use. As you increase to higher storage amounts, your per GB cost decreases. Pricing starts at $0.023 per GB.
Similar to code repository costs, this may be absorbed by an outside team you partner with, so be sure to ask about it as well.
Continuous integration services
Continuous integration allows your developers to test each code change made to an application more frequently through automated processes. It's a key component of a healthy, maintainable application, whether Rails or any other framework.
Pricing for continuous integration services varies depending on the solution you decide to use. Many offer a free trial or membership for single developers or smaller applications. You can compare some of the most popular continuous integration services pricing and features using this chart from G2.
Some services like Octopus Deploy charge an annual fee (starting at $300/year), while others like Codeship charge monthly (starting at $49/month for the most basic plan).
Additional Potential Costs
3rd-Party Integrations
Does your application need to process payments? Does it need to connect with an email marketing system or data tracking software? Any of these additional features may depend on a third-party plug-in for your app, which can be an extra monthly or annual cost. When planning an ongoing budget for your application, be sure to calculate these costs.
Performance monitoring
Website performance monitoring services allow your developers to discover site issues before your customers do. When a website goes down, these tools send notifications to the right people through email, text, or Slack. Beyond notifying your developers when the site goes down, these services also give you performance updates about the speed of your site in different areas around the world.
Costs for Compliance and Security Measures (e.g., GDPR, CCPA, SOC 2) *Updated in 2024
In 2024, compliance with data protection regulations such as GDPR and CCPA has become critical for businesses operating online. The costs associated with ensuring compliance can include legal consultations, implementation of data protection measures, and ongoing audits. Additionally, certifications like SOC 2 can require significant investment in security infrastructure and regular assessments, which are essential for building customer trust.
Costs for AI/ML Services and APIs
Integrating artificial intelligence (AI) and machine learning (ML) services can enhance the functionality of your web application, but it also comes with associated costs. Many AI/ML services operate on a pay-as-you-go model, where pricing is based on usage or API calls. Businesses should budget for these expenses, especially if they leverage advanced analytics, natural language processing, or other AI-driven features to improve user experience and operational efficiency.
Costs for Serverless Computing and Cloud Functions
Serverless computing has gained popularity as a flexible and cost-effective solution for deploying applications. However, while it can reduce infrastructure management costs, businesses must still account for the costs of execution, data transfer, and storage associated with cloud functions. Understanding providers' pricing models like AWS Lambda or Azure Functions is crucial, as costs can vary based on usage patterns and scale.
Costs for Mobile App Development and Maintenance (if applicable)
If your web application has a mobile counterpart, the costs for mobile app development and maintenance can add up quickly. Developing a mobile app often requires a separate budget for design, development, testing, and ongoing updates. Also, maintaining compatibility with various devices and operating systems can increase long-term expenses. Businesses should consider these factors when planning their overall application strategy to ensure a seamless user experience across platforms.
When companies create a custom application from scratch, the upfront costs of developing the application usually get the most attention. However, it's essential to factor in the long-term costs of ensuring your application runs smoothly. Knowing what to calculate in the long-term cost of your application can help direct the decisions you make when building a custom app in the first place.