There are two primary types of search engine optimization (SEO) from which all other SEO-related things flow: on-site and off-site. On-site deals with those elements that exist on the client’s own website. It covers everything from visible content to the underlying code. Any additional SEO elements not existing on the client’s site exist elsewhere. They constitute off-site SEO.
Take note that on-site SEO is sometimes referred to as on-page or technical SEO. The ‘technical’ aspect comes into play when addressing those elements found under the hood, so to speak. A good example would be the permalink structure on websites powered by WordPress.