šŸ”„ Feature Spotlight: Make Code App

Hey Makers :waving_hand:

We’re super excited to introduce the Make Code app: now live in your scenario editor!


Thanks to the Make Code app, you can now write and run custom JavaScript or Python code directly in your Make workflows. This means more power, more flexibility, and better support for use cases to complement prebuilt modules. :flexed_biceps:


:information: What can you do with it?

  • Execute logic generated by AI agents
  • Run complex calculations and data transformations
  • Use 3rd-party libraries to extend functionality
  • Return structured outputs for seamless scenario chaining

:thinking: How it works?
Code runs securely in an isolated environment with 10s runtime and 1 CPU for all plans (60s/2CPU for Enterprise). You can pass data in from other modules, return values for later use, and debug with built-in logs.

Whether you’re an advanced user or just experimenting with what AI can generate, Make Code gives you more ways to build exactly what you need without leaving the platform.


:money_bag: How is pricing for Make Code App calculated?
Make Code uses a simple, credit-based model: 2 credits are consumed for every 1 second of code execution time. Since most code executions finish in under a second, the vast majority of use cases will remain lightweight and cost-efficient. Enterprise users still benefit from extended runtimes (up to 300 seconds) and higher resource limits.




:backhand_index_pointing_right: Check out the help docs :backhand_index_pointing_left:
:books: Read more about Make Code app on our blog

8 Likes

1 of the best add on happened on Make, but usage cost can be 1 credit per second!

2 Likes

YAAAAAAASSSSS!!! FINALLY!!! Now I can finally code even a simple Javascript on a built-in Make app in a scenario. THANK YOU. :raising_hands:

Is there any dependencies or libaries that are already in there without the need for additional dependencies as I’m not on a Enterprise plan.

1 Like

Hello there @mikey186 :waving_hand:

Glad to hear that you are so excited about this feature! Believe me, the vibe is the same over here :smiley:.

The Make Code app has built-in JavaScript and Python libraries, and with an Enterprise account, you can import custom libraries as well.

Read more abotu this feature in our documentation.

omg its too expensive for that!

1 Like

Wow, what an important and useful feature!
But why does it cost so much?
It kind of makes the whole big advantage of it irrelevant.
It’s supposed to be 2 credits per run, why by the amount of seconds?
Maybe we can look into this issue?

1 Like

YES, this is such a nice feature to have!

A single code module makes the usual crude amount of concatenated ā€˜parse/iterate/filter’-modules, just to achieve something basic like sorting, virtually obsolete.

Its already my favourite module (I’m sorry Custom webhook module :pensive_face:) and I’m not even using it in a live scenario yet!

2 Likes

Huge improvement on the platform. However I do agree with most of the comments that pricing is an issue here. At scale, you can better run your own Python server which still doesn’t really give the solution we’re actually looking for.

Still huge addition to the platform!

2 Likes

Hi Itay, thanks for your feedback on the Make Code app.

I wanted to provide a bit more context on the pricing topic.

First off, we always try to align pricing with the relative value delivered. We believe that you can get a tremendous amount of value from code executions to do all sorts of things (including things that would have previously cost many operations). In this case, we also took into account compute resources that are associated with spinning up a fully isolated (safe) code execution environment. Our testing shows that the vast majority of typical code execution will complete in less than 1 second.

Second, we were conscious that we might get some feedback on this topic. It’s one of the reasons that the app is currently in a Beta state (we want to get feedback on exactly this topic). So thanks for sharing your perspective.

Let me know if you have any questions. Cheers.

4 Likes

My feedback on the new Make Code credit system:

The feature itself is a great add on for running JavaScript or Python directly inside Make is a huge step forward.
But the 2credit per second of execution billing model feels a bit steep for small scripts.

It would make more sense if short executions (under a second) were billed at 1 credit per second, since many of us use lightweight logic or data cleaning steps that finish almost instantly. Not sure about make’s overall avg execution time for this module will be but why would someone willingly pay higher price for lightweight task!?

I’m sure the Make team has their reasons for adding this feature with this pricing, but right now, it makes quick use cases costlier compared to existing alternatives like CustomJS or other lightweight apps already available inside Make to serve the same limitation.

Maybe a ā€œpay as you useā€ model, similar to AI credits, could work better but it’d need careful balance to keep the value of native code inside Make intact.

Overall, i love the feature. Just hope the cost side evolves to match how builders actually use it.

Best,
@Prem_Patel

2 Likes

I totally agree with @Prem_Patel, to emphasize his last sentence: we love the feature, we’re just curious about the possibilities for simple logic execution. I ran some scripts in the meantime, and they all executed in under 250 ms, which is not even 1/4 of the credits consumed (for the 1 sec operation)

1 Like

If you had to do manipulation of data without the Make JS module how many credits would be used on average? I think the idea is that you can actually save credits by encapsulating data manipulation in python or JS when the alternative is 3 credits or more. Otherwise there’s no real reason for using it. It’s an optimization that is provided to save credits on more complex data tasks. But if your JS or python could be done in one credit or even 2 credits with standard modules don’t bother.

It is possible to probably save many credits even with this pricing model but only in complex situations. Simple data transformations are probably not worth doing in code.

1 Like

@alex.newpath True! Definitely it has more perspectives depending on the use case we handle.

Yeah this feels like a niche module that I may use to clean up some data, or process an array with less operations than I normally would with the standard modules.

Last time I had to use custom code though it executed for over 2 mins on pythonanywhere, so I’m not entirely sure what can be achieved in 10 seconds… Also, am I supposed to test something locally and see how long it executes for and take a wild guess at how much faster is the Make server than my PC and if my code snippet will run within the 10 second window?

Also I cant find lists with the available libraries anywhere.

1 Like

Hey there @Stoyan_Vatov :waving_hand:

Thank you for sharing your experience with us. Your feedback is super valuable and important for us and our future development.

Regarding the libraries. The Make Code app has built-in JavaScript and Python libraries. If you have an Enterprise account, you can also import custom libraries. You can read more here in our Help Center!


Thanks :folded_hands:

Hey,

I don’t know about others but i am running simple javascript code and it sometimes just times out. why does the 30sec time limit feel so low as the maximum execution time.

also, sometimes a code takes 10secs to run, while the next time, same code takes 25secs.

how is that? i don’t understand.

here’s an example code where i search in a particular notion page, a particular page by going in and calling children.

const notionApiKey = input.notionApiKey;

const clientPageId = input.clientPageId.replace(/-/g, ā€˜ā€™);

const notionApiBase = ā€˜https://api.notion.com/v1’;

const notionVersion = ā€˜2022-06-28’;

async function fetchBlockChildren(blockId) {

const children = ;

let cursor = undefined;

do {

const response = await fetch(\`${notionApiBase}/blocks/${blockId}/children?page_size=100${cursor ? ā€˜&start_cursor=’ + cursor : ā€˜ā€™}\`, { method: ā€˜GET’, headers: { ā€˜Authorization’: \`Bearer ${notionApiKey}\`, ā€˜Notion-Version’: notionVersion, ā€˜Content-Type’: ā€˜application/json’, } }); if (!response.ok) { throw new Error(\`Failed to fetch children for block ${blockId}: ${response.statusText}\`); } const data = await response.json(); children.push(…data.results); cursor = data.has_more ? data.next_cursor : undefined;

} while (cursor);

return children;

}

async function findChildPageInBlocks(blockId, targetTitle) {

const children = await fetchBlockChildren(blockId);

// Check for matching child_page at this level first

for (const block of children) {

if (block.type === ā€˜child_page’ && block.child_page.title === targetTitle) { return block.id; }

}

// Collect all blocks with children for parallel recursion

const blocksWithChildren = children.filter(block => block.has_children);

// Parallel recursive search

const foundPages = await Promise.all(

blocksWithChildren.map(block => findChildPageInBlocks(block.id, targetTitle))

);

// Return the first found id

for (const found of foundPages) {

if (found) { return found; }

}

return null;

}

async function main() {

try {

const targetTitle = ā€˜Paid Social → Impact Index’; const pageContentId = await findChildPageInBlocks(clientPageId, targetTitle); if (!pageContentId) { return { error: \`No child page with title ā€˜${targetTitle}’ found.\` }; } const cleanId = pageContentId.replace(/-/g, ā€˜ā€™); const notionUrl = \`https://notion.so/dvisionmediacorrect/${cleanId}\\\`; return { pageContentId, notionUrl };

} catch (error) {

return { error: error.message };

}

}

return main();

1 Like

I wonder if the calling of api calls from your JavaScript is dependent on notion api and not on make?