Let the data tell the story of your ICP! Use your existing customer base as a starting point. Take your best customers and look at them in aggregate - what patterns emerge across industries, company size, tooling adoption, maturity indicators, etc.? From there, you have a great base to help inform outbound targeting efforts.
If you're starting from scratch, then lean on internal expertise across the org (Sales, Product, Exec) and market data to build your hypothetical ICP. From there, you can validate with external research, or test via ABM programs.
In either case, it's all about finding a diverse set of data sources, letting that data guide you to a hypothesis, and continually testing and iterating.