NocodeDB vs Baserow?

Hi Baserowers !

I am starting to build a web application with Weweb. I am trying to chose a service for my database that I want to self-host.

I found two solutions : Baserow and Nocodb. It seems that Nocodb is more advanced, so I would like to know why you think that Baserow can be a better solution in my case.

I have to mention that NocodeDB is soon proposing a Cloudron application like Baserow.

Best,

Bastien.

First of all, I would urge you to try out both Baserow and NocoDB! That would be the best way to figure out which tool is the best for you. I wouldn’t say that NocoDB is more advanced. The interface of Baserow is cleaner in my opinion, so some features might be a bit hidden away.

Out of curiosity, what kind of app are you building?

License

  • Baserow is licensed under the most permissive license there is, the MIT license.
  • NocoDB is licensed under the GNU Affero GPL v3.0 license, which is more restrictive and always requires you to disclose any modifications you make to the code.

Functional

  • Baserow is a turn key solution where everything just works well out of the box. You don’t have to worry choosing and settings up a database. However, if your requirement is connecting to an existing database that already has tables and columns, then NocoDB might be your preferred choice.
  • NocoDB is focussed at more technical users, you clearly see that when you’re creating columns because you have the option of primary keys, unique, etc. Baserow is made to be as easy as possible for non technical users, offering a user experience that’s more like Airtable.
  • Baserow supports real time collaboration. If you’re working with multiple users on the same data, you can see the changes the other users are doing in real time.
  • Baserow supports real time filtering and sorting. When you change the value of a cell, Baserow will show a message indicating that the value doesn’t match the filters anymore.

Jan-24-2022 12-32-05

  • Baserow has a more spreadsheet like experience where you can scroll through all rows without having to worry about pages.
  • Baserow is made from the ground up to support lots of data. We’re constantly improving the performance, but generally having 100 fields in combination with 100k rows should work fine.
  • It’s possible with both Baserow and NocoDB to share a view publicly. NocoDB supports password protection, Baserow supports real time updates. When you make an update, it will immediately be visible to the visitor.
  • It’s possible with both Baserow and NocoDB to create forms.
  • With Baserow, you can drag and drop everything in the desired position (databases, tables, fields, views, rows, etc). As far as I could see, this is only possible with the tables in NocoDB.
  • Baserow has a lot of templates that you can install with one click (https://baserow.io/templates/). They even work in the self hosted version.
  • With both Baserow and NocoDB It’s possible to create webhooks. Baserow with a nice UX where you can see the example payload and trigger tests, NocoDB supports conditional web hooks.
  • Baserow has a trash can. Everything you delete ends up in there and will permanently deleted after a certain period. This is useful if you accidentally deleted something or if you need to restore it later.
  • It’s slightly easier to setup persistent storage with on S3, DO Spaces, etc because NocoDB has easy to install apps. With Baserow you need to change some environment variable settings in order to achieve the same.
  • Both Baserow and NocoDB support different languages. I tried German and Dutch in NocoDB and most of the text remained in English. With Baserow we only support French for now, but I’m sure that 99.9% of the text will be translated when you switch.
  • NocoDB doesn’t have advanced filters like filtering on a relationship that you’ve made with another table, or on file type.
  • With Baserow you can preview uploaded files directly without leaving the page.
  • Baserow has a nice formula creating/editing mode where you can see all the available fields and functions.

  • With Baserow you have more ways of importing data. We support CSV, XML, JSON, copy and paste. NocoDB just supports CSV as beta.
  • Baserow also has a Kanban view, although that’s a premium feature.
  • Both support row comments, although it’s a paid feature is Baserow.
  • It’s possible to do every action, that you can do via the interface, via the API with Baserow (https://api.baserow.io/api/redoc/). I wasn’t able to find API docs of NocoDB, other than their data API. Baserow also has nice auto generated API docs for your table https://baserow.io/api-docs/.

Technical point of view

  • Baserow supports PostgreSQL because it’s the most powerful relational database engine and we don’t want to be hold back by supporting other less powerful relational databases engines.
  • Baserow has a lot of automated tests, well over a thousand. This is make sure that if we make a change in the code, we know everything still works and we don’t accidentally break something. This approach is more work, but it will result in less bugs and stable software.
  • Baserow uses Celery, that allows us run asynchronous tasks, like creating a large export and call web hooks without affecting performance.
  • Baserow uses Redis caching to improve performance.
  • It’s possible to scale Baserow horizontally in your data center. This means that you can run it at scale with a lot of users. Just add more servers when you need it.

I’m sure that there are lots of other smaller differences, and both Baserow and NocoDB will change a lot in the next couple of months. We’re always clear which features you can expect via our roadmap. Finally we use an open-core commercial approach as we offer a paid premium version. By doing this we can and have hired a number of experienced full-time developers. These extra developers mean that the open-source free version gets more features faster compared to just me working solo on Baserow with open source contributors contributing in their spare time.

4 Likes

I tried both of them…
I first found NocoDB and was very impressed by what it could do. They had an easy working docker image to selfhost it. But…, and I have to say i was one of the first users when they changed their name, i lost all my test data. Couldn’t get it back, didn’t know what happened.

So i became very worried what would happen if I used it for serious projects. In the meantime NocoDB has had a lot of development so maybe it won’t happen anymore.

By then I had discovered Baserow. From the first moment i liked the UI very much even before i used it. After that I was really impressed by what it could do. It fits all my needs. Together with a great extension that makes working with Baserow very easy in App Inventor or Kodular it is ideal for me. I know there is a Docker image coming so things can only get better and better.

Glad to hear that you like Baserow @Peter! We spend a great deal of time of the UI and UX. Every small detail matters to us.

When did you first discovered NocoDB, before it was renamed?

No just after. First it was called XgeneCloud. Even the images/videos on the website showed this name. They had kanban and calendar options according to the website but that was no longer present in the first version of NocoDB. So they stripped it down.

Thank you very much for this complete answer. I am trying to build a directory of private tutors, with students being able to reach them once connected. This is a two-side users webapp. I would like to use Weweb + Baserow instead of Softr + Airtable, even if I could build my MVP on Softr.

Debate might be ended, I tested both and was also very impressed by NocoDB, discovered after Baserow, and was thinking to stick with NocoDB.

What pushed me back on Baserow was the following (subjective opinon) :

  1. Stability : Baserow is a lot more stable (imho) than NocoDB. if you open up your console in NocoDB you’ll see a bunch of errors flooding it, even when it seems to work well. That’s a orange (if not red) flag for me. I won’t say Baserow is perfect, but it just works, and I had less trouble to setup and using on a daily use.
  2. Roadmap and sustainability : while Baserow started recently contrary to NocoDB, the gap in feature is so close that both are proposing 90% of what a company need in terms of online database edition (if Baserow has not sometimes take the lead, I think permissions are right now more granular in Bsr). Furthermore, the open-core business model used by the Baserow company is quite reassuring for a company, while I don’t know how NocoDB development is financed (but I may have missed something). Baserow started from the beginning to announce a Free-Premium-Enterprise subscription model, while NocoDB has just nothing (for their defence, they have launch a NocoDB cloud Beta recently, which is for me a sign that the sustainability was finally raised). Quite interesting to look at Linkedin figures in terms of number of employees : Nocodb vs. Baserow. If I am a company, I more willing to pay for a less-know software that’s maintained by a sustainable business, and I furthermore may not have the time/money/skills to deploy it myself
  3. Community : only part on which NocoDB overflows Baserow. A debate was raised recently about moving the project to GitHub, which may help increasing visibility for it.

Sorry to revive this conversation, hopes it brings some valuable elements.

4 Likes

Hello @dynnammo, thanks for sharing your opinion. I believe it is a very useful comparison and might help future readers to make the right choice.

It’s important to point out here that we use different platforms as the main place for communication with our communities, and it may influence the initial impression about the activity and engagement of a community (Discord vs forum).

2 Likes

I’d like to contribute to this topic by including a lot of information that wasn’t posted here.

1. While Baserow works with PostgreSQL, but NocoDB has works with Mongodb, PostgreSQL etc.

2. Another difference is in the name.

3. NocoDB is hosted on GitHub, and Baserow is hosted on GitLab. Some developers like GitHub(NocoDB) better, some developers like GitLab(Baserow) better etc.

4. Baserow works through a cloud business model, while NocoDB has not yet defined which business models to hold.

5. NocoDB is maintained under the AGPL license, and Baserow is maintained under the MIT license.

6. NocoDB works with Zapier, I still haven’t found how to use Baserow with Zapier.

It’s possible to integrate Baserow with Zapier: Baserow Integrations | Connect Your Apps with Zapier.

Nocodb has rich text support versus baserow which does not?

Hello @ajitgoel, we don’t have them yet, that’s correct, but we plan to add rich text support for the long field type soon. :slightly_smiling_face:

While I appreciate Baserow’s Realtime Collaboration, I’ve noticed a higher CPU usage on Docker-compose compared to NocoDB, raising concerns for production use. Moreover, Baserow’s premium plan restricts crucial features, unlike NocoDB, where they are more accessible without additional costs. Deciding between the two based on these considerations.

Ah, thanks Olga, Can you tell me what is soon? Thanks!

We should have it in Baserow within the next 2 months. I will let you know here when someone from the development team starts working on this feature so you can have a more precise estimate of its release time. :pray:

2 Likes

I spent couple hours with NocoDB and Baserow. My findings:

Both systems are great.

Baserow community appears to be more responsive.

Baserow has nice way to aggregate columns in the footer. With NocoDB I can’t sum up all numbers in the columns. The docs said something about roll up, but I was unable to figure out. In baserow it’s done in 2 clicks.

I haven’t figured it out fully, but looks like Baserow has convenient notifications, and NocoDB doesn’t

I’m looking to have an option to bulk edit values, for example, in all shown rows, set value to “STARTED”. NocoDB has it in paid tier. Looks like Baserow doesn’t have it at all.

NocoDB appears to be lighter, use less RAM, appears to be designed simpler.

NocoDB has more features included in free tier:

  • audit logs
  • row comments
  • Kanban board
  • not sure, if SSO included.

NocoDB has more data types supported. For example, I was looked to have a field where user will enter Year and Month (no day). Only NocoDB has it.

Also, I’m curious about announced App builder. It can be really big and convenient feature.

Hi @slavik, thank you for sharing your observations. Baserow is indeed a bit heavier to run, but that’s because more is happening under the hood. On first run, it will install the templates, by default it will allow multiple concurrent API connections, it has real-time collaboration, trash bin functionality, undo/redo, and more features that run async tasks in the backend. If you like, you can add the environment variables BASEROW_RUN_MINIMAL=yes and BASEROW_AMOUNT_OF_WORKERS=1 to make Baserow run with less resources.

2 Likes