When manually programming on a teach pendant, you typically record a point when the robot visually touches your desired location.
So when it comes to Offline Robot Programming (OLRP), the Tool Center Point (TCP) is what defines the exact working point of the robot; it is the point used to determine the robot's positional coordinates. The TCP is driven to the exact recorded point location. Therefore, to be successful with OLRP, having a correctly set TCP is of critical importance.
If using a welding torch, you must first cut the torch wire to the length at which the TCP was recorded for the tool frame being used. Failing to cut the wire will result in the recorded points being offset by the amount the wire length was off from its original TCP. For example, if the TCP was recorded with a wire length of 15 mm, but the calibration being performed is at a wire length of 7 mm, the calibration has a high risk of being offset by the difference of 8 mm.
If using a spindle or any other End of Arm Tooling (EOAT), ensure the correct tool frame is being used for the corresponding physical tool bit, or the TCP has been identified using other means (i.e. grippers might use an object as a point of reference in the jaws / teeth).
The TCP can be checked for accuracy by choosing any sharp point within reach of the physical robot. For example, a TCP could be checked on the sharp point in the image shown below. The robot can then be jogged about the tool frame, verifying that no deviation from the point occurs.