Beginner’s Guide to Unity WebGL: How to Open, Test, Add the GameMonetize SDK, and Upload Your Game

Posted on 26.03.2026 — Author: @Mentolatux

If you are a beginner and do not know how to work with Unity yet, this guide will help you step by step. You will learn how to download a Unity project, open it in the correct Unity version, switch it to WebGL, test the game, import the GameMonetize SDK, set up ads, build the project, and upload it correctly to GameMonetize.

I also made a video while doing this process, so this blog is written to help users follow every step more easily and understand the full workflow from start to finish.

1. Download the Unity project

First, download the game project files from your project folder.

Project download link: Download Project

Once you download the game, unzip the archive and place the project folder somewhere easy to find on your computer.

After extracting the files, keep only the project files you need. Make sure the Unity project folder stays clean and organized before opening it.

This is important because a clean project folder makes it easier to open, import, build, and troubleshoot the game later.

2. Open the project in the correct Unity version

Now open Unity Hub and find the folder where the game project is located.

This is one of the most important parts for beginners: you must open the project in the correct Unity version.

It is a good idea to have these Unity versions installed if you work with many different game projects:

  • Unity 2017

  • Unity 2018

  • Unity 2019

  • Unity 2020

  • Unity 2021

  • Unity 2022

  • Unity 6

Why is this important? Because every Unity project is made in a specific Unity version. If you open the project in the wrong version, it may show errors, fail to import correctly, or break some parts of the game.

For example, if the project says it was made in Unity 2018, then you should open it with the latest Unity 2018 version installed on your PC. It does not matter if you have newer Unity versions installed too. You should always use the matching major version for the project.

So if the game says Unity 2018, open it in Unity 2018. If it says Unity 2021, open it in Unity 2021. This will save you a lot of problems.

3. Switch the project to WebGL

Once the project is open, go to the build settings and choose WebGL as the target platform.

This is necessary because GameMonetize requires a WebGL build.

After selecting WebGL, wait for Unity to fully import and process the project. Some projects import quickly, while others take more time depending on their size.

Do not rush this step. Let Unity finish everything before continuing.

4. Wait for the full import and check the Console

After the project is fully imported, the next thing you should do is check the Console window.

This is a very good habit, especially for beginners.

Press Clear in the Console first, then see if any new errors appear. If the errors are gone or nothing new appears, then the project is likely ready for testing.

If errors keep showing up, fix them first before moving forward. A project with errors can fail later when you test, build, or upload it.

When the Console is clean, you are ready for the next step.

5. Find the correct scene and test the game

Before testing, make sure you know which scene is the main game scene.

Many Unity projects have multiple scenes, such as:

  • Main menu

  • Loading scene

  • Level scene

  • Game scene

Open the correct main scene and then set the Game view resolution to 1600x1200.

After that, click Play to test the game.

Do not only test for a few seconds. Try to test the important gameplay conditions properly:

  • Test if the game starts correctly

  • Test a losing situation

  • Test a winning situation

  • Check if buttons work

  • Check if sounds work

  • Check if the game flow feels normal

  • Watch the Console for errors while playing

If the game works well and the Console stays clean, then the project is in a good state.

6. Set the best quality for WebGL

Now let’s improve the game quality settings for WebGL.

Look at the quality settings and make sure the WebGL platform is using a good quality level. In many cases, developers want the best possible quality, and that is a good place to start.

If the game is small or simple, using the highest quality can work well.

If the game has a very large environment or many heavy assets, it can sometimes be better to lower some settings to Medium. This may actually give the best result overall because the game will run more smoothly while still looking good.

So the goal is not only “maximum quality,” but the best balance between image quality and performance.

Check your settings carefully and choose what works best for the game.

7. Download the GameMonetize SDK and log in to your account

Before setting up ads, you need to download the official SDK and log in to your GameMonetize account.

You can download the SDK here:

GameMonetize SDK

You can log in to your account here:

GameMonetize Login

Once you are logged in and have downloaded the SDK, import it into your Unity project.

This is also the moment when you need to set up the correct WebGL template, which is very important. Always choose the template that supports your Unity version.

For example, if your game uses Unity 2018, use the template made for Unity 2018.

If you are using Unity 2019 or newer, go to the Unity WebGL settings and make sure Decompression Fallback is enabled. If this option is not activated, the game may show an error when you test it on GameMonetize.

This is a small setting, but it is very important.

8. Add the GameMonetize SDK to the scene

Now it is time to add the SDK objects into the game.

Go to the first main scene of your game and drag the GameMonetize prefab into the scene.

If your game only has one scene, also drag AdsOnStart into the scene.

After that, press Ctrl + S to save the scene.

Now you need to create your game entry inside GameMonetize.

Go to your GameMonetize account and click Add New Game. Create the game entry, then copy the Game ID.

Return to Unity and paste that Game ID into the GameMonetize prefab in your scene hierarchy.

Once that is done, save the scene again.

This part is essential because the prefab needs to be connected to the correct game entry in your GameMonetize account.

9. Save everything before building

Before making the final build, save your work.

Make sure:

  • The correct scene is open

  • The SDK is in the scene

  • The Game ID is added

  • The WebGL template is selected

  • The settings are correct

  • The project has no Console errors

This quick check helps avoid mistakes before building.

10. Build the game in a unique folder

Now you are ready to build the game.

Go to Build Settings, make sure WebGL is selected, then click Build.

This is a very important rule that many beginners forget:

Every time you build a game for upload to GameMonetize, build it into a new unique folder.

Do not reuse the same build folder for every update.

Why? Because if you upload from the same old folder again and again, the new update may not appear correctly on GameMonetize.

So when you build:

  • Choose your desktop or another easy location

  • Create a brand new folder with a unique name

  • Build the project into that folder

When the build is complete, your game files will be ready.

11. Zip the build and upload it

After the build is finished, compress the build folder into a ZIP file.

This ZIP file is the one you will upload to GameMonetize.

Make sure the ZIP contains the correct WebGL build files and that you are uploading the latest version from the unique build folder you just created.

A clean workflow here helps prevent version confusion later.

12. Test the uploaded game carefully

Once the game is uploaded, test it directly on GameMonetize.

This is another very important step. A game that works inside Unity may still have issues after upload, so always test the uploaded version too.

Before testing ads, make sure:

  • You are not using AdBlock

  • You are not using a VPN

If you use AdBlock or a VPN, the demo ads may not show, and you may not be able to request activation correctly.

If demo ads appear, wait for them to finish. They should close automatically.

If ads do not appear on the first game load, wait about 3 minutes in the game and then trigger showBanner again.

Be patient during testing and check that everything behaves correctly.

13. Do not request activation yet

At this point, your game may already be uploaded and working, but do not click Request Activation yet.

Before activation, you still need to finish the game information properly.

This is very important because the game submission should look complete and professional.

14. Add category, tags, description, and instructions

Before requesting activation, make sure you complete all the game details.

You should add:

  • 1 category

  • Up to 7 tags maximum

  • A good description

  • Clear instructions for the player

This information helps the platform understand your game and helps players understand what they are going to play.

Try to keep the description simple, clear, and attractive.

15. Create a better image and description with AI

For the game image and sometimes the description, I use AI tools like Gemini to help create something better looking and more appealing.

Here is a simple workflow:

  1. Take one screenshot from your game

  2. Upload it to AI and improve the visual look

  3. Download the improved result

  4. Edit it in Windows Paint if needed

  5. Export it as JPEG

  6. Upload the final image to GameMonetize

  7. Save everything

This helps a lot because a better thumbnail can make your game look much more professional.

You do not need to overcomplicate this part. Even a simple improvement can make a big difference.

16. Final test before activation

Before pressing the final button, do one last check.

Make sure:

  • The game opens correctly

  • The gameplay works

  • Win and fail situations are tested

  • Ads work correctly

  • The image is uploaded

  • The description is added

  • Instructions are added

  • Category is selected

  • Tags are added

  • The correct build was uploaded

This final review can save you from rejection or unnecessary corrections later.

17. Request activation

Now everything is ready.

Your game is uploaded, tested, and completed with all required information.

At this point, you can finally click Request Activation.

After that, the GameMonetize team will review your game.

And that’s it — your submission process is complete.

AI tutorial: Improve a finished Unity game with realistic textures

Even if a game was created with AI or started from a simple template, you can still improve it after the main gameplay is finished. AI can help you generate better textures, materials, backgrounds, icons, sound ideas, and visual references. However, AI does not automatically fix the complete game. You still need to import the new assets into Unity, apply them to the correct objects, adjust the materials, optimize the files, and test the final WebGL build.

The goal is not only to make the game look different. The goal is to make it feel complete, consistent, realistic, and enjoyable for players.

1. Make a backup before changing the game

Before using AI-generated textures, create a full backup of your Unity project.

  • Close Unity

  • Copy the complete project folder

  • Rename the copy, for example: GameName_AI_Texture_Backup

  • Open and edit only the new copy

This is important because a new material, shader, texture, or package can sometimes change the appearance of many objects. A backup allows you to return to the original version if something goes wrong.

2. Identify the textures that need improvement

Open the game in Unity and test every important scene. Look for objects that appear too simple, flat, blurry, repeated, unfinished, or unrealistic.

Make a list of the assets that need improvement, such as:

  • Ground, roads, grass, sand, snow, or floors

  • Walls, buildings, doors, roofs, and windows

  • Weapons, vehicles, tools, furniture, and level props

  • Character clothing, enemies, and environmental objects

  • Skyboxes, backgrounds, menu images, buttons, and icons

Do not replace everything at once. Start with the objects that players see most often. This makes it easier to control quality and find problems.

3. Save reference screenshots from the game

Take clear screenshots of the object or environment you want to improve. Use different angles when necessary.

A useful screenshot should show:

  • The current object or surface

  • The lighting and general art style

  • The colors used in the level

  • Nearby objects that the new texture must match

You can upload these screenshots to an AI image tool and explain exactly what should be improved. The screenshot gives the AI a better visual reference than a text description alone.

4. Ask AI to generate a seamless game texture

When requesting a texture, clearly say that it must be a seamless, tileable game texture. A normal image may show visible borders when repeated across a large wall, road, or floor.

Example prompt:

Create a seamless and tileable realistic asphalt road texture for a Unity driving game. Use clean dark asphalt, small natural cracks, subtle surface variation, no text, no vehicles, no shadows, no perspective, and an evenly lit top-down surface. The texture must repeat without visible borders.

For a wall, ground, wood, stone, metal, or fabric texture, replace the material description while keeping the technical requirements.

Ask for a square image such as 1024x1024 or 2048x2048. For WebGL, 1024x1024 is often enough for ordinary objects. Larger textures should only be used when the visual improvement is clearly visible.

5. Keep the same visual style across the game

Do not mix realistic textures with cartoon characters, low-poly objects, and unrelated AI styles unless the combination is intentional.

When generating several textures, reuse a consistent prompt style. For example:

Use the same realistic, slightly stylized visual style, color balance, surface detail, and lighting as the previous texture. Keep it suitable for the same Unity WebGL game.

Consistency is more important than making every individual texture extremely detailed. A game with simple but consistent art usually looks better than a game containing many unrelated high-detail assets.

6. Create supporting material maps when necessary

A color texture alone is called an Albedo or Base Map. For a more realistic material, you may also need additional maps:

  • Normal Map: adds the appearance of small bumps, cracks, and surface detail

  • Metallic Map: controls which parts of the material look metallic

  • Roughness or Smoothness Map: controls how shiny or rough the surface appears

  • Height Map: can add extra depth on supported shaders

  • Ambient Occlusion Map: adds subtle shadow detail in cracks and corners

You can ask an AI tool or a texture-generation tool to create these maps from the final base texture. Always inspect the result before using it. Incorrect maps can make the material look too shiny, inverted, plastic, or damaged.

7. Prepare the texture before importing it into Unity

Open the generated image in an image editor and check it carefully.

  • Remove unwanted text, logos, objects, faces, or visual artifacts

  • Check that the left and right edges repeat correctly

  • Check that the top and bottom edges repeat correctly

  • Reduce excessive noise or artificial details

  • Resize the image to a suitable power-of-two resolution such as 512, 1024, or 2048

  • Export the texture as PNG or JPG depending on whether transparency is required

Use PNG for textures that need transparency or very clean detail. Use JPG for ordinary opaque images when a smaller file size is more important.

8. Import the new texture into Unity

Inside the Unity Project window, create an organized folder such as:

Assets/Textures/AI_Improved

Drag the new texture files into that folder. Select each imported texture and review its Import Settings.

For ordinary color textures:

  • Set Texture Type to Default

  • Keep sRGB enabled for color textures

  • Enable Generate Mip Maps for 3D objects viewed at different distances

  • Set Wrap Mode to Repeat for tileable textures

  • Choose a reasonable Max Size, normally 1024 for WebGL unless more detail is required

  • Use appropriate compression and press Apply

For a Normal Map, change Texture Type to Normal Map and press Apply.

9. Create a new material instead of replacing the original immediately

Create a new folder such as:

Assets/Materials/AI_Improved

Right-click inside the folder, choose Create > Material, and give the material a clear name, for example:

Road_Asphalt_AI_01

Assign the generated Base Map to the material. If you created a Normal Map, Metallic Map, or other supporting maps, add them to the correct material fields.

Creating a separate material is safer than modifying the original material immediately. You can compare the old and new versions and return to the original material at any time.

10. Apply the material to the correct game object

Select the object in the Unity Hierarchy and find its Mesh Renderer or Skinned Mesh Renderer component.

Drag the new material into the material slot. You can also drag the material directly onto the visible object in the Scene view.

After applying it, inspect the object from different angles. Check for:

  • Stretched or distorted texture areas

  • Texture details that appear too large or too small

  • Visible repeating patterns

  • Incorrect shine or reflections

  • Color differences that do not match the level

11. Adjust texture tiling and offset

Inside the material settings, adjust the Tiling values until the texture scale looks natural.

For example, a road texture may need a larger tiling value so the asphalt detail does not appear oversized. A wall texture may require different horizontal and vertical tiling values.

The correct values depend on the size and UV mapping of the object. There is no single value that works for every model.

If the texture is badly stretched even after adjusting tiling, the model may have incorrect UV mapping. In that case, the UVs must be corrected in a 3D program such as Blender or by using an appropriate Unity modeling tool.

12. Improve lighting after changing the textures

Realistic textures can still look poor when the scene lighting is flat or incorrectly configured.

Review:

  • Directional light intensity and rotation

  • Environment lighting

  • Shadows and shadow distance

  • Reflection probes for shiny environments

  • Light probes for moving objects

  • Baked lighting for static scenes when appropriate

Do not make every surface extremely shiny. Roads, fabric, soil, and ordinary walls usually need lower smoothness, while polished metal, wet surfaces, and glass can use stronger reflections.

13. Use AI to improve the game audio too

Visual improvements are not enough when the game has missing, repeated, or unrealistic sounds. AI can also help you plan or generate:

  • Weapon and impact sound effects

  • Vehicle engines, skids, crashes, and environmental sounds

  • Menu clicks and reward sounds

  • Background music ideas

  • Voice lines and short character reactions

Make sure you have the legal right to use every generated or downloaded audio file. Import the files into Unity, assign them to the correct Audio Source components, balance the volume, and prevent several loud effects from playing at the same time.

14. Optimize AI-generated assets for WebGL

AI-generated images are often much larger than required. Large textures increase the WebGL download size, memory usage, and loading time.

Before the final build:

  • Use 512x512 textures for small or distant objects

  • Use 1024x1024 for most important environment objects

  • Use 2048x2048 only for large objects where the difference is visible

  • Remove unused AI images, test versions, and duplicate materials

  • Compress audio and avoid unnecessarily long files

  • Check the WebGL build size after every major asset update

Better graphics should not make the game too slow to load or play. The final goal is a balance between quality, performance, and file size.

15. Test every level after applying the new assets

Do not test only the first scene. A texture or material change can affect prefabs used across multiple levels.

Test:

  • Every available level

  • Main menu and loading screens

  • Win, fail, restart, and level-complete situations

  • Desktop and mobile browser controls when supported

  • Lighting in indoor and outdoor scenes

  • Performance on a normal computer, not only a powerful development PC

  • The Unity Console for missing materials, shader errors, and other warnings

A complete game should normally provide enough gameplay content for players. For level-based games, test all levels and aim for at least 20 properly designed levels when the game format supports it.

16. Ask AI to review screenshots, but verify everything yourself

After applying the new assets, take fresh screenshots and ask AI for a visual review.

Example prompt:

Review this Unity game screenshot. Identify any textures that look stretched, repeated, blurry, inconsistent, overly shiny, unfinished, or visually unrelated to the rest of the level. Give practical suggestions without inventing objects that are not visible.

AI feedback can help you notice problems, but do not apply every suggestion automatically. You are responsible for checking whether the advice fits the game, the performance target, and the intended art style.

17. Build and compare the improved version

When the new textures, materials, sounds, and lighting are ready, build the WebGL version into a new unique folder. Do not overwrite your previous working build.

Test the improved build in a browser and compare it with the original version.

Check whether:

  • The graphics are clearly improved

  • The visual style is consistent

  • The game still loads quickly

  • The frame rate remains stable

  • No materials appear pink, black, missing, or transparent

  • The sounds match the gameplay

  • All levels and buttons still work

18. Important quality rule for AI-made games

Using AI is not automatically a problem. The final quality is what matters.

Please use real-looking and consistent textures, suitable music, and proper in-game sound effects. Test all levels, with at least 20 levels minimum when the game type supports levels. Even if the game is made with AI, it can be accepted when the quality is good. However, a simple unfinished AI game with repeated assets, weak gameplay, missing sounds, visual errors, or very limited content may not meet the required quality standard.

AI should be used as a production tool to improve the game, not as a replacement for development, testing, optimization, and creative decisions.

Example AI prompts for Unity game improvement

You can adapt the following prompts for your own game.

Realistic road texture prompt

Create a seamless 1024x1024 asphalt road texture for a Unity WebGL racing game. Use realistic dark asphalt, subtle small cracks, natural surface variation, no lane markings, no cars, no text, no shadows, no perspective, evenly lit, top-down, and perfectly tileable on all edges.

Stylized grass texture prompt

Create a seamless 1024x1024 stylized grass ground texture for a colorful Unity game. Use natural green variation and small soft grass details. No flowers, no stones, no objects, no shadows, no perspective, top-down, evenly lit, and tileable without visible borders.

Metal weapon texture prompt

Create a clean realistic dark metal surface texture for a Unity weapon model. Include subtle scratches and controlled wear, but no rust, no text, no symbols, no perspective, and no baked lighting. Keep the texture suitable for creating an albedo, normal, metallic, and roughness material set.

Visual review prompt

Analyze this screenshot from my Unity game. Tell me which visible surfaces look low quality, stretched, repeated, blurry, too shiny, or inconsistent. Recommend specific texture, material, lighting, and optimization improvements suitable for a WebGL game. Do not invent hidden features.

Tips for beginners

If you are still new to Unity, here are the most important things to remember from this guide:

  • Always open the project in the correct Unity version

  • Always switch the platform to WebGL

  • Always wait for the full import to finish

  • Always check the Console for errors

  • Always test the game inside Unity

  • Always test fail and win conditions

  • Always set WebGL settings correctly

  • Always import the correct SDK and template

  • Always enable Decompression Fallback in Unity 2019+ if needed

  • Always build into a new unique folder

  • Always zip the latest build

  • Always disable AdBlock and VPN when testing ads

  • Always complete the game details before requesting activation

If you follow these steps carefully, the whole process becomes much easier.

Final thoughts

Working with Unity for the first time can feel confusing, especially if you do not know which version to use, how WebGL works, how to test ads, or how to upload the project correctly.

But once you understand the process, it becomes much simpler.

The most important part is to stay organized and follow the steps in order:

download the project, open it in the correct Unity version, switch to WebGL, test it, import the GameMonetize SDK, set up the scene, build it in a unique folder, upload it, test ads, complete the game information, and only then request activation.

If you do that, you will avoid most common mistakes and your workflow will be much smoother. Game to test https://gamemonetize.com/crazy-traffick-racing-2026-game

Have fun, and good luck with your game uploads.

GameMonetize Partnership

Join our platform and earn revenues from games!

Monetize your HTML5 game through in-game advertising! You will develop your awesome HTML5 games, integrate our API, and we will take care of the publishing and monetization part.
Join our game distribution network and enjoy huge benefits and high earnings!
Join over 19500+ satisfied developers and publishers which trust us!

GameMonetize.com is brand of GMO Holding Ltd. [939349]