たとえば動的なウェブページの表示に必要とされるJavaScriptで書かれたプログラムの中には、コメントもなく、スペースや改行なしで変数名なども極端に短く、可読性を欠いたようなコードとなっているものもあるが、これはファイルのダウンロードおよびウェブブラウザによるスクリプト解釈の高速化を目的としたミニファイ（圧縮）処理や、ソースコードを解析しづらくする難読化を行うプログラミングツールによって自動生成されたコードであり、変換元のソースコードがそのようになっているわけではない。人間が読むことを目的としていない、自動生成されたコードをスパゲティコードと呼ぶことはない。
スパゲティプログラムの要因.
goto文の濫用.
スパゲティプログラムを作り出す原因としてよく挙げられるのが、goto文の濫用である。（構造化以前の）BASICなどの言語にあるgoto文は、機械語やアセンブリ言語のアドレス指定ジャンプ命令に近い特性を持ち、無条件に指定した行番号の位置までジャンプする。これはサブルーチン（関数）やループなどの制御構文を利用した制御に比べ、処理の（素直な、上から下への）流れを混乱させる。離れた位置に書かれた行へ飛ばせるので、もちろんソースコードの可読性も低下させ、不具合や欠陥（バグ）を含んだコードを書いてしまう原因にもなる。
なお次のような場合、goto文を使うことが容認される場合や使わざるを得ない場合もあった。
グローバル変数の安直な使用.