Embeds_many vs separate table for child entitites

Hi :slight_smile:
Some context before the question: I am developing a phoenix API + Vue Frontend, which in short terms consists of inter-connected dashboards with widgets.

When developing ecto schemas, when do you decide on using embeds_many vs creating a separate table? E.g. in my case, I have widgets that have embedded items, which can be of multiple types (currently text or link items). The items are only edited from a list widget, but they can be moved between lists (drag and drop). Would you put these items in a separate table (either has_many or many_to_many) ?