엘니뇨는 원래 남미 페루 연안에서 바닷물의 온도가 매년크리스마스 경이 되면 올라가는 계절적 현상을 일컫는 말이었다. 바닷물의 온도가 올라가면, 물고기 떼가 연안바다에서 다른 지역으로 이동하고 비가 많이 내리므로 어부들은 출어를 포기하고 가족들과 함께 크리스마스를 즐겼다. 때문에 이런 현상을 '아기 예수'라는 의미를 가진 스페인어의 엘니뇨 (원래는 남자아이라는 뜻)라 불리게 됐다. 이러한 현상은 보통 한달 가량 지속된다. 그러나 최근에는 겨울마다 나타나는 계절적인 현상이 아니라 수개월 이상 바닷물의 온도가 높은 현상이 계속되는 현상을 특히 엘니뇨라고 부른다.
관측에 따르면 엘니뇨현상은 페루 연안에만 한정돼 있는 것이 아니라, 날짜 변경선부터 페루 연안(거리 약 1만km)까지 적도지역 태평양의 해수면 온도가 높아지는 매우 큰 규모의 현상임이 밝혀졌다. 학자들은 현재의 해수면 온도에서 평균값을 뺀 편차를 가지고 엘니뇨를 정의한다. 열대 태평양 지역의 해수면 온도가 6개월 이상 평년 수온보다 0.5℃ 이상 높은 경우 엘니뇨라고 정의하고, 이와 반대로 0.5℃ 이상 낮은 경우는 라니냐(스페인어로 여자아이)라고 정의한다. 즉 엘니뇨와 라니냐는 동전의 앞과 뒤라고 할 수 있다. 라니냐는 학자에 따라 이상 저온 현상, 엘비에조(노인이라는 뜻), 반엘니뇨 등 다양한 이름으로 불린다. 한편 엘니뇨는 이상 온난 현상이라고도 불린다. 또 엘니뇨는 해양의 크기가 태평양에 비해 작은 대서양이나 인도양에서는 나타나지 않는 것이 특징이다.