Paul,
Firstly get a kitchen towel or clean terry towel and gently wipe the stain, if you get a transfer then the stain is oil based in which case use a solvent, if no transfer then you have a water based stain. In this case you will need some litmus paper and some de-ionised water. Wet part of the stain then use the paper to find the PH of the stain. If the stain is acidic use an alkali spotter, if the stain is alkali use an acidic spotter.
some stains such as ketchup are made up of oil and water, in this case always apply the solvent first then the protien spotter. Once a fibre is wet a solvent will not get to the fibre as it will just sit on the wet surface.
Mark