user37426: I would like to measure the amount of power used by a 3w bulb. I am using a 9v battery to power the bulb and an acs712 current sensor to get current usage. However, i get no change in values after i connect the load and it light up. 
Is my current sensor faulty or? I'm confused.

user4143: For such light and low-voltage loads you wouldn't normally use a mains rated high current amplifier like this.
Instead you would just use a simple shunt resistor in the low-side of the circuit:

simulate this circuit – Schematic created using CircuitLab
The voltage dropped across the resistor (and hence the voltage you will read on A0) is proportional to the resistance of the resistor and the current flowing round the circuit.
You want the resistor to be small enough that it doesn't overly affect the operation of the circuit, yet large enough that it drops a voltage you are able to sense at enough resolution.
For example the 1Ω resistor above, with 333mA round the circuit (3W at 9V) would drop (V=IR) 0.3 * 1 = 0.3V.
While that's not a very high voltage it's small enough to not really affect the circuit, and you can increase the sensitivity of the Arduino by using the 1.1V internal reference instead of relying on the default 5V external Vcc voltage:
analogReference(INTERNAL);

Or on the Mega2560:
analogReference(INTERNAL1V1); 


37426: <p>I would like to measure the amount of power used by a 3w bulb. I am using a 9v battery to power the bulb and an acs712 current sensor to get current usage. However, i get no change in values after i connect the load and it light up. 
Is my current sensor faulty or? I'm confused.<a href="https://i.stack.imgur.com/u7Xfb.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/u7Xfb.png" alt="The image describes how i have set up my connection"></a></p>
 4143: <p>For such light and low-voltage loads you wouldn't normally use a mains rated high current amplifier like this.</p>

<p>Instead you would just use a simple shunt resistor in the low-side of the circuit:</p>



<p><img src="https://i.stack.imgur.com/EbNkH.png" alt="schematic"></p>



<p><sup><a href="/plugins/schematics?image=http%3a%2f%2fi.stack.imgur.com%2fEbNkH.png">simulate this circuit</a> &ndash; Schematic created using <a href="https://www.circuitlab.com/" rel="nofollow">CircuitLab</a></sup></p>

<p>The voltage dropped across the resistor (and hence the voltage you will read on A0) is proportional to the resistance of the resistor and the current flowing round the circuit.</p>

<p>You want the resistor to be small enough that it doesn't overly affect the operation of the circuit, yet large enough that it drops a voltage you are able to sense at enough resolution.</p>

<p>For example the 1Ω resistor above, with 333mA round the circuit (3W at 9V) would drop (V=IR) <code>0.3 * 1 = 0.3V</code>.</p>

<p>While that's not a very high voltage it's small enough to not really affect the circuit, and you can increase the sensitivity of the Arduino by using the 1.1V internal reference instead of relying on the default 5V external Vcc voltage:</p>

<pre><code>analogReference(INTERNAL);
</code></pre>

<p>Or on the Mega2560:</p>

<pre><code>analogReference(INTERNAL1V1); 
</code></pre>
