3rd-party tools in early-stage products on the example of own product
Tags: startup, productivity, tools, analytics
Published: 2022-07-12 17:04:53

For early-stage products, especially for startups, the pace of development is frequently one of the main factors of future success. There is no time to procrastinate — in today's world, everything changes very quickly, your unique idea may be implemented tomorrow by another team, or your potential customers will simply lose interest in your product.

Therefore you should use all possible ways to accelerate the pace of development without forgetting about the quality of the final product. One such way is to use 3rd-party tools. In this article, we describe which 3rd-party tools [we used in our product](https://daiquiri.team/cases/booklet-estate?utm_medium=referral&utm_source=dev_to&utm_campaign=3rd_party_tools) Booklet Estate and how we benefit from that.

3rd-parties in this article:
- [Google Maps](#google-maps)
- [MaxMind GeoIP](#maxmind-geoip)
- [Hotjar](#hotjar)
- [Google Analytics](#google-analytics)
- [Slack](#slack)
- [Payment system](#payment-system-liqpay)

## What does “3rd-party tool” mean, and why do I need it?

A 3rd-party tool means software developed for a specific purpose by another company or person: libraries, platforms, plug-ins, etc. The main potential benefits of using 3rd-party in your product:

- Reduction of development costs. Some 3rd-party tools are free; some can be paid by subscription, and some can be purchased for a lifetime. Either way, it can be much more cost-effective than creating your own solution.
- Significant acceleration of development processes. Integration with 3rd-party almost always takes much less time than your own functionality development. As a result, you test your product hypotheses much faster.
- Reduce product maintenance costs. The development team does not need to maintain a 3rd-party code base — this is the vendor's job.
- Sometimes the development team, for one reason or another, may be unable to solve the problem without using a 3rd-party solution. For example, the team does not have a specialist with the necessary competence, and it is impossible to hire him in a reasonable time. At the same time, integrating with 3rd-party is simple and sensible.

## Our experience in the Booklet Estate case

Shortly about the Booklet Estate itself to make its objectives clear. It's a SaaS solution where a real estate agent can enter a link to a listing on a real estate website and get a PDF presentation of that property. While creating a presentation, the user can edit the data about the listing and add their contact information. 

Booklet Estate is a small product for which we have currently spent about 500-600 hours of development. However, even in it, many tasks were more profitable for us to solve using 3rd-party solutions. Below we will talk about some of them.

### Google Maps

Mostly, people use the built-in Google Map in their contacts to show an address. But we needed other its features:

- Static map generation. The PDF presentations we create in our product display a map with the object. Maps are generated using the [Maps Static API](https://developers.google.com/maps/documentation/maps-static/overview). There is an opportunity to choose the scale, set the size, and put labels.
- We used Geocode to find the coordinates of a listing. The API by the listing's address gives the coordinates, using which we can generate a map and put a label.

As a bonus, Google Maps provides a $200 credit for each month. It will suffice with a margin of a small product. For us it is 50,000 generations of maps ($100) + 20,000 geocodes ($100).

### MaxMind GeoIP

It is [a service](https://www.maxmind.com/en/geoip2-services-and-databases) that can determine the user's approximate geolocation by IP address. There is a free version.

- In our product, we had the task of determining the user's country — Ukraine or other Eastern European countries. And for this, we used a free version of the MaxMind GeoIP database.
- It is better to update the database at least once a month. The Internet is changing so fast that a month-old database can provide outdated information.

### Hotjar

When conducting a sufficient number of user interviews is impossible, startups must collect passive feedback in the early stages. [Hotjar](https://www.hotjar.com/) is a "box solution". It is enough to correctly install the JS code on all product pages to start using it. 

- [Heatmaps](https://www.hotjar.com/product/heatmaps/) help assess the quality of UX solutions. They help to understand whether it is convenient for users to use the intended interfaces.
- [Screencasts](https://www.hotjar.com/product/recordings/) help assess the psychology of user behavior.
- In the [rage click](https://www.hotjar.com/product/recordings/) function, Hotjar determines when the user demonstrates his dissatisfaction with the product. For example, when they click the button many times. Such issues need to be worked out, and further related problems must be solved.

### Google Analytics

It is similar to Hotjar. It works out of the box and gives a powerful and comprehensive analysis of users. Therefore, [Google Analytics](https://analytics.google.com/analytics/web/) is a very useful tool for many early-stage projects.

- It provides information about the total amount of traffic on the site, its distribution by geo, gender, age of users, and other criteria.
- It is convenient and easy to log the completion of users' goals. You can also see the number of people who have completed goals in different segments: by geography, device type, and so on.

### Slack

We have many real estate website scrapers. Sometimes the site can change the HTML markup or enhance scraping protection.

We have created a script that checks the correctness of the scrapers. If any changes occur and the scraper no longer works, we send notifications to a specific chat in Slack. The responsible person sees the notification, makes changes, and fixes the scraper.

To call Slack API we use Slack [SDK](https://slack.dev/python-slack-sdk/). The SDK already has an HTTP client API implementation with authentication, methods, and error handling.

### Payment system: LiqPay

Almost every SaaS needs integration with the payment system. Of course, for large volumes of transactions, it is better to make your own to save on commissions. But startups don't have much time to develop it.

Therefore, the best option for us was to choose a time-tested payment system. For example, Stripe or PayPal. The advantages of such solutions are:

- Customer trust. Users are not afraid to provide their bank card details to well-known services.
- High reliability. The API of such services almost always works without failures.
- Time-proven APIs cause fewer problems with product development and maintenance of it.
- Support for payment by credit card, Apple Pay, Google Pay, cryptocurrency, and others simplifies users' payment process.

At the time of Booklet Estate development, Stripe and PayPal did not operate in Ukraine, so we chose LiqPay. This service is the most popular in Ukraine, has a high-quality API, elaborated documentation, a small commission of 2.2%, and works not only with Ukrainian but also with foreign banks.

## Is everything so good?

Of course, when using 3rd-party tools, you always take a risk because from now on, your product's efficiency, and ultimately success, depends not only on you. Here are the most important aspects that you should consider when deciding to use 3rd-party tools or when choosing between several options:

- Reducing development flexibility. Using 3rd-party tools, you impose certain restrictions on the development team. Even a tiny feature request can lead to high costs if you do not have enough functionality inside the 3rd-party tool at some point.
- Dependence on the vendor. At any time, 3rd-party services may stop working, and all you can do to solve the problem is wait. You can also write a lawsuit against the vendor. And wait even longer.
- Risk of rising costs. Free features can become paid, and paid features can rise sharply in price. Even worse — the vendor can close completely the access to the functionality you need.

## Bottom line

Of course, the sensible use of 3rd-party tools is an excellent option for early-stage products. With their help, you can get the needed functionality for the product while saving a lot of time and money and focusing on solving the most critical problems of the product. However, you should constantly assess the potential risks when using 3rd-party, and choose only the reliable ones that will not let you down at the right time.

If you need assistance in assessing your product’s technical stack or consult near cost-optimization, our service [“Technical Consulting”](https://daiquiri.team/services/technical-consulting?utm_medium=referral&utm_source=dev_to&utm_campaign=3rd_party_tools) might be a good idea for you 🙃