I'm currently investigating and preparing to add, quite soon, a tool to welcome and guide a first-time users to the service we are offering, show them around, and explain where is everything located.
For this purpose I am considering Intro.js (link), a light script that isolates elements of the markup and adds a tooltip to further expand on its use.
While trying to think of the steps and tips, I came to this question I now ask you: how long should a good onboarding experience be?
Eventually, it's a guided tour that you can stop at any time, but our clients are from a specific niche we assume would want to take full advantage of the service and therefore will go through all of it.
We have 4-5 key features we want to cover, and we will add a couple more over the next few months.
So, what do you think is the best experience for the first-time user (though any user will be able to go through it again by clicking the "Help" button):
A. One "long" tour, covering all the features but not going through every option.
or
B. Short separate guidance for each feature.
I'm leaning towards option A, to avoid interrupting the user workflow multiple times, but I would love to hear your opinions, or alternative solutions if you have some.
EDIT: it's worth mentioning that this project is more of a business-to-business service, where we don't have so much input that we receive from the user but rather tables with statistics, graphs, and so on, should this affect your reply.