Japanese Language Stack Exchange is a question and answer site for students, teachers, and linguists wanting to discuss the finer points of the Japanese language. It's 100% free, no registration required.

They both seem to mean something like "from the start/to begin with/originally" in dictionaries, but I believe their usage differs. I've seen numerous explanations by searching:

The accepted answer at this Chiebukuro page says that it's a difference of time for もともと and logic for そもそも.

This page says that そもそも, but not もともと can be used for expressing the essence of things or for criticizing other people, and that the former is subjective and the latter is objective.

Another page in that same thread says that もともと is the state before a change, and そもそも is used for how things come about/the essence of the situation etc.

While dictionary definitions for もともと and そもそも are very similar, I think the examples there are making me lean more towards the second explanation, but I think there also might be some other ways which they differ.

All sentences above roughly mean "it's my house, so you should leave". But the implied reasoning is subtly different. In (1), the implied reason is that "This has been my house (i.e. history), so you should leave". In (2), the reason is "This is by logic (e.g. legally) my house"

In (3), the implied reason now changes to "This house had been and is mine, so you should leave". Now, (4) sounds a bit weird because そもそも implies logical ground, yet the speaker is using past tense. That draws attention from the listener because it implies that that particular logic does not stand anymore. Why would somebody leave the house if the logic is not valid anymore?

そもそもこれは俺の家だったんだけど、売ってしまった -> good

The above sound again ok, because it merely states that by logic that house had been this persons, but now it is not anymore.