Configure la tabla de referencias de la siguiente manera:
referrals:
id (primary key)
referrer_id (user who is referring someone else)
referred_email (email of person being referred)
status (referred[default], registered)
created_on
updated_at
Siguiendo la política "no confíes en nadie", no debes usar el nombre como campo en las referencias. P.ej. Envío una referencia:email=>your_email, name=>abuso . Te degrada.
Por contar no. de referencias:
select count(*) as referral_count from referrals where referrer_id = 'user_id'