{"id":222,"date":"2026-08-18T14:33:11","date_gmt":"2026-08-18T12:33:11","guid":{"rendered":"https:\/\/aws.in.ua\/stysnuty-kartynku\/"},"modified":"2026-08-18T19:35:35","modified_gmt":"2026-08-18T17:35:35","slug":"stysnuty-kartynku","status":"publish","type":"page","link":"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/","title":{"rendered":"Compress an image online"},"content":{"rendered":"<p class=\"lead-intro\">Compress images, resize them, or convert them to WebP\u2014right in your browser. Files aren't uploaded anywhere, and the tool works even without an internet connection once the page is open. You can process up to 30 images at once.<\/p>\n    <div class=\"tool-box imgt\" id=\"imgTool\">\n        <div class=\"imgt-drop\" id=\"imgDrop\">\n            <input type=\"file\" id=\"imgInput\" accept=\"image\/*\" multiple hidden>\n            <p class=\"imgt-drop-title\">Drag the images here<\/p>\n            <p class=\"imgt-drop-sub\">or <button type=\"button\" class=\"imgt-pick\" id=\"imgPick\">Select files<\/button> \u00b7 JPEG, PNG, WebP, GIF, BMP \u00b7 up to 30 files<\/p>\n        <\/div>\n\n        <div class=\"imgt-settings\">\n            <label>Format\n                <select id=\"imgFormat\">\n                    <option value=\"image\/webp\">WebP \u2014 smallest file size<\/option>\n                    <option value=\"image\/jpeg\" selected>JPEG \u2014 Compatible Everywhere<\/option>\n                    <option value=\"image\/png\">PNG \u2014 lossless, with transparency<\/option>\n                <\/select>\n            <\/label>\n\n            <label>Quality <span class=\"imgt-val\" id=\"imgQVal\">80%<\/span>\n                <input type=\"range\" id=\"imgQuality\" min=\"30\" max=\"100\" value=\"80\" step=\"5\">\n            <\/label>\n\n            <label>Maximum width, px\n                <input type=\"number\" id=\"imgMaxW\" placeholder=\"without restrictions\" min=\"16\" max=\"10000\">\n            <\/label>\n\n            <label>Maximum height, px\n                <input type=\"number\" id=\"imgMaxH\" placeholder=\"without restrictions\" min=\"16\" max=\"10000\">\n            <\/label>\n        <\/div>\n\n        <p class=\"imgt-hint-inline\" id=\"imgPngNote\" hidden>PNG is lossless\u2014the quality slider does not affect it.<\/p>\n\n        <div class=\"imgt-actions\" id=\"imgActions\" hidden>\n            <button type=\"button\" class=\"tool-btn\" id=\"imgReprocess\">List<\/button>\n            <button type=\"button\" class=\"tool-btn tool-btn-ghost\" id=\"imgDownloadAll\">Download all<\/button>\n            <button type=\"button\" class=\"tool-btn tool-btn-ghost\" id=\"imgClear\">Clear<\/button>\n        <\/div>\n\n        <p class=\"imgt-warn\" id=\"imgWarn\" hidden><\/p>\n        <p class=\"imgt-total\" id=\"imgTotal\"><\/p>\n        <div class=\"imgt-list\" id=\"imgList\"><\/div>\n        <p class=\"tool-note\">Images are processed in your browser and are not downloaded anywhere. A side effect of the transcoding process is that EXIF metadata\u2014including the GPS coordinates of the photo\u2014is removed from the file.<\/p>\n    <\/div>\n\n    <script>\n    (function () {\n        var root = document.getElementById('imgTool');\n        if (!root) { return; }\n\n        var el = function (id) { return document.getElementById(id); };\n        var MAX_FILES = 30;\n        var MAX_BYTES = 40 * 1024 * 1024;\n        var items = [];\n\n        function human(bytes) {\n            if (bytes < 1024) { return bytes + ' \u0411'; }\n            if (bytes < 1024 * 1024) { return (bytes \/ 1024).toFixed(1) + ' \u041a\u0411'; }\n            return (bytes \/ 1024 \/ 1024).toFixed(2) + ' \u041c\u0411';\n        }\n\n        function esc(s) {\n            return String(s).replace(\/&\/g, '&amp;').replace(\/<\/g, '&lt;').replace(\/>\/g, '&gt;');\n        }\n\n        function ext(mime) {\n            if (mime === 'image\/webp') { return 'webp'; }\n            if (mime === 'image\/png') { return 'png'; }\n            return 'jpg';\n        }\n\n        function baseName(name) {\n            return name.replace(\/\\.[^.]+$\/, '');\n        }\n\n        \/\/\/ \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u0443\u0435\u043c \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0438\u0437 EXIF, \u0438\u043d\u0430\u0447\u0435 \u0444\u043e\u0442\u043e \u0441 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u043b\u044f\u0433\u0443\u0442 \u043d\u0430\u0431\u043e\u043a\n        function decode(file) {\n            if (window.createImageBitmap) {\n                return createImageBitmap(file, { imageOrientation: 'from-image' }).catch(function () {\n                    return decodeViaImg(file);\n                });\n            }\n            return decodeViaImg(file);\n        }\n\n        function decodeViaImg(file) {\n            return new Promise(function (resolve, reject) {\n                var url = URL.createObjectURL(file);\n                var img = new Image();\n                img.onload = function () { URL.revokeObjectURL(url); resolve(img); };\n                img.onerror = function () { URL.revokeObjectURL(url); reject(new Error('not-image')); };\n                img.src = url;\n            });\n        }\n\n        function fit(w, h, maxW, maxH) {\n            var k = 1;\n            if (maxW && w > maxW) { k = Math.min(k, maxW \/ w); }\n            if (maxH && h > maxH) { k = Math.min(k, maxH \/ h); }\n            return { w: Math.max(1, Math.round(w * k)), h: Math.max(1, Math.round(h * k)) };\n        }\n\n        function process(item) {\n            var fmt = el('imgFormat').value;\n            var q = parseInt(el('imgQuality').value, 10) \/ 100;\n            var maxW = parseInt(el('imgMaxW').value, 10) || 0;\n            var maxH = parseInt(el('imgMaxH').value, 10) || 0;\n\n            return decode(item.file).then(function (src) {\n                var sw = src.width, sh = src.height;\n                var size = fit(sw, sh, maxW, maxH);\n\n                var canvas = document.createElement('canvas');\n                canvas.width = size.w;\n                canvas.height = size.h;\n                var ctx = canvas.getContext('2d');\n\n                \/\/ JPEG \u043d\u0435 \u0443\u043c\u0435\u0435\u0442 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u044c: \u043f\u043e\u0434\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u043c \u0431\u0435\u043b\u044b\u0439, \u0438\u043d\u0430\u0447\u0435 \u0444\u043e\u043d \u0441\u0442\u0430\u043d\u0435\u0442 \u0447\u0451\u0440\u043d\u044b\u043c\n                if (fmt === 'image\/jpeg') {\n                    ctx.fillStyle = '#ffffff';\n                    ctx.fillRect(0, 0, size.w, size.h);\n                }\n                ctx.imageSmoothingQuality = 'high';\n                ctx.drawImage(src, 0, 0, size.w, size.h);\n                if (src.close) { src.close(); }\n\n                return new Promise(function (resolve) {\n                    canvas.toBlob(function (blob) {\n                        item.srcW = sw;\n                        item.srcH = sh;\n                        item.outW = size.w;\n                        item.outH = size.h;\n                        item.blob = blob;\n                        item.outMime = blob ? blob.type : fmt;\n                        resolve(item);\n                    }, fmt, fmt === 'image\/png' ? undefined : q);\n                });\n            }).catch(function () {\n                item.error = '\u041d\u0435 \u0432\u0434\u0430\u043b\u043e\u0441\u044f \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u0438 \u0444\u0430\u0439\u043b. \u0424\u043e\u0440\u043c\u0430\u0442 HEIC \u0437 iPhone \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0438 \u043d\u0435 \u0432\u0456\u0434\u043a\u0440\u0438\u0432\u0430\u044e\u0442\u044c \u2014 \u0437\u0431\u0435\u0440\u0435\u0436\u0456\u0442\u044c \u044f\u043a JPEG.';\n                return item;\n            });\n        }\n\n        function render() {\n            var list = el('imgList');\n            list.innerHTML = items.map(function (it, i) {\n                if (it.error) {\n                    return '<div class=\"imgt-item is-error\"><div class=\"imgt-name\">' + esc(it.file.name) + '<\/div>'\n                        + '<div class=\"imgt-err\">' + it.error + '<\/div><\/div>';\n                }\n                if (!it.blob) {\n                    return '<div class=\"imgt-item\"><div class=\"imgt-name\">' + esc(it.file.name) + '<\/div>'\n                        + '<div class=\"imgt-meta\">\u043e\u0431\u0440\u043e\u0431\u043b\u044f\u0454\u043c\u043e\u2026<\/div><\/div>';\n                }\n                var diff = it.file.size - it.blob.size;\n                var pct = Math.round(diff \/ it.file.size * 100);\n                var cls = pct > 0 ? 'is-win' : 'is-lose';\n                var label = pct > 0 ? '\u2212' + pct + '%' : '+' + Math.abs(pct) + '%';\n                var resized = (it.outW !== it.srcW || it.outH !== it.srcH);\n\n                return '<div class=\"imgt-item\">'\n                    + '<img decoding=\"async\" class=\"imgt-thumb\" src=\"' + it.preview + '\" alt=\"\">'\n                    + '<div class=\"imgt-info\">'\n                    + '<div class=\"imgt-name\">' + esc(it.file.name) + '<\/div>'\n                    + '<div class=\"imgt-meta\">' + it.srcW + '\u00d7' + it.srcH\n                    + (resized ? ' \u2192 ' + it.outW + '\u00d7' + it.outH : '')\n                    + ' \u00b7 ' + human(it.file.size) + ' \u2192 ' + human(it.blob.size)\n                    + ' <span class=\"imgt-badge ' + cls + '\">' + label + '<\/span><\/div>'\n                    + '<\/div>'\n                    + '<button type=\"button\" class=\"imgt-dl\" data-i=\"' + i + '\">\u0417\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0438\u0442\u0438<\/button>'\n                    + '<\/div>';\n            }).join('');\n\n            var done = items.filter(function (i) { return i.blob; });\n            if (done.length) {\n                var was = done.reduce(function (s, i) { return s + i.file.size; }, 0);\n                var now = done.reduce(function (s, i) { return s + i.blob.size; }, 0);\n                var p = Math.round((was - now) \/ was * 100);\n                el('imgTotal').textContent = '\u0420\u0430\u0437\u043e\u043c: ' + human(was) + ' \u2192 ' + human(now)\n                    + (p > 0 ? ' \u00b7 \u0435\u043a\u043e\u043d\u043e\u043c\u0456\u044f ' + p + '%' : '');\n            } else {\n                el('imgTotal').textContent = '';\n            }\n\n            el('imgActions').hidden = items.length === 0;\n        }\n\n        function save(blob, name) {\n            var url = URL.createObjectURL(blob);\n            var a = document.createElement('a');\n            a.href = url;\n            a.download = name;\n            document.body.appendChild(a);\n            a.click();\n            document.body.removeChild(a);\n            setTimeout(function () { URL.revokeObjectURL(url); }, 1000);\n        }\n\n        function runAll() {\n            render();\n            var chain = Promise.resolve();\n            items.forEach(function (it) {\n                chain = chain.then(function () {\n                    return process(it).then(render);\n                });\n            });\n            return chain;\n        }\n\n        function add(files) {\n            var list = Array.prototype.slice.call(files);\n            var rejected = 0;\n            if (window.awsStat) { awsStat('image', 'process', el('imgFormat').value.replace('image\/', '')); }\n\n            list.forEach(function (f) {\n                if (items.length >= MAX_FILES) { return; }\n                if (!\/^image\\\/\/.test(f.type) && !\/\\.(jpe?g|png|webp|gif|bmp)$\/i.test(f.name)) { rejected++; return; }\n                if (f.size > MAX_BYTES) { rejected++; return; }\n                items.push({ file: f, preview: URL.createObjectURL(f) });\n            });\n\n            var warn = el('imgWarn');\n            warn.hidden = !rejected;\n            if (rejected) {\n                warn.textContent = '\u041f\u0440\u043e\u043f\u0443\u0449\u0435\u043d\u043e \u0444\u0430\u0439\u043b\u0456\u0432: ' + rejected + ' \u2014 \u043d\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0430\u0431\u043e \u0431\u0456\u043b\u044c\u0448\u0435 40 \u041c\u0411.';\n            }\n            runAll();\n        }\n\n        var drop = el('imgDrop');\n        ['dragenter', 'dragover'].forEach(function (e) {\n            drop.addEventListener(e, function (ev) { ev.preventDefault(); drop.classList.add('is-over'); });\n        });\n        ['dragleave', 'drop'].forEach(function (e) {\n            drop.addEventListener(e, function (ev) { ev.preventDefault(); drop.classList.remove('is-over'); });\n        });\n        drop.addEventListener('drop', function (ev) {\n            if (ev.dataTransfer && ev.dataTransfer.files) { add(ev.dataTransfer.files); }\n        });\n        drop.addEventListener('click', function (ev) {\n            if (ev.target.id !== 'imgPick') { el('imgInput').click(); }\n        });\n        el('imgPick').addEventListener('click', function () { el('imgInput').click(); });\n        el('imgInput').addEventListener('change', function () { add(this.files); this.value = ''; });\n\n        el('imgQuality').addEventListener('input', function () {\n            el('imgQVal').textContent = this.value + '%';\n        });\n\n        el('imgFormat').addEventListener('change', function () {\n            var isPng = this.value === 'image\/png';\n            el('imgPngNote').hidden = !isPng;\n            el('imgQuality').disabled = isPng;\n        });\n\n        el('imgReprocess').addEventListener('click', runAll);\n\n        el('imgClear').addEventListener('click', function () {\n            items.forEach(function (i) { URL.revokeObjectURL(i.preview); });\n            items = [];\n            render();\n            el('imgTotal').textContent = '';\n            el('imgWarn').hidden = true;\n        });\n\n        el('imgDownloadAll').addEventListener('click', function () {\n            items.forEach(function (it, i) {\n                if (!it.blob) { return; }\n                \/\/ \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u044b \u0433\u043b\u0443\u0448\u0430\u0442 \u043f\u0430\u0447\u043a\u0443 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0439 \u2014 \u0440\u0430\u0437\u043d\u043e\u0441\u0438\u043c \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438\n                setTimeout(function () {\n                    save(it.blob, baseName(it.file.name) + '.' + ext(it.outMime));\n                }, i * 350);\n            });\n        });\n\n        el('imgList').addEventListener('click', function (ev) {\n            var btn = ev.target.closest('.imgt-dl');\n            if (!btn) { return; }\n            var it = items[+btn.dataset.i];\n            if (it && it.blob) {\n                save(it.blob, baseName(it.file.name) + '.' + ext(it.outMime));\n                if (window.awsStat) { awsStat('image', 'download', ext(it.outMime)); }\n            }\n        });\n    })();\n    <\/script>\n    \n<h2>Which format should I choose?<\/h2>\n<table>\n<thead>\n<tr>\n<th>Format<\/th>\n<th>When to take<\/th>\n<th>Features<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>WebP<\/strong><\/td>\n<td>For the website\u2014the most important choice<\/td>\n<td>It is 25\u201335% smaller than a JPEG of the same quality and supports transparency<\/td>\n<\/tr>\n<tr>\n<td><strong>JPEG<\/strong><\/td>\n<td>Photos, email attachments, printing<\/td>\n<td>It will open anywhere, but without transparency<\/td>\n<\/tr>\n<tr>\n<td><strong>PNG<\/strong><\/td>\n<td>Logos, icons, screenshots with text<\/td>\n<td>No loss of quality, transparency, but the file is larger<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>If the image is going on a website, use WebP: all modern browsers support it. If the file is going to a client via email or to a printer, JPEG is a safer choice.<\/p>\n<h2>Which quality should I select?<\/h2>\n<p>For photos on the website, the working range is \u2014 <strong>75\u201385%<\/strong>. The difference is barely visible to the naked eye, but the file size is reduced by a factor of several. Below 60%, noticeable artifacts appear in solid-color areas: the sky, skin, and gradients.<\/p>\n<p>For images with text and crisp lines (screenshots, diagrams), lossy compression doesn't work as well\u2014in those cases, PNG or WebP with a quality setting of 90%+ is better.<\/p>\n<h2>What sizes are actually needed?<\/h2>\n<p>The most common mistake is uploading photos to a website straight from the camera\u20144,000 pixels wide and 8 MB in size. The browser will still display it at 800 pixels, but it will load the entire image.<\/p>\n<ul>\n<li><strong>Full-width background<\/strong> \u2014 up to 1920 px<\/li>\n<li><strong>Image in the article<\/strong> \u2014 800\u20131,200 px<\/li>\n<li><strong>Product in the catalog<\/strong> \u2014 800\u20131,000 px<\/li>\n<li><strong>Preview, profile picture<\/strong> \u2014 300\u2013400 px<\/li>\n<li><strong>Social media preview (og:image)<\/strong> \u2014 exactly 1200\u00d7630 px<\/li>\n<\/ul>\n<p>Enter the desired width in the \"Maximum Width\" field\u2014the aspect ratio will be preserved automatically.<\/p>\n<h2>Why does your website need this?<\/h2>\n<p>Page weight directly affects rankings: page speed is one of the Core Web Vitals that Google takes into account in its ranking algorithm. And it has an even stronger impact on conversion: according to Google, the likelihood of a bounce rate increases sharply after just a few seconds of waiting, and most visitors access the site via mobile internet.<\/p>\n<p>For more information on the technical setup of the website, see the article <a href=\"\/en\/blog\/seo-dlya-novogo-saytu\/\">SEO for a New Website<\/a>. Why traffic isn't converting into leads \u2014 <a href=\"\/en\/blog\/chomu-sayt-ne-prynosyt-zayavok\/\">here<\/a>.<\/p>\n<h2>Frequently Asked Questions<\/h2>\n<h3>Where are my photos uploaded?<\/h3>\n<p>Nowhere. Processing takes place in your browser using the Canvas API; files are not sent to the server. That\u2019s why the tool works with confidential images as well\u2014such as documents, screenshots of chats, and photos from work.<\/p>\n<h3>Why is the survey data disappearing?<\/h3>\n<p>When you resize an image, the EXIF metadata\u2014including the camera model, date, and GPS coordinates\u2014is removed from the file. This is an advantage when posting online\u2014you won't accidentally reveal the location where the photo was taken. If you need the metadata, save the original file separately.<\/p>\n<h3>Why did the file get bigger?<\/h3>\n<p>This can happen if the source file is already well-compressed, but you set a high quality level or convert it to PNG. Try WebP or a lower quality setting\u2014you can see the resulting file size next to each file.<\/p>\n<h3>Why won't a photo open on my iPhone?<\/h3>\n<p>By default, the iPhone takes photos in HEIC format, which browsers cannot read. In the camera settings, select \u201cMost Compatible\u201d\u2014the phone will start saving photos in JPEG. Or send the photo to yourself via a messaging app: it will convert it automatically.<\/p>\n<h3>How many images can be processed at a time?<\/h3>\n<p>Up to 30 files, each up to 40 MB. These limits are necessary to prevent the browser from freezing\u2014all the processing is done on your device.<\/p>\n<div class=\"tools-other\"><p class=\"tools-other-title\">Other free tools<\/p>    <div class=\"tools-grid\">\n                    <a class=\"tool-card\" href=\"\/en\/qr-generator\/\">\n                <span class=\"tool-card-icon\" aria-hidden=\"true\">\n                    <svg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"3\" width=\"7\" height=\"7\" rx=\"1.5\"\/><rect x=\"14\" y=\"3\" width=\"7\" height=\"7\" rx=\"1.5\"\/><rect x=\"3\" y=\"14\" width=\"7\" height=\"7\" rx=\"1.5\"\/><rect x=\"14.5\" y=\"14.5\" width=\"2.5\" height=\"2.5\"\/><rect x=\"18.5\" y=\"18.5\" width=\"2.5\" height=\"2.5\"\/><rect x=\"14.5\" y=\"18.5\" width=\"2.5\" height=\"2.5\" opacity=\".45\"\/><rect x=\"18.5\" y=\"14.5\" width=\"2.5\" height=\"2.5\" opacity=\".45\"\/><\/svg>\n                <\/span>\n                <span class=\"tool-card-body\">\n                    <span class=\"tool-card-name\">QR Code Generator<\/span>\n                    <span class=\"tool-card-desc\">Links, Wi-Fi, phone, email, SMS. Downloads in PNG and SVG, static codes\u2014they work forever.<\/span>\n                    <span class=\"tool-card-tags\">\n                                                    <span class=\"tool-card-tag\">QR<\/span>\n                                                    <span class=\"tool-card-tag\">Wi-Fi<\/span>\n                                                    <span class=\"tool-card-tag\">SVG<\/span>\n                                            <\/span>\n                <\/span>\n                <span class=\"tool-card-more\">Open<\/span>\n            <\/a>\n                    <a class=\"tool-card\" href=\"\/en\/randomayzer\/\">\n                <span class=\"tool-card-icon\" aria-hidden=\"true\">\n                    <svg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3.5\" y=\"3.5\" width=\"10\" height=\"10\" rx=\"2\"\/><rect x=\"10.5\" y=\"10.5\" width=\"10\" height=\"10\" rx=\"2\"\/><circle cx=\"6.5\" cy=\"6.5\" r=\"1.2\"\/><circle cx=\"10.5\" cy=\"10.5\" r=\"1.2\" opacity=\".5\"\/><circle cx=\"15.5\" cy=\"15.5\" r=\"1.2\"\/><circle cx=\"18\" cy=\"18\" r=\"1.2\"\/><circle cx=\"13\" cy=\"18\" r=\"1.2\"\/><\/svg>\n                <\/span>\n                <span class=\"tool-card-body\">\n                    <span class=\"tool-card-name\">Randomizer<\/span>\n                    <span class=\"tool-card-desc\">Select a winner for the drawing, generate a number, and shuffle the list. True randomness\u2014not Math.random.<\/span>\n                    <span class=\"tool-card-tags\">\n                                                    <span class=\"tool-card-tag\">giveaways<\/span>\n                                                    <span class=\"tool-card-tag\">numbers<\/span>\n                                                    <span class=\"tool-card-tag\">list<\/span>\n                                            <\/span>\n                <\/span>\n                <span class=\"tool-card-more\">Open<\/span>\n            <\/a>\n                    <a class=\"tool-card\" href=\"\/en\/perevirka-meta-tegiv\/\">\n                <span class=\"tool-card-icon\" aria-hidden=\"true\">\n                    <svg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"10.5\" cy=\"10.5\" r=\"6.5\"\/><path d=\"M15.5 15.5L21 21\"\/><path d=\"M7.5 10.5h6M7.5 13h4\"\/><\/svg>\n                <\/span>\n                <span class=\"tool-card-body\">\n                    <span class=\"tool-card-name\">Checking Meta Tags<\/span>\n                    <span class=\"tool-card-desc\">Title, description, H1, canonical URL, and social media preview for any page\u2014with tips on what to fix.<\/span>\n                    <span class=\"tool-card-tags\">\n                                                    <span class=\"tool-card-tag\">SEO<\/span>\n                                                    <span class=\"tool-card-tag\">title<\/span>\n                                                    <span class=\"tool-card-tag\">og:image<\/span>\n                                            <\/span>\n                <\/span>\n                <span class=\"tool-card-more\">Open<\/span>\n            <\/a>\n                    <a class=\"tool-card\" href=\"\/en\/generator-robots-txt\/\">\n                <span class=\"tool-card-icon\" aria-hidden=\"true\">\n                    <svg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M6 3h9l4 4v14a1.5 1.5 0 01-1.5 1.5h-11A1.5 1.5 0 015 21V4.5A1.5 1.5 0 016.5 3z\"\/><path d=\"M14.5 3v4.5H19\"\/><path d=\"M8.5 12h7M8.5 15h7M8.5 18h4\"\/><\/svg>\n                <\/span>\n                <span class=\"tool-card-body\">\n                    <span class=\"tool-card-name\">robots.txt Generator<\/span>\n                    <span class=\"tool-card-desc\">A ready-to-use file for WordPress or your own website: what to hide, what to show, and where to specify the sitemap.<\/span>\n                    <span class=\"tool-card-tags\">\n                                                    <span class=\"tool-card-tag\">WordPress<\/span>\n                                                    <span class=\"tool-card-tag\">sitemap<\/span>\n                                            <\/span>\n                <\/span>\n                <span class=\"tool-card-more\">Open<\/span>\n            <\/a>\n            <\/div>\n    <\/div>\n<p>Are you looking for a website where images are automatically compressed without having to do anything manually? <a href=\"\/en\/rozrahunok-vartosti\/\">Let's calculate the cost of your project<\/a> in three steps.<\/p>","protected":false},"excerpt":{"rendered":"<p>\u0421\u0442\u0438\u0441\u043d\u0456\u0442\u044c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438, \u0437\u043c\u0456\u043d\u0456\u0442\u044c \u0457\u0445\u043d\u0456\u0439 \u0440\u043e\u0437\u043c\u0456\u0440 \u0430\u0431\u043e \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0439\u0442\u0435 \u0443 WebP \u2014 \u043f\u0440\u043e\u0441\u0442\u043e \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456. \u0424\u0430\u0439\u043b\u0438 \u043d\u0456\u043a\u0443\u0434\u0438 \u043d\u0435 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0443\u044e\u0442\u044c\u0441\u044f, \u043f\u0440\u0430\u0446\u044e\u0454 \u0439 \u0431\u0435\u0437 \u0456\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443 \u043f\u0456\u0441\u043b\u044f \u0432\u0456\u0434\u043a\u0440\u0438\u0442\u0442\u044f \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0438. \u041c\u043e\u0436\u043d\u0430 \u043e\u0434\u0440\u0430\u0437\u0443 \u0434\u043e 30 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u044c. \u042f\u043a\u0438\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 \u043e\u0431\u0440\u0430\u0442\u0438 \u0424\u043e\u0440\u043c\u0430\u0442 \u041a\u043e\u043b\u0438 \u0431\u0440\u0430\u0442\u0438 \u041e\u0441\u043e\u0431\u043b\u0438\u0432\u043e\u0441\u0442\u0456 WebP \u0414\u043b\u044f \u0441\u0430\u0439\u0442\u0443 \u2014 \u0433\u043e\u043b\u043e\u0432\u043d\u0438\u0439 \u0432\u0438\u0431\u0456\u0440 \u041d\u0430 25\u201335% \u043c\u0435\u043d\u0448\u0438\u0439 \u0437\u0430 JPEG \u0442\u0456\u0454\u0457 \u0436 \u044f\u043a\u043e\u0441\u0442\u0456, \u043f\u0456\u0434\u0442\u0440\u0438\u043c\u0443\u0454 \u043f\u0440\u043e\u0437\u043e\u0440\u0456\u0441\u0442\u044c JPEG \u0424\u043e\u0442\u043e, \u0432\u043a\u043b\u0430\u0434\u0435\u043d\u043d\u044f [&hellip;]<\/p>","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_vp_format_video_url":"","_vp_image_focal_point":[],"footnotes":""},"class_list":["post-222","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u0421\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043e\u043d\u043b\u0430\u0439\u043d, \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0432 WebP - Ageenko Web Studio<\/title>\n<meta name=\"description\" content=\"\u0411\u0435\u0437\u043a\u043e\u0448\u0442\u043e\u0432\u043d\u043e \u0441\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u0444\u043e\u0442\u043e, \u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0440\u043e\u0437\u043c\u0456\u0440 \u0430\u0431\u043e \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0443 WebP. \u0414\u043e 30 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0437\u0430 \u0440\u0430\u0437, \u043e\u0431\u0440\u043e\u0431\u043a\u0430 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456 \u2014 \u0444\u0430\u0439\u043b\u0438 \u043d\u0456\u043a\u0443\u0434\u0438 \u043d\u0435 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0443\u044e\u0442\u044c\u0441\u044f.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u0421\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043e\u043d\u043b\u0430\u0439\u043d, \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0432 WebP - Ageenko Web Studio\" \/>\n<meta property=\"og:description\" content=\"\u0411\u0435\u0437\u043a\u043e\u0448\u0442\u043e\u0432\u043d\u043e \u0441\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u0444\u043e\u0442\u043e, \u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0440\u043e\u0437\u043c\u0456\u0440 \u0430\u0431\u043e \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0443 WebP. \u0414\u043e 30 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0437\u0430 \u0440\u0430\u0437, \u043e\u0431\u0440\u043e\u0431\u043a\u0430 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456 \u2014 \u0444\u0430\u0439\u043b\u0438 \u043d\u0456\u043a\u0443\u0434\u0438 \u043d\u0435 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0443\u044e\u0442\u044c\u0441\u044f.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/\" \/>\n<meta property=\"og:site_name\" content=\"AWS - \u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447 | \u0421\u0443\u0447\u0430\u0441\u043d\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0442\u0430 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430 | Ageenko Web Studio\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-18T17:35:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/aws.in.ua\/wp-content\/uploads\/2026\/08\/og-hero.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/stysnuty-kartynku\\\/\",\"url\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/stysnuty-kartynku\\\/\",\"name\":\"\u0421\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043e\u043d\u043b\u0430\u0439\u043d, \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0432 WebP - Ageenko Web Studio\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/#website\"},\"datePublished\":\"2026-08-18T12:33:11+00:00\",\"dateModified\":\"2026-08-18T17:35:35+00:00\",\"description\":\"\u0411\u0435\u0437\u043a\u043e\u0448\u0442\u043e\u0432\u043d\u043e \u0441\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u0444\u043e\u0442\u043e, \u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0440\u043e\u0437\u043c\u0456\u0440 \u0430\u0431\u043e \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0443 WebP. \u0414\u043e 30 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0437\u0430 \u0440\u0430\u0437, \u043e\u0431\u0440\u043e\u0431\u043a\u0430 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456 \u2014 \u0444\u0430\u0439\u043b\u0438 \u043d\u0456\u043a\u0443\u0434\u0438 \u043d\u0435 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0443\u044e\u0442\u044c\u0441\u044f.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/stysnuty-kartynku\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/aws.in.ua\\\/en\\\/stysnuty-kartynku\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/stysnuty-kartynku\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u0413\u043e\u043b\u043e\u0432\u043d\u0430\",\"item\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u0421\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043e\u043d\u043b\u0430\u0439\u043d\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/\",\"name\":\"AWS - \u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447 | \u0421\u0443\u0447\u0430\u0441\u043d\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0442\u0430 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430 | Ageenko Web Studio\",\"description\":\"AWS - \u041f\u043e\u0432\u043d\u0438\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u043f\u043e\u0441\u043b\u0443\u0433 \u0437 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0438 \u0441\u0430\u0439\u0442\u0456\u0432: UX\\\/UI \u0434\u0438\u0437\u0430\u0439\u043d, Frontend \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430, Backend \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u043a\u0430. \u0406\u043d\u0434\u0438\u0432\u0456\u0434\u0443\u0430\u043b\u044c\u043d\u0438\u0439 \u043f\u0456\u0434\u0445\u0456\u0434 \u0442\u0430 \u0433\u0430\u0440\u0430\u043d\u0442\u0456\u044f \u044f\u043a\u043e\u0441\u0442\u0456\",\"publisher\":{\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Organization\",\"ProfessionalService\"],\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/#organization\",\"name\":\"AWS - \u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447 | \u0421\u0443\u0447\u0430\u0441\u043d\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0442\u0430 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430 | Ageenko Web Studio\",\"url\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/aws.in.ua\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/screenshot.png\",\"contentUrl\":\"https:\\\/\\\/aws.in.ua\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/screenshot.png\",\"width\":1744,\"height\":1101,\"caption\":\"AWS - \u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447 | \u0421\u0443\u0447\u0430\u0441\u043d\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0442\u0430 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430 | Ageenko Web Studio\"},\"image\":{\"@id\":\"https:\\\/\\\/aws.in.ua\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"email\":\"in@aws.in.ua\",\"foundingDate\":\"2014\",\"areaServed\":{\"@type\":\"Country\",\"name\":\"\u0423\u043a\u0440\u0430\u0457\u043d\u0430\"},\"sameAs\":[\"https:\\\/\\\/t.me\\\/imajik\"],\"knowsAbout\":[\"\u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432\",\"UX\\\/UI \u0434\u0438\u0437\u0430\u0439\u043d\",\"Frontend-\u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430\",\"Backend-\u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u0421\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043e\u043d\u043b\u0430\u0439\u043d, \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0432 WebP - Ageenko Web Studio","description":"\u0411\u0435\u0437\u043a\u043e\u0448\u0442\u043e\u0432\u043d\u043e \u0441\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u0444\u043e\u0442\u043e, \u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0440\u043e\u0437\u043c\u0456\u0440 \u0430\u0431\u043e \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0443 WebP. \u0414\u043e 30 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0437\u0430 \u0440\u0430\u0437, \u043e\u0431\u0440\u043e\u0431\u043a\u0430 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456 \u2014 \u0444\u0430\u0439\u043b\u0438 \u043d\u0456\u043a\u0443\u0434\u0438 \u043d\u0435 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0443\u044e\u0442\u044c\u0441\u044f.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/","og_locale":"en_US","og_type":"article","og_title":"\u0421\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043e\u043d\u043b\u0430\u0439\u043d, \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0432 WebP - Ageenko Web Studio","og_description":"\u0411\u0435\u0437\u043a\u043e\u0448\u0442\u043e\u0432\u043d\u043e \u0441\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u0444\u043e\u0442\u043e, \u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0440\u043e\u0437\u043c\u0456\u0440 \u0430\u0431\u043e \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0443 WebP. \u0414\u043e 30 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0437\u0430 \u0440\u0430\u0437, \u043e\u0431\u0440\u043e\u0431\u043a\u0430 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456 \u2014 \u0444\u0430\u0439\u043b\u0438 \u043d\u0456\u043a\u0443\u0434\u0438 \u043d\u0435 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0443\u044e\u0442\u044c\u0441\u044f.","og_url":"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/","og_site_name":"AWS - \u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447 | \u0421\u0443\u0447\u0430\u0441\u043d\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0442\u0430 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430 | Ageenko Web Studio","article_modified_time":"2026-08-18T17:35:35+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/aws.in.ua\/wp-content\/uploads\/2026\/08\/og-hero.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/","url":"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/","name":"\u0421\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043e\u043d\u043b\u0430\u0439\u043d, \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0432 WebP - Ageenko Web Studio","isPartOf":{"@id":"https:\/\/aws.in.ua\/en\/#website"},"datePublished":"2026-08-18T12:33:11+00:00","dateModified":"2026-08-18T17:35:35+00:00","description":"\u0411\u0435\u0437\u043a\u043e\u0448\u0442\u043e\u0432\u043d\u043e \u0441\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u0444\u043e\u0442\u043e, \u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0440\u043e\u0437\u043c\u0456\u0440 \u0430\u0431\u043e \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0443 WebP. \u0414\u043e 30 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0437\u0430 \u0440\u0430\u0437, \u043e\u0431\u0440\u043e\u0431\u043a\u0430 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456 \u2014 \u0444\u0430\u0439\u043b\u0438 \u043d\u0456\u043a\u0443\u0434\u0438 \u043d\u0435 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0443\u044e\u0442\u044c\u0441\u044f.","breadcrumb":{"@id":"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/aws.in.ua\/en\/stysnuty-kartynku\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u0413\u043e\u043b\u043e\u0432\u043d\u0430","item":"https:\/\/aws.in.ua\/en\/"},{"@type":"ListItem","position":2,"name":"\u0421\u0442\u0438\u0441\u043d\u0443\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043e\u043d\u043b\u0430\u0439\u043d"}]},{"@type":"WebSite","@id":"https:\/\/aws.in.ua\/en\/#website","url":"https:\/\/aws.in.ua\/en\/","name":"AWS - \u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447 | \u0421\u0443\u0447\u0430\u0441\u043d\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0442\u0430 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430 | Ageenko Web Studio","description":"AWS - \u041f\u043e\u0432\u043d\u0438\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u043f\u043e\u0441\u043b\u0443\u0433 \u0437 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0438 \u0441\u0430\u0439\u0442\u0456\u0432: UX\/UI \u0434\u0438\u0437\u0430\u0439\u043d, Frontend \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430, Backend \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u043a\u0430. \u0406\u043d\u0434\u0438\u0432\u0456\u0434\u0443\u0430\u043b\u044c\u043d\u0438\u0439 \u043f\u0456\u0434\u0445\u0456\u0434 \u0442\u0430 \u0433\u0430\u0440\u0430\u043d\u0442\u0456\u044f \u044f\u043a\u043e\u0441\u0442\u0456","publisher":{"@id":"https:\/\/aws.in.ua\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/aws.in.ua\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Organization","ProfessionalService"],"@id":"https:\/\/aws.in.ua\/en\/#organization","name":"AWS - \u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447 | \u0421\u0443\u0447\u0430\u0441\u043d\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0442\u0430 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430 | Ageenko Web Studio","url":"https:\/\/aws.in.ua\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/aws.in.ua\/en\/#\/schema\/logo\/image\/","url":"https:\/\/aws.in.ua\/wp-content\/uploads\/2025\/03\/screenshot.png","contentUrl":"https:\/\/aws.in.ua\/wp-content\/uploads\/2025\/03\/screenshot.png","width":1744,"height":1101,"caption":"AWS - \u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447 | \u0421\u0443\u0447\u0430\u0441\u043d\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0442\u0430 \u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430 | Ageenko Web Studio"},"image":{"@id":"https:\/\/aws.in.ua\/en\/#\/schema\/logo\/image\/"},"email":"in@aws.in.ua","foundingDate":"2014","areaServed":{"@type":"Country","name":"\u0423\u043a\u0440\u0430\u0457\u043d\u0430"},"sameAs":["https:\/\/t.me\/imajik"],"knowsAbout":["\u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0441\u0430\u0439\u0442\u0456\u0432","UX\/UI \u0434\u0438\u0437\u0430\u0439\u043d","Frontend-\u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430","Backend-\u0440\u043e\u0437\u0440\u043e\u0431\u043a\u0430"]}]}},"_links":{"self":[{"href":"https:\/\/aws.in.ua\/en\/wp-json\/wp\/v2\/pages\/222","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aws.in.ua\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/aws.in.ua\/en\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/aws.in.ua\/en\/wp-json\/wp\/v2\/comments?post=222"}],"version-history":[{"count":1,"href":"https:\/\/aws.in.ua\/en\/wp-json\/wp\/v2\/pages\/222\/revisions"}],"predecessor-version":[{"id":233,"href":"https:\/\/aws.in.ua\/en\/wp-json\/wp\/v2\/pages\/222\/revisions\/233"}],"wp:attachment":[{"href":"https:\/\/aws.in.ua\/en\/wp-json\/wp\/v2\/media?parent=222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}