How to Build a Car Sharing App. Must-have Features and Development Costs
Every day, carsharing conquers new markets across the globe. This type of shared mobility has already proved itself viable, and there’s still room to grow. Carsharing looks appealing as a business idea, and modern technologies make it possible to provide customers with high-quality service. This article tells you how to start a carsharing business and which features to include in a mobile app.
Carsharing is a rapidly growing business. It’s a healthy alternative to private car ownership, offering fewer responsibilities and more freedom. There’s no need to purchase a car, spend money on fuel and maintenance, and constantly search for a parking spot. Moreover, Millennials and those in Generation Z like to share. They prefer to rent, borrow, and swap everything from hiking gear and power tools to homes and yachts rather than buy them.
This is why shared mobility has become a trend. It includes services such as ridehailing (Uber, Lyft), carpooling, scooter sharing (Lime, Bird), and, of course, carsharing. The most prominent carsharing operators are car2go, Zipcar, Getaround, Turo, and Maven.
Carsharing services differ by both business and sharing model. For example, car2go uses a business-to-customer (B2C) model and provides a free-floating service. Getaround and Turo offer peer-to-peer (P2P) carsharing.
Benefits of carsharing
Initially, carsharing was akin to traditional car rentals: people rented cars for long distance travel or special occasions instead of using their own car. However, gradually more and more people started to consider carsharing as a means of everyday transportation.
This tendency is wholesome, as it helps to solve immediate problems by:
- reducing CO2 emissions
- minimizing urban congestion
- addressing parking problems
It’s true that by switching from car ownership to carsharing (and other eco-friendly means of transportation) people can greatly reduce their carbon footprint. Although carsharing doesn’t solve the traffic congestion problem completely, it’s a move in the right direction. One shared car takes 15 private cars off the road. This helps to solve issues with the lack of parking space, as streets in urban areas are usually overloaded with vehicles.
How to start a carsharing company
Many entrepreneurs see carsharing as a lucrative market and have latched onto the idea of starting their own carsharing companies. According to Roland Berger, the carsharing market will grow by as much as 30% annually through 2020, potentially reaching more than $6 billion in global revenue. You can be part of this growth, but first you need to learn what steps to follow before entering the carsharing market.
Decide what type of carsharing service you’ll provide
You can own a dedicated car fleet and use a mobile app to manage it and gain more users. Or you can bring together car owners and renters with your app and generate income from membership fees.
Choose the business model for your service
Common models are station-based, free-floating and A to B. The latter type suits EV fleets since it ensures that trips end near charging stations.
Study the market and competitors
See what competitors are lacking and what you can offer to meet the immediate needs of end users.
Think about marketing strategies from the start
Prior to the official release, decide how you’ll promote your carsharing app. Include advertising costs in your budget.
Meet legal issues
As a carsharing service operator, you need to receive permission from local regulatory bodies to conduct business in their jurisdiction.
Figure out the financial aspects
There’s no denying that carsharing is a costly venture. In the US, once you launch your own carsharing company, you become subject to taxes for rental businesses along with regular income taxes. You also have to think about insurance, maintenance, software licenses, and staffing costs.
Shortlist mobile app developers
Find a team of developers experienced in developing apps for the shared mobility market. It’s best to choose a company that provides a full development cycle: business analysis, development, UI/UX design, testing, after-launch support. This will save you both time and money.
Make your app eye-catching and handy at the same time. Apart from the key features, every car sharing app should have a user-friendly interface and an up-to-date design.
Car sharing business models
There are a few business models in car sharing you can choose from:
- A to B
Station-based business model
It requires an infrastructure of stations in a city, where your customers will be able to rent and leave their cars. It’s easier to manage, as you’ll have all your vehicles in particular locations, and won’t need to gather them from all over the city. On the other hand, it’s costly to develop such an infrastructure, especially for cars.
Free-floating business model
It is the most popular, as it’s the most convenient for the customers. According to this carsharing app concept, users can leave and take their cars at any place in the city. It’s very convenient for users, but you need to pay close attention to parking costs and move the cars from unpopular locations.
A to B business model
It is rather restricting for customers, as they are able to only choose a particular route. However, this is more convenient for you, as you can predict your vehicle locations.
Mistakes a carsharing operator should avoid
- Deciding to ignore local authorities and launch your fleet without permission. If you do this, you’ll be in a situation where you don’t know where to park your cars, as all parking spots are off limits for illegal carsharing operators.
- Forgoing marketing analysis and offering the same service and technologies as other carsharing companies in your area. In this case, you can’t compete. Things will be even worse if your main competitors are ridesharing monsters such as Uber and Lyft that provide many services, including car rentals.
- Underestimating your budget needs. In this case, you may decide to cut some expenses to stay afloat. So your app won’t get updates, your fleet will start getting worn out, and your employees will go to your competitors.
- Forgetting to put the product in front of the customer. Perhaps you’ve successfully launched your carsharing service and everything is going seemingly well. But if you fail to provide a sufficient number of vehicles, your business is doomed. Your service will be labeled as inconvenient.
- Having a fleet that consists solely of electric cars. This is forward-thinking; however, you shouldn’t forget that very few cities have recharging stations on every street. This likely won’t affect a station-based type of service so much, but will make a free-floating model impossible.
Weigh the pros and cons before diving into the carsharing business and make sure to avoid common mistakes.
Behind the scenes of carsharing
How is the carsharing process organized? It appears to be pretty simple from the user’s perspective. However, what work is done in the background? Below, we describe the basic steps a user should follow to start using a carsharing service and what actions the system performs in response. The number of steps depends on the carsharing operator, but the overall process is quite similar.
|Step||User actions||Background operations|
|Registering||To become a member of a carsharing program, a user needs to register via an app. Usually, this involves completing a form and submitting personal details, credit card data, and driving license information.||The app checks the information the user has provided to ensure the user meets membership requirements (age, driving experience). Once registration data is verified, the system creates an account and sends an email confirmation.|
|Sign in||Once membership is confirmed, the user can log in to the app and use it right away.||When users sign in, their account information is retrieved from the system and sent to the app. This way users can view their profiles and book cars. The app constantly syncs with the back end to keep vehicle availability up to date.|
|Reserving a car||To reserve a car, a user must choose a car from a list, view its specs, and check its availability and current location. The user can then book and drive immediately or schedule the reservation for a later date.||When a user requests a car, the system checks whether it’s available. Once the booking is confirmed, the system communicates with the vehicle’s in-car system so it knows the reservation was made.|
A big amount of work is performed by the background system which consists of a server and an in-car device.
|Step||User actions||Background operations|
|Accessing the vehicle||When it’s time for a ride, user heads over to the vehicle and uses the phone to unlock the car. The key is usually deposited in a key holder [or the vehicle doesn’t require a key to start the engine].||When users tries to unlock car, the system contacts the in-car vehicle hardware to confirm it’s the same user that booked this car. Once the vehicle knows user has a valid reservation, the doors will unlock. The system starts recording the trip information the moment user enters the car.|
|Ending the trip||Once the ride is over, the user has to park the car, return the key back to the key holder and close the door. Within seconds the vehicle doors will lock automatically.||The moment the key is returned to the key holder, the system knows the user has ended the trip. The system and in-car hardware checks whether the car is parked properly. The door will lock once the user gets out of the vehicle. Once the current trip ends, the system will make the vehicle available to other members again.|
|Post-trip||After the trip is completed, user will see an update made to their account. It will include trip details: the start/end time, as well as the cost of the ride||Once the trip is completed, the system receives the trip details like trip duration and calculates the total cost of the trip. That amount is automatically billed to the credit card user entered at registration.|
What technologies carsharing relies on
Carsharing wouldn’t be the same without modern technologies. They help to organize the whole process and make fleet management easier. Let’s name some of these technological wonders.
One of the main technologies used in modern carsharing services is eco-friendly engines powered by emission-free energy sources such as electricity and hydrogen. Eco-friendly cars are not only cleaner than gasoline-powered cars but are also more affordable for car sharing services.
GPS devices receive data from satellites and use it to calculate a vehicle’s location in real time. GPS devices don’t require an internet connection, which is a big plus.
E-vehicles are cleaner than gasoline-powered cars and also more affordable for car sharing services.
Internet of Things
IoT app development goes hand in hand with creating services like car sharing. Unlike GPS devices, IoT devices require a network connection. IoT devices include embedded in-car hardware that’s connected to an app. This technology updates the system on the vehicle’s status and also receives data from the system, such as a user’s ID, to manage keyless access to vehicles.
To make your service technologically on par with competitors, you can check the leading technology vendors who provide ready-to-use solutions for carsharing businesses: INVERS, Mobiag, MonGeo, Omoove, Ridecell.
Nowadays, car manufacturers equip cars with devices that connect to networks using radio, Wi-Fi, and cellular modems (GSM/CDMA, 3G, 4G, 5G). This enables communication between users and service providers.
Onboard systems allow carsharing providers to control a whole fleet. They provide real-time data on a vehicle’s location, fuel/battery level, and security. With the help of special hardware installed in each car, you’ll always know where your cars are, whether they require a recharge or repair, etc.
Basic features for a carsharing app
If you want to create a custom carsharing app, you should implement the following features in your MVP.
- User profiles
- GPS tracking
- Smart lock
- In-app payments
- Ride stats
- Push notifications
The registration process should be fast and easy. No need to request full information from new users right from the start. Users can provide additional details later when updating their profiles.
Your app can have its own sign-in form or offer users to sign in using social accounts or email.
To integrate maps, developers connect the Google Maps API for Android apps and MapKit for iOS apps
After registering, users should be asked to provide further information about themselves (upload a profile photo, fill in personal details).
Integrate a payment gateway into your application to accept cashless payments from customers. You can choose among Stripe, PayPal, and Braintree. Stripe offers its own Android libraries and a card input widget. For iOS, you can use the Stripe SDK.
To integrate maps, developers connect the Google Maps API for Android apps and MapKit for iOS apps.
To determine the current location of a vehicle, developers use GPS. Geolocation for an Android app can be implemented with the help of Google’s Location APIs. iOS developers rely on CoreLocation.
A smart lock feature enables keyless locking/unlocking of a vehicle via an app. Once the in-car system confirms that the user has a reservation, it will unlock the door. After the trip ends and the user gets out of the car, the doors lock again.
Carsharing keyless technology can be implemented through a third-party service, if you integrate your carsharing mobile app with it, as mobile app is the facilitator of locking and unlocking the vehicle. If you want more security, however, you can develo your own custom keyless access for your fleet.
A user can request a car right away or make a reservation for a later date using the booking feature.
This feature allows users to see the duration of their ride and track their booking history.
In order to notify users about the status of their reservations or about cars available near them, you’ll need to connect some APIs for sending push notifications. For iOS devices, this feature is provided through the Apple Push Notification Service. Android apps can rely on Google Cloud Messaging.
In case a user encounters difficulties during the trip or the vehicle is damaged – whether or not it was the user’s fault – they need to contact the carsharing operator for instructions. Built-in support will significantly improve the quality of your service. You can enable live chat, a сhatbot, or direct calls in your app.
The following features are optional for car rental mobile app development, and you can add them after you release your MVP.
By default, your app will support only one language. However, if you’d like to cover a larger market, you can add more languages. Note that some languages are written from left to right while others are written from right to left, so you need to consider this peculiarity prior to development.
To make your service credible, give users an opportunity to rate their ride experience and leave feedback about cars. This will help other users to choose a car that’s suitable for them.
With a built-in messenger, users will be able to contact the owners of shared cars (assuming you provide a peer-to-peer carsharing service).
An admin dashboard is a web application that stores data and manages all activities in the app. Basically, it’s the hub that connects the vehicle’s in-car hardware and the app. It can be created either from scratch or using an admin panel template. Common features of an admin panel include:
This feature allows a carsharing provider (admin) to determine the location of each car, check its fuel/battery level, and see metrics for in-car systems.
With the help of this feature, admins can accept or reject registration requests, get access to profiles of registered users, and see their booking history. If necessary, admins can ban users who violate the rules. User management also allows admins to reply to customers’ inquiries via live chat or direct calls.
This feature lets admins set rates based on the duration or distance of the ride and issue refunds or charge fines.
Reports & analytics
With this feature, admins can see an app’s statistics and performance reports in downloadable tables and diagrams.
Technology stack for car sharing app development
The backend of the app
A framework connects your application’s interface with a database according to your business logic. It processes requests, addresses, and more.
A framework is a set of libraries that help developers easily integrate and set up:
- Payment gateways
- Third-party services like maps
- Search logic and filters
- Admin panels
- Sorting logic
- Business logic
Your choice of framework depends on the programming language you use. Here are some of the options:
There are more PHP frameworks; however, these three are the most advanced: they have out-of-the-box libraries for admin panels and all other functionality. Out of the three, I’d choose Symfony for a car sharing startup.
Both Django and Flask are suitable for a car sharing business; however, Django has one serious advantage: it has its own admin panel. Unlike Symfony, it doesn’t require installation of an additional open-source library. This makes Django convenient for admin panel development.
- Ruby on Rails
Ruby on Rails has lots of ready solutions, and developers often choose it to create backends for different types of products. However, I would recommend a Python or PHP framework, as Ruby has recently started to lose popularity. Each year, the community becomes smaller and smaller.
This can cause problems in the future, as the less community support there is, the harder it is to keep a framework up to date and find new and better technical solutions for your business.
A database is responsible for organizing and storing data. The most popular choices are:
MongoDB is rarely used as a primary database, but it’s extremely fast. This makes it perfect for software that requires dynamic changes to data. MongoDB is great as an additional database for large amounts of data.
It is rather complex: it has lots of features that are unnecessary for many startups, and it’s often used to meet non-standard requirements.
MySQL is the best choice: it’s functional, rather productive, and provides nearly anything a standard car sharing business needs.
After you scale your project and your server starts receiving more and more requests, you can pair your database with a caching tool like Redis or Memcached. These tools store data in RAM, helping you unload the server and remove recurrent requests.
For cloud servers my suggestions are:
- DigitalOcean Cloud Services
- Amazon Web Services
- Microsoft Azure
To process server requests, I advise this web server software:
- Apache HTTP Server
After you’ve chosen your framework and the programming language for your project, you can start developing an admin panel. The tools for your admin panel development depend on the framework. I’ll give you an example for Symfony, which is a PHP framework.
If you use Symfony, you have three options for your admin panel:
- Easy Admin
- API Platform admin
- Sonata Admin
Easy Admin is a great tool for creating clear and functional admin panels with all necessary features. It’s compatible with Symfony only. API Platform Admin offers a ready React UI component set for your frontend, and it’s connected to Symfony via an API.
Consult with a web developer who can assess your project and business needs to help you choose the right tool.
If you choose a Django framework, you won’t need to integrate a library to create an admin panel.
To sum up, these are the set of technologies I advise for a scooter sharing backend and admin panel:
|Server||DigitalOcean, Cloud Services, Amazon Web Services, LinodeVultr, Microsoft Azure|
|Web server software||Apache HTTP ServerNginx|
|Programming language||PHP, Python|
|Database||MongoDB, MySQL, PostgreSQL|
|Caching tool||Redis, Memcached|
|Mobile app||Swift, Kotlin, Flutter, React Native|
App Development for Android/iOS
For an app, you’ll need to choose either native or cross-platform technologies. A native app will be of a higher quality, but if you need an app for both Android and iOS, you’ll need two apps written in Kotlin or Swift.
For a carsharing application, however, the possibilities of good cross-platform frameworks will be more than enough. I recommend Flutter, however, you can also use React Native for your application as well.
The cost of developing a carsharing app
The cost of developing a carsharing app depends on the complexity of the features and the hourly rate of your development team. Usually, the highest rates are charged by vendors from the United States and Western Europe. Companies in Eastern Europe have lower rates but the same level of professionalism.
Below is the approximate cost of developing a carsharing app. Note that these numbers refer to the cost of any native app, as basic functionality is quite similar for Android and iOS.
|Basic features||Estimate in days (min-max)|
|Advanced features||Estimate in days (min-max)|
|Admin panel||Estimate in days (min-max)|
|Reports & analytics||6–12|
Note that the car rental app development process also includes business analysis, project management, UI/UX design, and testing. Moreover, your app will require after-release support, which includes regular updates and ongoing maintenance.
The costs can go even higher if you request to build the app from scratch, which means developing a server that will provide complete control over the app (connect with the in-car system, track vehicle locations, store information, process user requests, etc.).
Now that you have the basic knowledge of how to start a car sharing business and an understanding of how the car rental process is organized, you can give your project the green light. Of course, it will require a lot of funding and planning. But if you do it right, you can generate good revenue just like existing carsharing operators do. Considering that carsharing goes hand in hand with mobile technologies, finding an experienced development team has to be your top priority. If you’re shortlisting development companies, we’ll be glad to help. Mobindustry is well versed in e-commerce, agriculture, healthcare, and tourism app development. Share your business idea with our team and we’ll provide you with an expert estimate for your carsharing app.