User story points are used for estimation because software projects are complex with many factors that make hour-based estimation inaccurate. Story points use a relative scale where user stories are assigned points based on their size compared to baseline reference stories. This allows for more accurate planning across sprints and continuous improvement of estimates as a team's velocity is tracked over time. The key aspects are regularly practicing estimation as a skill, having a shared understanding of baseline stories, and focusing comparisons only on effort required to complete stories.