Have light cast on an object visible, but the the object to be invisible
I know you want it in Cycles, though you can do it using Eevee:

The node setting:

The key point is to use &quot;diffuse&quot; and &quot;shader to rgb&quot; (the left part). This is some kind of preshading that allow to test the light intensity. This result is then tuned through a colorramp to mix between the lighted and transparent parts.