That's the cheap and easy way to do it. There are other ways too, involving separate phone lines and so on, but try this way first.
As ogletree said, you can have call tracking. You can have a different phone number per landing page, ad group, etc. Depending on how granular you want to track the data. It's common to buy a large amount of phone numbers for just a few months. Collect the data, turn off the numbers, and use that for bidding for a few months. After a few months turn them on again.
Some have different phone numbers per adgroup or engine.
There are some services that also do some sophisticated call tracking to try and determine what keywords/ad groups are sending the traffic. Understand the business rules before engaging in this type of tracking as you will have some error rates for many of these services. Just know you error threshold.
You can generate a code based upon the keyword/ad
copy/landing page that sits below the phone number. When someone calls, have the sales rep ask 'to best direct your call, can you please read the code below the phone number'. Record that number, rate the call, correlate the info.
You can use confidence timestamping looking at when calls happen vs when traffic hit your site and start to create confidence factors that this visit lead to a call. Easier with small amounts of visitors, almost impossible with a huge site.
You can be pretty creative with tracking calls, coupons, etc. It's a matter of dev, cost, internal training, time, and what info you need to know to make meaningful decisions.