Exported n8n workflows don't import into other n8n accounts as expected

When I share my n8n workflows with others, and they import them into their n8n accounts, often the workflow doesn’t get imported or copied in exactly as I’m expecting.

For example, sometimes nodes are missing, or the configuration of certain nodes isn’t as it was when I exported.

Is there a technique or suggestion as to how to more perfectly share workflows with others? For example, does my version of n8n need to be the same as their version?

What am I missing?

There are mainly 2 core types of versions, n8n and nodes(as far I know).

It means n8n has its own version, and the nodes have as well versions, afterwards there are community nodes if are not installed when you copy/paste an workflow, you get not connected nodes with ‘?’ sign on them etc…

What is the right way to specify a share a workflow with others in my documentation?

Should I also put in the documentation what version of n8n I exported it with?

Honestly, it would be great to add as much informations about the instance and worflows.

The more info the user has, easier/faster will be to DEBUG in case of errors.

P.S usually I use the n8n CLI to export/import workflows and never had any kind of issue.