add force not always consistnt

if (touch.phase == TouchPhase.Began) {

rigidbody.AddForce (arrowdirector.transform.forward * -500);

when i touch the screen i want this object to shot a certain distance.
It is not consistent. some times it shoots across the screen, sometimes it shoots a very small amount.
arrowdirector.transform.forward is an spawn sitting at a 45 degree axis on the y.

Try using ForceMode.Impulse mode, as in:

rigidbody.AddForce( arrowdirector.transform.forward * -500, ForceMode.Impulse );

yes i am using Fixed Update.

I am using Impulse mode now . same issue now joy

function FixedUpdate () {
if (Input.touchCount ==1){
var touches = Input.touches;
for ( var touch in touches) {
if (Input.touchCount ==1){

   if (touch.phase == TouchPhase.Began) { 
           rigidbody.AddForce (arrowdirector.transform.forward  * -15 , ForceMode.Impulse);

this is what i have so the chip will shoot halfway across the screen. sometimes it does , sometimes it shoots just a fraction.