This function check which species (both plants and animals) are considered "invaders" somewhere in the world.

For that end, it checks GISD ( and returns a value, either "Not in GISD" or the brief description presented in GISD.

Note that the webpage contains more information. Also note that the function won't tell you if it's exotic in your area, a lot of exotic species are not considered invaders (yet).

As expected, the function is as good as the database is, which I find quite reliable and well maintained. The database is also able to recognize a lot (but not all) of the species synonyms.

Note that eol with source of gisd or gisd100 may end up with different results as this function goes directly to the GISD website, whereas EOL only updates their GISD data occassionally. See notes in eol.

gisd(x, simplify = FALSE, messages = TRUE, ...)



character; a vector of scientific species names in the form of c("Genus species").


logical; returns a data.frame with the species name and the values "Invasive", "Not in GISD". I recomend to check first the not simplified version (default), which contains raw information about the level of invasiveness.


logical; If TRUE (default), informative messages printed.


curl options passed on to HttpClient


A list with species names, native range countries, and invasive range countries


Ignasi Bartomeus [email protected]


if (FALSE) { sp <- c("Carpobrotus edulis", "Rosmarinus officinalis") ## first species is invasive, second one is not. gisd(sp) gisd(sp, simplify = TRUE) sp <- c("Carpobrotus edulis", "Rosmarinus officinalis", "Acacia mangium", "Archontophoenix cunninghamiana", "Antigonon leptopus") gisd(sp) gisd(sp, simplify = TRUE) }