There are two common approaches. Static numbers assign a different tracking number to each channel, such as one for print and one for a directory listing. Dynamic number insertion swaps the number shown on your website based on how the visitor arrived, so an organic visitor and a paid visitor see different numbers while the page looks identical. Calls forward to your real line and get logged with the source, and most platforms also record calls, which raises consent requirements that vary by state. Done properly, this closes the biggest measurement gap most service businesses have.
The caution is NAP consistency. Your Google Business Profile and your main citations should carry your real primary number, and Google supports adding a tracking number as the primary with your main number as additional, but swapping your real number out across directories creates exactly the inconsistency local SEO depends on avoiding. Keep one canonical number everywhere it is listed as your business number, and use dynamic insertion on the website layer. Then you can finally see whether the calls are coming from the map pack, the ads or the service pages.
Send the site over. We will tell you what is broken, what you could rank for, and whether AI search knows you exist. No charge and no pitch deck.