I want to construct a website I'm building in a way that would distinguish between visitors coming from organic sources (e.g, Google search), and paid sources (e.g, Google adwords).
Whenever a visitor would perform some sort of action, it would carry a string that would help me identify the source. I'm using PHP, and I suppose I would construct the website this way:
A. In general, all internal links in the website would never carry a string in their URL, so by default, every action would carry some default variable.
B. for paid traffic, visitors would reach a domain.com/index.php?source=paid type url, which would modify the default string to something else.
My concerns:
Is this the best practice to do this?
How do I prevent Search engines form mistakenly index both index.php and index.php?source=paid, which could cause my website to allegedly have duplicate content and hurt my rankings?
for the whole website, I want to use some re-write rule, making my links look cleaner, e.g, domain.com/subscribe.php -> domain.com/subscribe, can this hinder anything?
Thanks!