Some sources say that gametes are haploid, some say that they are diploid.
Actually there is some confusion here, and that's quite excusable, because it's extremely common reading that monoploid and haploid are synonyms and have the same meaning. However, they are different terms. According to Hartl and Ruvolo (2012):
The potential confusion arises because of diploid organisms, in which the monoploid chromosome set and the haploid chromosome set are the same.
As we, human beings, are diploid organisms, it's easy to see why haploid and monoploid ended up being considered as synonyms.
However, a more precise terminology would be:
That being said, diploid and haploid are not antonyms nor mutually exclusive terms. A cell can be diploid and haploid at the same time. Let's exemplify this with organisms that perform gametic meiosis:
Human beings have diploid somatic cells, with 46 chromosomes. When a somatic human cell perform meiosis, it produces haploid cells which are monoploid. Human gametes are haploid and monoploid.
In wheat (Triticum aestivum), somatic cells are hexaploid, having 42 chromosomes (that is, 6 full sets of 7 chromosomes). When a wheat cell perform meiosis (producing micro and mega spores, and later on gametes), it produces haploid cells which are triploid. Wheat gametes are haploid and triploid.
The same whay, a tetraploid organism would produce, by meiosis, a cell which is haploid and diploid. Thus, depending on the number of chromosome sets in the somatic cell of a given species, you can say that a gamete is diploid (as stated in this other answer).
In a nutshell, a gamete that was produced by meiosis (there are life cycles where the gamete is not produced meiotically) is always haploid, regardless the number of chromosome sets it has (which will determine if it is monoploid, diploid, triploid, hexaploid etc...).
It depends on the organism in question. (https://en.wikipedia.org/wiki/Polyploid#Examples)
Notice that the gametes carry half number of copies of the normal cells. As such a tetraploid organism will have diploid gametes.
Don't get confused by the number of chromosomes. Haploid refers to 1 set of chromosome, diploid refers to 2 set of chromosomes, triploid means 3 set of chromosomes. They don't represent the numbers of chromosome present on a set.
We human beings have 23 chromosomes on a single set. We are diploid organisms and thus all the cells of our body carries two set of chromosomes (thus 23*2=46). Our germ cells however are formed through meiosis cell division and thus they are haploid (23 chromosomes).
So, sperm cell carries 23 chromosome and egg carries 23 chromosome each. When they fuse, zygote is formed and as you can see, zygote carries 23+23=46 chromosomes. Zygote undergoes mitotic cell division and a complete human is formed. So, human zygote definitely is diploid.
Gametes must be haploid because they will be combining with another gamete. Sexual reproduction works to increase genetic diversity by having two haploid gametes combine to form a new organism that has a different combination of genes than either of its parents. The new organism has half the chromosomes from its mother and half from its father.
Source from Chromosomes and Meiosis Interactive
For example, in order for humans to reproduce, a sperm cell must fuse with an egg cell, producing a zygote that has a unique set of genetic information. If the gametes were diploid instead of haploid, the resulting organism would have too many chromosomes. By having two haploid gametes fuse together, it is ensured that the new organism will be genetically distinct and still have the correct number of chromosomes that it needs.