Services like CallRail or Twilio let you assign a unique tracking number per channel (one for Google Ads, one for Facebook, one for organic/direct, etc). Whoever calls that number gets logged with source data, and you can even set it up so the number dynamically swaps based on which ad or page they came from, so you know exactly which campaign drove which call. The copy-paste-into-their-own-email-app behavior you're describing is actually the harder one to solve for, cause there's no click to track. Put a unique-per-channel email alias on each landing page or ad (like waterproofing-fb@theirdomain.com vs waterproofing-google@theirdomain.com), so even if they type it manually, which inbox it lands in tells you the source. Or, put the phone number and email inside a UTM-tracked landing page as an image instead of live text, forcing them through the page's own tracked click instead of grabbing the raw text off the page directly.