Mumbai is in the midst of a turf war between two gangs, collectively referred to as the Mumbai underworld when Satya (J.D Chakravarthy), a man without a past, comes to the city looking for employment. While waiting tables at the local dance bar, he gets involved in a scuffle with Jagga (Jeeva), bag man for dreaded don Guru Narayan (Raju Mavani). Jagga takes his revenge by getting Satya arrested on false charges of pimping. In jail, Satya clashes with yet another member of Mumbai's mafia, underworld don Bhiku Mhatre (Manoj Bajpayee), who is in prison pending trial for the murder of a prominent film producer. Mhatre, pleased with Satya's bravado, extends a hand of friendship and arranges for his release as well as accommodation. With Mhatre's help, Satya avenges himself by gunning down Jagga in the very same dance bar and joins Mhatre's gang.

Before branching out on his own, Mhatre was part of a gang that included himself, Guru Narayan, Kallu Mama (Saurabh Shukla) and lawyer Chandrakant Mule (Makrand Deshpande). Bhau Thakurdas Jhawle (Govind Namdeo), presently a corporator in the Mumbai Municipal Corporation, was the gang leader. After Jhawle joined politics, the gang split into two with Kallu and Mule joining Mhatre and Narayan going his own way. While the gangs had carved out their own territories which were off limits to the rival gang, both still maintained a relationship with Jhawle. Jagga's assassination breaks the uneasy truce and Narayan reneges on his promise by attacking Mhatre's gang when they are out on business. Mhatre decides to kill Narayan but is forced to abandon his project at the last moment on orders from Jhawle; the murder right on the eve of the municipal elections would have triggered a gang war and would be detrimental to Jhawle's political prospects. Meanwhile, Satya, who has risen up the ranks and become a key decision-maker in the gang, has met and fallen in love with Vidya (Urmila Matondkar), an aspiring playback singer who lives next door, but has not informed her of his underworld connections. At one point he even threatens a music director and gets him to sign her up for a project, with Vidya being unaware of the entire episode.

Satya tells Matre, fuming over Jhawle's orders to stay away from Narayan, to ignore him and they assassinate Narayan. Mhatre is now the unchallenged ruler of the underworld and Jhawle, knowing that he needs Mhatre's help to win the elections, patches up with him. This is when the city sees the appointment of a new police commissioner, Amodh Shukla (Paresh Rawal). Shukla and his force begin targeting Mhatre's gang through encounters. Satya, seeing the situation getting out of hand, convinces the gang that the commissioner has to be eliminated and gets him killed. The police respond by intensifying the crackdown. Jhawle wins the elections thanks to Mhatre's muscle power as well as public anger on the brutal methods adopted by the police in its fight against organized crime. In the midst of this, Satya and Vidya decide to catch a movie. Inspector Khandilkar (Aditya Shrivastava), on the basis of a tipoff that Satya is present in the cinema hall, surrounds the premises and orders that all doors be shut. Satya fires a gun, triggering a stampede which results in many fatalities, and escapes with Vidya. But the man who did not fear death now fears for Vidya's life. He decides to quit the underworld and reveals his decision to Mhatre, who decides to send them to Dubai where they would be safe.

Jhawle holds a party to celebrate his victory and invites Mhatre, Mule and Kallu to attend the same. During the party, he shoots Mhatre dead for having disobeyed his order and sends Kallu along with Mule to kill Satya. Satya, unaware of Mhatre's death, runs off to Vidya and lies to her one last time, but has to flee when the police arrive. Khandilkar spills the beans in front of Vidya. Kallu returns to his headquarters, kills Mule instead of Satya, and informs Satya about Mhatre's fate. Satya takes his revenge by murdering Jhawle during Anant Chaturdashi celebrations, but suffers a bullet wound in the process. Kallu has arranged for himself and Satya to escape in a ship to Dubai. However, Satya insists that he needs to meet Vidya one last time before leaving.

Satya returns to Vidya's house to meet her but she refuses to open the door. He manages to break it open but Khandilkar, who had arrived to arrest him, shoots him down, having already shot and killed Kallu Mama. Satya collapses a few inches away from Vidya's feet and breathes his last.

"It ... struck me that you always hear about these gangsters only when they either kill or when they die. But what do they do in between? That was the first thought which eventually resulted in Satya."

Varma's views on the underworld do not conform to those depicted in mainstream films. According to him, unlike their portrayal in films like Deewar and his own Shiva "as men who rebel against injustice," gangsters are anything but. Instead, they are people with a violent streak. "I read a book called The Criminal History of Mankind where the author describes a criminal as child who refused to grow up. He doesn't abide by the laws of society. If he has physical strength, he uses it, if he doesn't, he becomes cynical and blames society all the time," Varma said in an interview to the Indian Express (1998). So in Satya he decided to treat killing as another nine-to-five business, with the gangster having a family and children. He too would have his fears, would feel pain, would be just as human as anyone else.[14]

In late 2006, Anurag Kashyap, script writer of the film, wrote two posts on his blog that gave an incomplete behind-the-scenes account of the idea behind and making of Satya.

“

How it began..Ramu was making Daud..there was a new actor he was working with..it was manoj bajpai..i was there when he took that shot of Paresh going crazy and Manoj appearing from behind the door..Ramu fell in love with the shot..he fell in love with the actor..he fell in love with his intensity..he wanted to make an underworld film with him..he wanted to put Howard Roark in the underworld..thats how Satya started.[15]

”

Every character in Satya was based on someone Varma had met or heard about; some belonged to the underworld, others didn't. "Everyone had a reference point."[13] And the plot itself had multiple influences. One of them was a criminal Varma met in a court. The man was charged with multiple murders, but had found the time to fall in love with a lawyer when he was attending proceedings. The man told Varma how he committed his first murder. At the end of his encounter, Varma held on to three things: "it took him half an hour to brace himself before the killing, he had high fever for three days after he gunned down his first victim. And the fact that he is in love with somebody." These elements found their way into the film.[14][16] In the film, Vidya does not know until the very end that Satya is a gangster. This aspect was inspired by the story of a man who used to live in the same building as one of Varma's friends. The man and the friend would sometimes bump into each other in the lift and exchange pleasantries. Later Varma came to know that the man had been arrested for a murder he had committed somewhere in Karnataka, and had been an absconder all this time. "[T]he thing about Bombay is that you may live for ten years as neighbor to somebody yet have no idea who he is," his friend had told him.[13]

Bajpai played Bhiku Mhatre

The character of Bhiku Mhatre (named, according to Kashyap, after someone who served coffee) was conceived as "an anti-social element [who] lives by his own rules and [who] would not abide by the social rules and systems," a law unto himself.[13][17] Even his questions would sound like statements because his "pride wouldn't allow him to make anyone feel that he doesn't know about something."[13] The scene where Bhiku grieves over Chander's death by abusing him is based on a real-life incident Varma heard of. "A gangster lives on power" and Chander gets himself killed by not listening to Bhiku, thus taking away Bhiku's power to save him. "Grief [coming] out as anger. I took that as the soul [of] Bheeku Matre's character."[13]

"The way he sits on a chair, the way he laughs, his general behavior… there will be a certain wildness about it. There is a difference in the look between the domestic cat and a wild cat; the eyes just give it away. Bheeku Matre should be like a wild cat."[13]

Kallu Mama's character was based on an ex-gangster Varma met in a bar and whose behavior made him feel uneasy. But that feeling was absent the next time Varma met this person; he was very friendly. It was then that Varma realized that the man had created a false persona the first time around and "[had been] trying to play up to an image which he thought I had of him because he knew that I knew who he was." Kallu behaves in a similar manner in the film. He puts on a gangster act when a builder comes to see him temporarily hiding the fact that "he is a clown in the gang."[13]

Chander's character was based on a man who "supposedly belong[ed] to Arun Gawli’s gang." Varma had heard a lot about him but found out, on actually meeting him, that he was very sweet-natured and used Gawli's name in every sentence—"Gawli did this, Gawli did that, Gawli bought me a house." His world revolved around Gawli, and he didn't have an identity of his own.[13]

But it was Satya's character (who owes his name to a woman Varma knew in his college days[17]) that troubled Varma the most as he was "unclear" about Satya's nature. Was he someone who had a"criminal streak in his head" or was he a normal person who turned to crime? This lack of clarity persisted even after the shooting had been wrapped up and contributed to the inconsistent behviour of the character. "Satya slashes someone in cold blood in one scene and in another scene shyly smiles at Bheeku Matre after killing Jaggu and when Bheeku Matre is having a fight with his wife, like a zombie Satya stares at them. Why did he do that?" Varma asks and answers that he did those things because "I told him 'do it'." This was the reason the character was overshadowed by the others.[13]

Satya was shot on a limited budget with a cast of newcomers and relative unknowns. The absence of "stars" meant that they were available whenever Varma needed them.[13][14]

J.D Chakravarthy had already worked with Varma on Shiva, playing the role of J.D. in the film. When Varma approached him for the eponymous role in Satya, he was a bit reticent because he was working on another project. But then Varma told him that the film would be complete in two months (it took eighteen), and so Chakravarthy agreed.[18]Manoj Bajpai had played a cameo in Varma's previous film, Daud and Varma, who had been floored by his intensity in a particular shot, told him that there was "something interesting in [his] face."[19] He decided then and there that Manoj Bajpai would play a part in his next film that was based on the underworld. And Bajpai became Bhiku Mhatre.[15][20]Urmila Matondkar was the only member of the cast who was well known thanks to Rangeela. But she was not the first choice for Vidya's role. Varma had approached Mahima Chaudhry for the part but, according to Rediff.com, she declined it when she heard that the film was about the underworld and hence Varma turned to Urmila.[21] The Indian Express suggests, however, that Urmila replacing Mahima was a result of Varma's need for an established face, especially after Daud bombed at the box office.[14]

Shefali Shah had worked with Varma on Rangeela. But within two days, she had realized that hers was a bit part, and so she had walked out of the film. When Varma came back to her for Satya, she initially refused. But Varma apologized and even cut out a love scene from the film which Shefali had objections to. Finally, under pressure from both her husband as well as Bajpai, she agreed to play Pyaari Mhatre.[22]Saurabh Shukla had a double deal with Varma. He was originally brought in to assist Anurag Kashyap with the script and dialogues. But he managed to bag the part of Kallu Mama in the film.[15] Varma had first noticed Makrand Deshpande in Qayamat Se Qayamat Tak and had been planning to work with him for a long time. Varma cast him in a film which was later shelved. So when Varma began Satya, he called on Deshpande to play the part of the unscrupulous lawyer Chandrakant Mule.[23]

Character actor Govind Namdeo played the part of the corrupt and ruthless gangster-turned-politician Bhau Thakurdas Jhawle while Paresh Rawal became Amodh Shukla, the Police Commissioner who adopted the mafia's own tactics of intimidation and cold blooded murder against them, to good effect, and paid a heavy price for the same. Aditya Shrivastava played the role of Shukla's protégé Inspector Khandilkar who executed Shukla's ideas on the ground, and later avenged his murder by killing Satya. He also provides the voice over at various points in the film, including the beginning. Snehal Dabi played the part of Chander Krishnakant Khote, the oafish gangster wannabe who had never killed another man but bragged about having killed two, who was shot dead in an encounter by the police. Shabbir Masani was Yedaa, the only member of Mhatre gang who survives in the end. Other minor characters included those of music director Ronu Sagar (Neeraj Vora), Jagga's henchman Pakya (Sushant Singh), and Bhiku Mhatre's hitmen Vitthal Manjrekar (Sanjay Mishra) and Bappu (Rajesh Joshi).

Varma had hired Kashyap to write the script but did not trust him with the dialogues; he wanted someone more mature (Kashyap was twenty three) to work on them. So he went to noted playwright Vijay Tendulkar, the man who had penned the script and dialogues for the cult classic Ardh Satya. But Tendulkar was unwell, and hence Saurabh Shukla, who also got to play Kallu Mama in the film, got the job. Kashyap and Shukla went to Varma's farmhouse in Hyderabad where they spent the next few days writing what "looked and sounded like a script," before returning to Mumbai.[15]

The shooting began in Mumbai sometime in August 1997. On the third day the unit was shooting the scene where the character played by Sushant Singh, Pakya, demands a hafta from Satya.[17] Varma had decided to cut the scene at the moment Satya slashes Pakya's cheek with his own knife. But Sushant improvised and screamed before Varma could yell "cut."[13] Kashyap recalls Varma saying "now i know what my film is all about" before trashing their script.[17] This incident, the improvisation, was responsible for the realistic performances of the characters in the film. Varma gave them the leeway and controlled the performances in the editing. Sushant's scream influenced the "style" of Satya.[13]

But then music tycoon Gulshan Kumar was assassinated (12 August) and the changed circumstances required that a new script be written. Varma's original idea had an ending from a James Hadley Chase novel. In the final version of the film, "that ending remained..Howard Roark didn’t".[15] While Varma was shooting for the film, his previous film Daud was released (22 August) which was a box office disaster. That forced him to make some changes to Satya. He added some songs to the film and replaced Mahima Chaudhry with a more "established" Urmila Matondkar. Everything else, however, remained the same.[14]

The Ganpati immersion procession sequence and Bhau's murder sequence that form an important part of the film's climax were shot separately. On Anant Chaturdashi, a camera crew visited Chowpatty and recorded the procession. A particular wide shot where the camera zoomed into a Ganesha idol was recreated much later at Juhu beach with 500 junior artistes. The film was edited to "create an illusion as if there were thousands," a trick Varma had previously used in Gaayam.[24]

The realistic scene in the beginning of the film where Manjrekar and Bappu murder a film producer on a busy street in pouring rain was shot on a set. The entire street had been created inside the studio and the vehicles parked on the side of the street belonged to the film crew.[25]

Gerard Hooper, who teaches cinematography at Drexel University, Philadelphia was the man behind the camera, and he was recommended to Varma by Kanan Ayar, the script writer for Daud.[17] Mazhar Kamran later took over the job because Hooper could not allocate more than 40 days for the film.[26]

The film's cinematography and use of locations played a major role in its success. Unlike most Hindi films, much of Satya was shot outdoors. Hooper would roam around Mumbai filming the city even when no shoot was scheduled. "The rawness of Satya’s locales were stunning. Just see the difference an outsider gave to the film, as opposed to an Indian who takes Mumbai for granted and prefers to shoot on some set in Film City," Kashyap has noted.[27] Varma gave a free hand to his cinematographers, according to Kamran, who could therefore allow the camera to move freely rather than shooting from fixed angles. This added a touch of realism to the film. "The harsh, rough and true-to-life quality of the cinematography contributed immensely to the credibility in the film’s story and played a crucial role in its commercial and critical success," states Kamran.[26]

Satya was primarily targeted at an urban audience and the countrywide release of the film, on 3 July 1998, was done on a commission basis to ensure that distributors didn't lose money on their investment.[28]Telugu and Tamil language (dubbed) versions were released in the respective regional markets.[29] It was later dubbed into English for screenings at international film festivals;[30]Vivek Oberoi dubbed for one of the characters.[31]

Varma had expected that the Indian censor board would "rip the film apart" due to the "excessive violence and liberal use of expletives" in the film.[14] But he was "pleasantly surprised" when the board passed it without any cuts though with an A rating.[32][33] While this did not have any effect on the film's theatrical release, it created a small problem when Star Plus acquired the satellite telecast rights in 1998 by paying 13.5 million rupees. The movie was set to be telecast at 9:30 pm IST on a Saturday night (26 December), but had to be pushed back to 11:30 pm IST because, according to Indian laws in effect at the time, films having an A rating could not be telecast prior to 11:00 pm IST.[34][35]

The film did "record-breaking" business in Mumbai with first-week collections of 85 percent, for a total of INR 40-50 million; it netted another INR 8-9 million in Delhi, and set new box office records in Andhra Pradesh.[28][36]Satya collected 2.4 million nett from 15 screens in week one in Delhi/UP,and was a huge hit in Delhi/UP.[37] It also benefited from the entertainment tax exemption granted by the Maharashtra government.[38]Satya grossed ₹155 million (US$2.3 million) and became the 10th highest grossing Indian film of 1998.[9]

Manoj Bajpai's performance as Bhiku Mhatre enjoyed universal acclaim and turned him into a star overnight. "It's overwhelming and also quite scary, because with a response like this, the audience also tells you that you can't afford to make mistakes," he said during a party held to celebrate the film's 100-day run.[8]

Aditya Srivastava, who played khandilkar, was offered his claim to fame the role of Sr. Inspector Abhijeet from TV series CID after the producer BP Singh saw him in Satya.

"It's an old-fashioned morality tale that, for a change, goes beyond the 'Bang Bang, you're dead' genre of local gangster movies. On the contrary, Satya is far more sophisticated and credible precisely because it attempts to penetrate and analyse the 'Whys' of criminality with a touch that's assured and insightful. It's far too intelligent and intense a film to break records at the box office—which is a pity. It deserves to do just that," Shobha De wrote for the SundayMiD DAY. "Mumbai has never looked as sinister—nor as seductive. Take a bow, Varma," she said.[39]

"REJOICE. India's answer to Quentin Tarantino is here. Indeed, someone has finally had the guts to go ahead and make a movie about and for our times. No diabetic sweetness, no pretentious pontificating, no foolish fantasy out here. Believe it or not, Ram Gopal Varma belts it out straight, like a prize-boxer delivering a knockout punch," Khalid Mohammed wrote for Filmfare and concluded that "Satya is a gritty, hellishly exciting film which stings and screams. No one will go away from it unprovoked or unmoved."[40] It is one of the very few films to get a full 5-star rating from Mohammed.[41]

"Picture the streets of Mumbai. Where the fine line between life and death gets more and more blurred with each passing day. The killing fields where gang wars, encounters, extortion and murder are a way of life. Where crime is just another nine-to-five job. Where criminals and cops fight for survival and supremacy, night and day—only there are no winners in this game. This is Satya, a stark, chilling, almost suffocating tale of Mumbai as it is—no frills, no gloss and absolutely not a moment's relief," wrote Deepa Deosthalee of the Indian Express. She also praised Chowta's background score and Hooper and Kamran's "stark cinematography" while concluding that Satya was "an unforgettable experience".[42]

"I will remember 'Satya' as long as truth lives. I will remember 'Satya' as a film that threatened to tear my soul apart, trample my conscience. It is one film which will certainly shake up every young man about to take the first step into a dark and destructive land called nowhere. Ramu has done more than any modern social reformer has done. Generations to come will be grateful to him for having the guts to tell the truth as it is, the truth about the truth," Ali Peter John wrote for Screen Weekly.[43]

Some critics thought that through Satya Varma was glorifying crime, violence and the underworld, causing him to add a cautionary message to the end credits of the film:

This film is an attempt on my part to reach out to all those people who took to violence as a means for their living. At the end of it, even if one of them out there looks into himself before he takes out his gun the next time, and understands that the pain he inflicts on others is exactly the same as he would suffer himself, I would consider this effort worthwhile.

My tears for Satya are as much as they are for the people whom he killed.

Varma has, on his part, clarified time and again that his films do not glorify crime. "I'm not glorifying the underworld. I want to portray stark reality, as Shekhar Kapur did in Bandit Queen. I want to show the human side of the underworld, why a man picks up the gun," he said in an interview to Rediff.com even as the film was on the floors.[21] "Everybody who took the gun died a miserable death at the end of the day in the film. So when people accuse me of glorifying violence, this is my answer," he reiterated in a 2004 interview to the BBC.[44]

Satya has been referred to as a modern masterpiece and "perhaps" one of the best films of the 1990s.[10] Film critic Rajeev Masand has labeled it (along with its sequel Company) one of the "most influential movies of the past ten years."[11] The film marked the introduction of a new genre of film making, a variation of film noir[10] that has been called Mumbai noir, of which he is the acknowledged master.[12]

British director Danny Boyle has cited Satya as an inspiration for his 2008 Academy Award winning film Slumdog Millionaire. Satya's "slick, often mesmerizing" portrayal of the Mumbai underworld, which included gritty and realistic "brutality and urban violence," directly influenced the portrayal of the Mumbai underworld in Slumdog Millionaire.[11][50]

The soundtrack of the film features music composed by Vishal Bhardwaj and lyrics written by Gulzar. Sandeep Chowta created the background score for the film, as in most other Varma films.

Satya was the second hit soundtrack produced by the Gulzar-Bhardwaj collaboration, the previous one being Maachis. Planet Bollywood, giving it a 9.0 rating, said that while the music sounded and felt like that of Maachis it was "almost as good."[51]The Music Magazine called Bhardwaj's score for Satya "a trifle short of outstanding".[52] But it was Chowta's haunting background score that created waves and overshadowed the original score.[53]The Hindu, commenting on the dying art of film scoring, mentioned Satya when it noted "interestingly (and hopefully) Indian films are just making a start with original soundtracks: Sandeep Chowta's background score for Ram Gopal Varma's 'Satya'".[54] And when Rediff.com announced that the background score had arrived in Hindi cinema, it said Satya had "set the standards for background score" and that the film's throbbing score "took the audience inside the mind of its characters. Every time a bullet was shot or there were close-ups of actors, one could hear the haunting score, which had a hallucinatory effect on the audience."[55]

In an interview to Screen Weekly, Sandeep Chowta had this to say about background scores:

“

I believe a background score should work completely parallel to the film’s mood. Basically, the music should contradict what the audience is watching. I don’t punctuate and hammer in the performances through my music. I leave the performances to make their own impact. I think the traditional way of playing background music which is known as 'changeover background' kills the movie’s impact. With Satya we decided to break that tradition.[56]

”

When asked why his score overshadowed the film's music, Chowta said that in spite of Bhardwaj's songs being "nice", they did not fit into the film.[56]

In November 1998, the background score of the film was released as a separate album, Satya: The Sound.[57]

^"Satya has Telugu and Tamil versions as well." India Directorate of Film Festivals (1999). Indian Cinema: The Indian Panorama 1998. Directorate of Film Festivals, Ministry of Information and Broadcasting. p. 56.