While every company has different needs the two most common ways to decide who to send NPS surveys to are
Periodically send to a subset of people
This is the most popular method where you take your entire list of users or customers and divide it into 12 groups, then send an NPS survey to one of the groups every month. You can choose a different cadence (e.g. 52 groups, sent once a week) if you prefer.
This method will give you a long view of how your NPS score changes over time and allows you to segment the responses to different groups within your list.
Send after a key action
One alternative is to select a key action where you want to measure the NPS for people who recently took that action (e.g. after a purchase). This lets you measure how effective your business is at that moment in the user's journey and get feedback from people who recently went through this key action.
You can choose do either of these methods or use them in combination.