Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the astra-addon domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/ba7d8281-91b3-484c-bcff-c3268f765441/public_html/wp-includes/functions.php on line 6121

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the embedpress domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/ba7d8281-91b3-484c-bcff-c3268f765441/public_html/wp-includes/functions.php on line 6121

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the rank-math domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/ba7d8281-91b3-484c-bcff-c3268f765441/public_html/wp-includes/functions.php on line 6121

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the uael domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/ba7d8281-91b3-484c-bcff-c3268f765441/public_html/wp-includes/functions.php on line 6121

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wp_all_import_jetengine_add_on domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/ba7d8281-91b3-484c-bcff-c3268f765441/public_html/wp-includes/functions.php on line 6121

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wp-all-import-pro domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/ba7d8281-91b3-484c-bcff-c3268f765441/public_html/wp-includes/functions.php on line 6121
Home - CTFA

Encouraging a strong, united & responsible industry

The industry’s voice, committed to maintaining the high quality and safety of cosmetic and personal care products, allowing the South African cosmetic and personal care industry to flourish.

Committed to Maintaining High Quality and Safety

Influential

CTFA is the cosmetic industry’s voice in South Africa, committed to maintaining high quality and safety of personal care products.​

Expertise

We provide all the necessary policy, regulatory and technical expertise and advise on ingredients, labelling, packaging and product claims.

Dynamic

We are vibrant and dynamic, comprising of multinational giants, local brand owners and small entrepreneurial companies.

Supportive

CTFA supports a sustainable and respected South African cosmetic industry.

Become a CTFA Member

CTFA monitors and keeps members updated on the regulatory control of cosmetics. We provide technical expertise and advise on ingredients, labelling, packaging and product claims.

Scroll to Top