The guiding principle is that the team building a particular micro frontend shouldn’t have to wait for other teams to build things for them. If every new feature added to a micro frontend also requires backend changes, that’s a strong case for a BFF owned by the same team.
If we have separate teams working independently on frontend applications, what about backend development? I believe strongly in the value of full-stack teams, who own their application’s development from visual code all the way through to API development, database and infrastructure code. One pattern that helps here is the BFF pattern, where each frontend application has a corresponding backend whose sole purpose is to serve the needs of that frontend. While the BFF pattern might originally have meant dedicated backends for each frontend channel (web, mobile, etc.), it can easily be extended to mean a backend for each micro frontend.