Er zijn ook momenten waarop de broncode van een softwareproduct niet zo eenvoudig in een artefact kan worden omgezet. Als een applicatie bijvoorbeeld is ontwikkeld door één persoon die geen toegang heeft tot een grote hoeveelheid expertise of kennis op het gebied van software-engineering, kan het bouwen van de applicatie een langdurige en arbeidsintensieve taak zijn. In dit geval zal de engineer niet alle moeite willen doen om een custom build te schrijven waarin hij of zij alleen zou gebruiken voor de specifieke applicatie die wordt ontwikkeld. Als de broncode voor een softwareproduct bijvoorbeeld is ontwikkeld voor een bepaalde mobiele telefoontoepassing, zou het moeilijk zijn voor een ingenieur om een aangepaste versie te bouwen die goed werkt op die specifieke mobiele telefoontoepassing. In dat geval zou de ingenieur waarschijnlijk liever een ingebouwde tool gebruiken die speciaal voor dat specifieke product is ontworpen.
Over het algemeen zijn build-tools tools die het proces van het bouwen van softwareproducten automatiseren. Ze worden doorgaans voor verschillende doeleinden gebruikt. Handmatige builds worden gebruikt om applicaties te maken die niet veel programmeerkennis vereisen en handmatige builds worden meestal gebruikt door degenen die de broncode moeten wijzigen. Handmatige builds worden ook gebruikt wanneer er geen automatisering nodig is en wanneer een ontwikkelaar de bestaande broncode wil wijzigen zonder de applicatie helemaal opnieuw te veranderen.
.