Programele de tipul Customer Relationship Management (CRM) sau Managementul Relaţiei cu Clienţii, ajută la gestionarea şi organizarea procesului de relaţii cu clienţii existenţi şi posibili, incluzând aici informaţii despre clienţi, istoricul acestora în relaţia cu compania dar şi creează posibilitatea interacţionării cu aceştia prin intermediul vânzărilor, tehnicilor de marketing, suportul tehnic şi comercial (spre exemplu: call center) şi managementul produselor aflate în service. De regulă, software-ul CRM este folosit pentru îmbunătăţirea şi optimizarea serviciilor oferite clienţilor şi pentru creearea de campanii de marketing direct, personalizate pentru nevoile fiecărui client în parte, în funcţie de istoricul şi de preferinţele acestuia, spre exemplu campanii de SMS marketing, e-mail marketing sau tele-sales.
Pentru a putea beneficia de toate avantajele folosirii unui astfel de program, nu este suficientă o simplă instalare a programului, ci necesită o instalare personalizată pentru fiecare companie în parte, în funcţie de contexul în care aceasta îşi desfăşoară activitatea şi în funcţie de nevoile clientului final al acesteia. Astfel, fiecare companie în parte are nevoie de diferite informaţii despre clienţii săi, informaţii pe care le culege într-o bază de date prin intermediul unei interfeţe de interacţiune cu clientul (formulare de înscriere şi diferite sondaje de pe site-ul companiei, campanii de strângere de contacte face-to-face, fie cu ajutorul operatorilor pe teren, fie direct din reprezentanţa companiei, etc.). Spre exemplu: o companie care comercializează produse de lux va fi interesată să cunoască şi venitul clienţilor săi pentru ca, în cazul unei viitoare campanii publicitare, aceasta să vizeze strict segmentul ţintă.
O altă condiţie pentru exploatarea la capacitate maximă a acestui tip de programe este nevoia de instruire a angajaţilor în folosirea acestora. Programele CRM oferă posibilitatea accesului diferitelor categorii de angajaţi dintr-o companie şi permite setarea acţiunilor pe care aceştia le pot face în cadrul programului. Pentru folosirea eficientă şi eficace a programului este necesar ca fiecare angajat să cunoască în detaliu fiecare acţiune pe care poate şi trebuie să o facă, cum trebuie să facă raportările către superiori şi cum trebuie să comunice cu ceilalţi angajaţi care sunt condiţionaţi de munca sa. Totodată, cei care coordonează munca angajaţilor trebuie să cunoască foarte bine programul astfel încât să poată reacţiona rapid în fiecare situaţie care se poate ivi. Astfel, aceştia din urmă trebuie să înţeleagă însemnele care îi anunţă că au primit fie o raportare de la unul din angajaţi, fie un nou task de la superiorii săi, fie că se apropie un termen limită al unei acţiuni sau că are la rândul lui, de trimis o raportare către superiori. Fiecare angajat are un anume tip de permisiuni de accesare, modificare şi creeare de fişiere, astfel conturându-se şi funcţiile de securitate ale programului, angajaţii cu cele mai puţine permisiuni neputând compromite din reavoinţă activitatea companiei prin ştergerea de date vitale acesteia.
Ideea de personalizare a programului în funcţie de angajatul care îl foloseşte se poate dezvolta prin creearea de pagini de acces diferite pentru fiecare categorie de angajaţi în parte. Conducerea stabileşte la începutul implementării programului, permisiunile pentru fiecare categorie de utilizatori în parte. Astfel, se stabilesc informaţiile la care are acces utilizatorul, ce tipuri de fişiere poate modifica şi salva, cui poate trimite raportări şi de la cine poate primi task-uri, fără a-i fi afişate informaţiile şi opţiunile la care nu are acces.